个人微信机器人API的Golang源码用于对接ChatGPT-唯一客服系统文档中心
1.序言-唯一客服系统文档中心2.使用条款-唯一客服系统文档中心3.如何购买服务器-唯一客服系统文档中心4.如何安装宝塔面板-唯一客服系统文档中心5.安装-唯一客服系统文档中心6.源码环境搭建-唯一客服系统文档中心7.配置gitee ssh免密拉取代码-唯一客服系统文档中心8.Docker部署-唯一客服系统文档中心9.知识库AI部署搭建-唯一客服系统文档中心10.前端目录-唯一客服系统文档中心11.多语言支持-唯一客服系统文档中心12.访客接入-唯一客服系统文档中心13.访客智能分配-唯一客服系统文档中心14.热点问题设置-唯一客服系统文档中心15.智能AI辅助客服回复生成答案配置16.微信客服对接-唯一客服系统文档中心17.微信公众号服务号客服对接-唯一客服系统文档中心
18.个人微信机器人API的Golang源码用于对接ChatGPT-唯一客服系统文档中心
19.知识库AI机器人客服(基于ChatGPT3.5)对接-唯一客服系统文档中心20.知识库AI机器人客服接口对接-唯一客服系统文档中心21.知识库AI机器人训练接口对接-唯一客服系统文档中心22.GPT应用案例:AI机械佛祖-人工智能佛祖始终与您相伴-对接企业微信客服23.Ora提示词版ChatGPT机器人24.唯一客服 -基于ChatGPT和私有数据构建智能知识库和个性化AI25.OpenAI 接口API的第三方代理26.WechatBot:微信ChatGPT机器人27.钉钉机器人客服系统AI知识库对接28.ChatGLM简介和SSE聊天接口测试效果29.打造专属个人模型-私有独立离线模型部署-阿里云GPU服务器配置30.客服系统-客服离线后状态展示-以及收取消息通知31.客服如何通过微信接收消息通知-唯一客服文档中心32.申请部署阿里云SSL免费证书前面我们写的是对接企业微信客服、微信公众号、微信小程序
现在来对接一下个人微信机器人
效果如图:
基于唯一客服的机器人接口实现的
.env文件的配置就是机器人接口
API_BASE=https://{部署域名}/2/robotMessage API_ENT_ID={商户ID} REPLY_TYPE=GROUP
下面是微信个人机器人对接的Golang实现源码
package main import ( "fmt" "github.com/eatmoreapple/openwechat" "github.com/joho/godotenv" "github.com/tidwall/gjson" "io/ioutil" "log" "net/http" "net/url" "os" "regexp" "strings" ) func main() { err := godotenv.Load(".env") myUID := "" myNicname := "" // 读取环境变量 api := os.Getenv("API_BASE") entId := os.Getenv("API_ENT_ID") replyType := os.Getenv("REPLY_TYPE") bot := openwechat.DefaultBot(openwechat.Desktop) // 桌面模式 // 注册消息处理函数 bot.MessageHandler = func(msg *openwechat.Message) { if msg.IsText() { log.Printf("收到消息:%s\n", msg.Content) isSend := false //群聊 if msg.IsSendByGroup() { sender, err := msg.SenderInGroup() if err == nil { log.Println("消息发送者:" + sender.NickName) } if strings.Contains(msg.Content, "@"+myNicname) { msg.Content = strings.TrimSpace(strings.ReplaceAll(msg.Content, "@"+myNicname, "")) isSend = true } else { isSend = false } } else { //单聊 sender, err := msg.Sender() if err == nil { log.Println("消息发送者:" + sender.NickName) } if replyType != "GROUP" { isSend = true } } if isSend { data := url.Values{} data.Set("ent_id", entId) data.Set("visitor_id", msg.MsgId) data.Set("content", msg.Content) res, err := PostForm(api, data) if err == nil { r := gjson.Get(res, "result.content").String() r = TrimHtml(r) msg.ReplyText(r) } } } } // 注册登陆二维码回调 bot.UUIDCallback = openwechat.PrintlnQrcodeUrl // 登陆 if err := bot.Login(); err != nil { fmt.Println(err) return } // 获取登陆的用户 self, err := bot.GetCurrentUser() if err != nil { fmt.Println(err) return } myUID = self.ID() myNicname = self.NickName log.Printf("当前登录用户:%s,uid:%s \n", myNicname, myUID) // 获取所有的好友 //friends, err := self.Friends() //fmt.Println(friends, err) // 获取所有的群组 //groups, err := self.Groups() //fmt.Println(groups, err) // 阻塞主goroutine, 直到发生异常或者用户主动退出 bot.Block() } //发送http post请求数据为form func PostForm(url string, data url.Values) (string, error) { resp, err := http.PostForm(url, data) if err != nil { return "", err } defer resp.Body.Close() content, err := ioutil.ReadAll(resp.Body) if err != nil { return "", err } return string(content), nil } /** 去除html标签,过滤html标签 */ func TrimHtml(src string) string { //将HTML标签全转换成小写 re, _ := regexp.Compile("\\<[\\S\\s]+?\\>") src = re.ReplaceAllStringFunc(src, strings.ToLower) //去除STYLE re, _ = regexp.Compile("\\<style[\\S\\s]+?\\</style\\>") src = re.ReplaceAllString(src, "") //去除SCRIPT re, _ = regexp.Compile("\\<script[\\S\\s]+?\\</script\\>") src = re.ReplaceAllString(src, "") //去除所有尖括号内的HTML代码,并换成换行符 re, _ = regexp.Compile("\\<[\\S\\s]+?\\>") src = re.ReplaceAllString(src, "\n") //去除连续的换行符 re, _ = regexp.Compile("\\s{2,}") src = re.ReplaceAllString(src, "\n") return strings.TrimSpace(src) }
十年开发经验程序员,离职全心创业中,历时三年开发出的产品《唯一客服系统》
一款基于Golang+Vue开发的在线客服系统,软件著作权编号:2021SR1462600。一套可私有化部署的网站在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的全渠道在线客服系统,致力于帮助广大开发者/公司快速部署整合私有化客服功能。
开源地址:唯一客服(开源学习版)
官网地址:唯一客服官网
合集:
唯一客服系统文档中心
标签:
唯一客服系统手册
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2016-05-20 [javaSE] 网络编程(URLConnection)
2016-05-20 [javaSE] 网络编程(URL)