自己建设网站怎么被百度收入,折叠彩页设计,网站域名收费,深圳企易科技有限公司本期博客主要介绍如何使用 微信SDK 和 AI聊天接口 #xff0c;实现 微信机器人功能。 准备
电脑需要安装Go环境#xff0c;这个可以直接参考菜鸟教程#xff1a;Go 语言环境安装#xff0c;知道CSDN的同学基本能在半小时内装好吧…#xff08;可选#xff09;一个编译器… 本期博客主要介绍如何使用 微信SDK 和 AI聊天接口 实现 微信机器人功能。 准备
电脑需要安装Go环境这个可以直接参考菜鸟教程Go 语言环境安装知道CSDN的同学基本能在半小时内装好吧…可选一个编译器可用VS Code或者Goland等。或者你直接用 CMD终端 也是可以的如果你不会Go可以直接私信找我要源码包安装好Go环境后执行两行命令就可以运行。
代码分析
本次项目只需要写 76 行代码含注释和空行先上代码。
package mainimport (bytesencoding/jsonfmtgithub.com/eatmoreapple/openwechationet/http
)func main() {//bot : openwechat.DefaultBot()bot : openwechat.DefaultBot(openwechat.Desktop) // 桌面模式上面登录不上的可以尝试切换这种模式// 注册消息处理函数bot.MessageHandler func(msg *openwechat.Message) {// 这里可以加自己的回复逻辑比如匹配到关键字回复、收到到图片回复等 -- by 豆小匠if msg.IsText() {sizhiMsg, _ : getSizhiMsg(msg.Content)_, _ msg.ReplyText(sizhiMsg)}}// 注册登陆二维码回调bot.UUIDCallback openwechat.PrintlnQrcodeUrl// 创建热存储容器对象reloadStorage : openwechat.NewFileHotReloadStorage(wechat.json)defer func(reloadStorage io.ReadWriteCloser) {_ reloadStorage.Close()}(reloadStorage)// 执行热登录if err : bot.HotLogin(reloadStorage, openwechat.NewRetryLoginOption()); err ! nil {fmt.Println(err)return}// 阻塞主goroutine, 直到发生异常或者用户主动退出_ bot.Block()
}type Resp struct {Message string json:messageData struct {Type int json:typeInfo struct {Text string json:text} json:info} json:data
}// getSizhiMsg 这个是思知AI聊天接口https://api.ownthink.com/bot
func getSizhiMsg(content string) (string, error) {bytesData, _ : json.Marshal(map[string]interface{}{spoken: content,})resp, err : http.Post(https://api.ownthink.com/bot,application/json,bytes.NewReader(bytesData))if err ! nil {return , err}defer resp.Body.Close()rspBody, err : io.ReadAll(resp.Body)if err ! nil {return , err}ret : Resp{}err json.Unmarshal(rspBody, ret)if err ! nil {return , err}return ret.Data.Info.Text, nil
}可以看到main函数里主要使用了微信SDK调起微信的登录和微信消息的监听getSizhiMsg函数则是一个普通的POST请求用于AI聊天对话获取。
运行项目
请确保你安装好了Go环境打开项目所在目录的terminal终端在CMD、VS Code或者Goland都无所谓然后按顺序运行下面两行命令。
# 初始化和运行
go mod tidy
go run main.go不出意外的话你的浏览器现在打开了一个登录二维码界面微信扫码登录可能提示异地登录正常情况然后让好友给你发个信息就会发现你的微信会自动回复了~
最后
本文只介绍微信机器人的实现不建议做商业化用途有封号风险。 另外如果需要本次项目源码包可以私信我获取AI微信机器人源码包。不常看CSDN回复可能比较慢谅解下~