Files
message-pusher/channel/main.go
T

50 lines
1.2 KiB
Go
Raw Normal View History

2022-11-11 17:24:03 +08:00
package channel
import (
"errors"
"message-pusher/model"
)
const (
TypeEmail = "email"
TypeWeChatTestAccount = "test"
2022-11-25 12:04:36 +08:00
TypeWeChatCorpAccount = "corp_app"
TypeCorp = "corp"
2022-11-11 17:24:03 +08:00
TypeLark = "lark"
2022-11-22 09:50:50 +08:00
TypeDing = "ding"
2022-11-11 17:24:03 +08:00
TypeTelegram = "telegram"
2023-01-10 18:32:04 +08:00
TypeDiscord = "discord"
2022-11-23 17:30:49 +08:00
TypeBark = "bark"
2022-12-07 16:06:36 +08:00
TypeClient = "client"
2022-12-22 17:59:12 +08:00
TypeNone = "none"
2022-11-11 17:24:03 +08:00
)
2022-12-22 17:59:12 +08:00
func SendMessage(message *model.Message, user *model.User) error {
2022-11-11 17:24:03 +08:00
switch message.Channel {
case TypeEmail:
return SendEmailMessage(message, user)
case TypeWeChatTestAccount:
2022-11-18 17:17:53 +08:00
return SendWeChatTestMessage(message, user)
2022-11-11 17:24:03 +08:00
case TypeWeChatCorpAccount:
2022-11-18 17:41:27 +08:00
return SendWeChatCorpMessage(message, user)
2022-11-25 12:04:36 +08:00
case TypeCorp:
return SendCorpMessage(message, user)
2022-11-11 17:24:03 +08:00
case TypeLark:
2022-11-22 09:09:15 +08:00
return SendLarkMessage(message, user)
2022-11-22 09:50:50 +08:00
case TypeDing:
return SendDingMessage(message, user)
2022-11-23 17:30:49 +08:00
case TypeBark:
return SendBarkMessage(message, user)
2022-12-07 16:06:36 +08:00
case TypeClient:
return SendClientMessage(message, user)
2022-12-21 18:33:00 +08:00
case TypeTelegram:
return SendTelegramMessage(message, user)
2023-01-10 18:32:04 +08:00
case TypeDiscord:
return SendDiscordMessage(message, user)
2022-12-22 17:59:12 +08:00
case TypeNone:
return nil
2022-11-11 17:24:03 +08:00
default:
return errors.New("不支持的消息通道:" + message.Channel)
}
}