diff --git a/common/message/main.go b/common/message/main.go index 5ce82a64..4d1470f9 100644 --- a/common/message/main.go +++ b/common/message/main.go @@ -12,6 +12,22 @@ const ( ) func Notify(by string, title string, description string, content string) error { + + if by == ByAll { + var errMsgs []string + if err := SendEmail(title, config.RootUserEmail, content); err != nil { + errMsgs = append(errMsgs, fmt.Sprintf("failed to send email: %v", err)) + } + if err := SendMessage(title, description, content); err != nil { + errMsgs = append(errMsgs, fmt.Sprintf("failed to send message: %v", err)) + } + + if len(errMsgs) > 0 { + return fmt.Errorf("multiple errors occurred: %v", errMsgs) + } + return nil + } + if by == ByEmail { return SendEmail(title, config.RootUserEmail, content) } diff --git a/controller/channel-test.go b/controller/channel-test.go index 3894691c..e01b2967 100644 --- a/controller/channel-test.go +++ b/controller/channel-test.go @@ -266,7 +266,7 @@ func testChannels(ctx context.Context, notify bool, scope string) error { if notify { err := message.Notify(message.ByAll, "渠道测试完成", "", "渠道测试完成,如果没有收到禁用通知,说明所有渠道都正常") if err != nil { - logger.SysError(fmt.Sprintf("failed to send email: %s", err.Error())) + logger.SysError(fmt.Sprintf("failed to send notify: %s", err.Error())) } } }()