小i机器人开拓互换群内的开拓者提问:如何在利用自己的做事器上要求小i机器人给的接口实现微信公众年夜众号的智能回答。基于这个问题,笔者写了本篇开拓指南,并供应PHP版本源码供大家测试。
一、开拓准备1.点击注册微信"大众年夜众平台接口测试帐号;
2.点击注册小i机器人iBotCloud账号;
3.建立自己的做事器,有独立IP且80端口未占用(推举利用云做事器,笔者利用的是新浪云做事器SAE。腾讯云/阿里云均可);
4.安装本地开拓环境,可以利用Eclipse,Notepad++等(笔者利用的Eclipse for PHP),百度搜索“Eclipse for PHP”选择得当版本下载安装;
5.利用版本掌握软件,可以用git、SVN(笔者利用的SVN,可视化操作较git比较更易上手)
二、开拓思路1.完成微信平台的相应;
2.在文本回答中要求小i机器人的接口;
三、开始开拓1.完成微信平台相应
微信服务器与我们自己搭建的做事器要建立连接,如何让微信服务器识别是我们的做事器在和微信服务器通话呢?这就须要我们编程实现。我们先看下微信官方给的业务逻辑流程图,如图1所示,先提取signnature等一系列字段,再提取TOKEN,末了匹配数据源。验证成功则再进行下一步业务逻辑(这段剖析较为拗口,如果不理解没有关系。待coding了一段韶光之后,便自行明朗)。
图1
1.1搭建自己的云做事器(笔者以SAE作为参考)
1.登录SAE,如图2所示。
图 2
2.创建新运用,如图3所示。
图 3
3.选择新运用的参数,如图4所示。
参数不要选错,选择PHP措辞、标准环境、措辞版本5.6、代码管理SVN、二级域名(自己随便取,这个很主要是微信平台中要填写的Url)。免费创建运用。
图 4
4.创建代码版本,如图5所示。
图5
1.2Eclipse中检出SAE项目
1.在Eclipse中checkout新浪云中的项目,如图6所示。
SVN仓库信息如图7所示。在Eclipse中选择“从SVN检出项目”,输入图6所示的信息(不同运用对应不同的信息),checkout出SAE的项目。
图6
图 7
2.变动项目中PHP措辞版本,如图8所示。
高版本的Eclipse默认PHP版本为7,而我们的SAE运用中PHP版本为5.6,因此须要调度Eclipse默认PHP版本。
图 8
1.3建立微信后台通信
1.在Eclipse项目工程中利用SVN上传代码至SAE做事器。
通过1.1,1.2两个步骤,我们已经把做事器、开拓环境支配完毕。现在利用编程实现。在Eclipse中的index.php文件,删除原来代码并复制以下代码,保存上传至SAE。
代码1
2.在微信"大众平台接口测试帐号中输入Url及TOKEN。
URL是之前自定义的二级域名,Token一样平常利用weixin(自定义),但需与代码中同等。输入后点击提交,配置成功(若配置不堪利,多点几次;若依然未成功再联系笔者)。
图9
至此,我们完成微信平台相应。
2.在文本回答中要求小i机器人接口
完成微信平台相应之后,我们要开始实行后续的业务逻辑。我们加入两个功能:
相应关注事宜
相应文本
2.1.相应关注事宜
我们须要在publicfunction responseMsg()函数中加入代码以实行业务逻辑操作,代码如下所示(不理解没紧要,不影响后续操作)。
代码2
同时还要再写两个函数,一个是receiveEvent吸收事宜的函数,个中对关注事宜\公众subscribe\"大众做了相应,关注后回答\公众welcome to new test wechat!\"大众
代码3
另一个函数是returnText用来回复文本信息
代码4
至此,完成相应关注事宜的代码,测试效果如图10所示
图10
2.2.相应文本
2.2.1.文本吸收事宜函数
receiveText代码如下所示。
代码5
2.2.2.小i机器人接口函数
注册登录后,得到小i机器人开拓者的Key、Sectet
图 11
getXiaoiInfo代码如下所示。此版本为小i官方供应的PHP SDK精简而来。如果正式开拓,推举利用小i机器人官方供应的SDK。
代码6
至此我们完成小i机器人的接入。效果如图12所示。
图 12
四、全文总结有开拓能力的同学可以参考此篇文档接入小i机器人。文档中有不当之处请斧正。
关注笔者运营的微信"大众号《学点编程》(shijiawen6),发送“001”获取《微信开拓一之环境支配》文章以参考干系软件先容;发送“003”获取《微信开拓三之小i机器人》粗糙版的小i机器人接入文档。
五、获取源码发送“小i机器人”至微信"大众号后台获取源码。源码中须要将小i机器人的Key/Sceret修正为自己的参数。
联系笔者微信:danielsjw,一起互换学习。