diff --git a/README.md b/README.md index 52fcc73..e3dac54 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,19 @@ # wechatgpt ![coming](https://media.istockphoto.com/id/1332167985/photo/coming-soon-neon-sign-the-banner-shining-light-signboard-collection.jpg?b=1&s=170667a&w=0&k=20&c=Le4B-lJt-jXjeAOdlTQptNvN_DmRwWF19ShNc5VY4a4=) + +# how to use + +## prepare runtime environment + +``` +go mod tidy +cp config/config.yaml.example local/config.yaml +``` + +## add your openai token +open the [openai](https://beta.openai.com/account/api-keys) and register account, copy your token to config file + +## run app +``` +go run main.go +``` diff --git a/handler/handler.go b/handler/handler.go index 24dd320..9813378 100644 --- a/handler/handler.go +++ b/handler/handler.go @@ -2,39 +2,33 @@ package handler import ( "github.com/eatmoreapple/openwechat" + "github.com/prometheus/common/log" ) -// MessageHandlerInterface 消息处理接口 type MessageHandlerInterface interface { handle(*openwechat.Message) error ReplyText(*openwechat.Message) error } -type HandlerType string +type Type string const ( GroupHandler = "group" ) -var handlers map[HandlerType]MessageHandlerInterface +var handlers map[Type]MessageHandlerInterface func init() { - handlers = make(map[HandlerType]MessageHandlerInterface) + handlers = make(map[Type]MessageHandlerInterface) handlers[GroupHandler] = NewGroupMessageHandler() } -// Handler 全局处理入口 func Handler(msg *openwechat.Message) { - //if msg.IsSendBySelf() { - // return - //} - //sender, err := msg.Sender() - //if err != nil { - // log.Println(err) - // return - //} if msg.IsSendByGroup() { - handlers[GroupHandler].handle(msg) - return + err := handlers[GroupHandler].handle(msg) + if err != nil { + log.Errorf("handle error: %s\n", err.Error()) + return + } } }