微信公共号(企业号)开发框架-gochat的从零开始教程(三): 智能机器人模版
来源:互联网 发布:chrome浏览器 mac 编辑:程序博客网 时间:2024/06/06 20:53
感恩节来啦,把自己这个开源框架的挖的坑填一下好了~
之前在第一章的时候就给大家展示过我自己写的一个智能聊天机器人,同时具有菜谱查询、智能翻译之类的功能,在这里我把这个机器人的代码开源啦:gochat机器人
这样大家就可以直接在我代码的基础上进行改进~
核心逻辑代码位于 /controllers/pub.go中,核心思路是提取用户发送的关键词,然后调用对应的函数完成相关功能,比如下面这样的:
else if(strings.HasPrefix(msgIn.Content,"查询") == true){sentence := strings.Replace(msgIn.Content,"查询","",1)sentence = strings.TrimSpace(sentence)msgback := utils.RobotApi(sentence + "的做法")msgOut := models.PubTextOut{ToUserName:msgIn.FromUserName,FromUserName:msgIn.ToUserName,CreateTime:time.Now().Unix(),MsgType:"text",Content:fmt.Sprint(msgback),}xmlData ,err := msgOut.ToXml()if err != nil {c.Abort("500")}
这里就是提取用户查询的菜谱名称,然后调用utils下面的RobotApi函数,利用菜谱拼接url请求,去获取相应菜谱api的回应,下面是RobotApi的函数:
func CreateTransString(appid string,query string,salt string,key string,)string{material := appid + query + salt + keyhasher := md5.New()hasher.Write([]byte(material))return hex.EncodeToString(hasher.Sum(nil))}func RobotApi(keymsg string)string{url := "http://api.douqq.com/?key=PUVLKzdjeDduTWNHUFVXQUU3PWhRTytOekFrQUFBPT0&msg=" + keymsgresp,err :=http.Get(url)if err!=nil{fmt.Print(err)}fetchrs,err :=ioutil.ReadAll(resp.Body)defer resp.Body.Close()return string(fetchrs)}
想要直接使用这个机器人模版的话,请先下载Github对应的代码,然后把代码和里面编译好的二进制文件gochat上传到服务器上的GOPATH目录下,如果不知道什么是gopath目录,请参考前几篇文章
然后找到根目录下/conf/id_relative.yaml 这个文件,请把该文件的pubid 、pubsecret 、 token一栏后面对应的值换成自己公共号上的AppID、 AppSecret以及开发者配置的token
这样运行程序后,就会自动读取配置文件中需要的数据啦~
关于运行程序的方法:
进入项目根目录,直接在后台运行编译项目即可:
nohup ./gochat &
然后在公共号/企业号的开发者配置中启用”服务器配置/回调模式“
token随意设置,将url 设置为: 域名/pub即可:
example: www.myhost.com/pub
接下来启动”服务器配置/回调模式“,即可成功运行一个智能机器人啦~
0 0
- 微信公共号(企业号)开发框架-gochat的从零开始教程(三): 智能机器人模版
- 微信公共号(企业号)开发框架-gochat的从零开始教程(一): 前期准备及环境搭建
- 微信公共号(企业号)开发框架-gochat的从零开始教程(二): 5分钟快速搭建自己的公共号
- 从零开始微信机器人(三):表情机器人的制作
- 微信企业号开发之获取公共域名
- 微信公众号开发 调用图灵机器人的接口使自己的微信成为一个智能机器人
- 【fastweixin框架教程7】微信企业号自定义菜单接口开发
- 【fastweixin框架教程6】微信企业号给关注的用户主动发送推送消息
- 微信的企业号开发流程
- 微信企业号开发
- Tp框架下的微信企业号开发中回调模式
- 微信公众号开发---机器人
- 微信公众号机器人开发
- 微信公众平台开发教程(十一)微信企业号上线
- 微信公众平台智能回复机器人后台开发
- 微信企业号开发—开发模式的开启
- 【fastweixin框架教程8】微信企业号临时素材管理
- 微信公共号弹幕开发日志
- MFC ListControl用法
- FIR数字滤波器设计_窗函数法
- c#简单实现GET和POST请求
- 关于SharedPreferences的原理浅析
- 我收集的一些学术资源(持续更新)
- 微信公共号(企业号)开发框架-gochat的从零开始教程(三): 智能机器人模版
- 第八届蓝桥杯练习
- Hibernate取值通过json传值问题
- UVA - 11542 Square
- 关于uploadify插件的使用,导入excel03和07版本。
- Win7系统redis本地配置
- HDU 1029 Ignatius and the Princess IV
- MYSQL学习笔记
- android studio生成签名文件,以及SHA1和MD5值