mirror of
https://github.com/yangjian102621/geekai.git
synced 2025-11-12 20:23:46 +08:00
feat: 集成微信收款服务
This commit is contained in:
42
api/modules/wexin/wechat_bot.go
Normal file
42
api/modules/wexin/wechat_bot.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package wexin
|
||||
|
||||
import (
|
||||
logger2 "chatplus/logger"
|
||||
"github.com/eatmoreapple/openwechat"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
// 微信收款机器人服务
|
||||
var logger = logger2.GetLogger()
|
||||
|
||||
type WeChatBot struct {
|
||||
bot *openwechat.Bot
|
||||
db *gorm.DB
|
||||
}
|
||||
|
||||
func NewWeChatBot(db *gorm.DB) *WeChatBot {
|
||||
bot := openwechat.DefaultBot(openwechat.Desktop)
|
||||
// 注册消息处理函数
|
||||
bot.MessageHandler = func(msg *openwechat.Message) {
|
||||
MessageHandler(msg, db)
|
||||
}
|
||||
// 注册登陆二维码回调
|
||||
bot.UUIDCallback = QrCodeCallBack
|
||||
return &WeChatBot{
|
||||
bot: bot,
|
||||
db: db,
|
||||
}
|
||||
}
|
||||
|
||||
func (b *WeChatBot) Login() error {
|
||||
// 创建热存储容器对象
|
||||
reloadStorage := openwechat.NewJsonFileHotReloadStorage("storage.json")
|
||||
// 执行热登录
|
||||
err := b.bot.HotLogin(reloadStorage)
|
||||
if err != nil {
|
||||
logger.Error("login error: %v", err)
|
||||
return b.bot.Login()
|
||||
}
|
||||
logger.Info("微信登录成功!")
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user