小i机器人开拓互换群内的开拓者提问:如何在利用自己的做事器上要求小i机器人给的接口实现微信"大众年夜众号的智能回答。
基于这个问题,笔者写了本篇开拓指南,并供应PHP版本源码供大家测试。

一、开拓准备

1.点击注册微信"大众年夜众平台接口测试帐号;

2.点击注册小i机器人iBotCloud账号;

微信机器人php微信开辟十之再说小i机械人附完全PHP源码 Ruby

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,一起互换学习。