1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
var _ MessageHandlerInterface = (*GroupMessageHandler)(nil)
type HandlerType string const ( GroupHandler HandlerType = "group" UserHandler HandlerType = "user" ) type GroupMessageHandler struct { } func NewGroupMessageHandler() MessageHandlerInterface { return &GroupMessageHandler{} } func (g *GroupMessageHandler) handle(msg *openwechat.Message) error { if msg.IsText() { return g.ReplyText(msg) } return nil }
type MessageHandlerInterface interface { handle(*openwechat.Message) error ReplyText(*openwechat.Message) error }
var handlers map[HandlerType]MessageHandlerInterface
handlers = make(map[HandlerType]MessageHandlerInterface)
handlers[GroupHandler] = NewGroupMessageHandler() handlers[GroupHandler].handle(msg)
|