曹永健 小贱鸡鸡怎么开不开

查看: 974|回复: 3
微信公众平台消息接口开发(8)小黄鸡(小贱鸡)机器人
在线时间 小时
本帖最后由 萌汏酱 于
16:19 编辑
微信公众平台 消息 接口 小黄鸡 小贱鸡 机器人
第一部分 基于模拟请求的方式
一、模拟请求数据
先看一下小黄鸡的网页版界面
QQ截图48.jpg (0 Bytes, 下载次数: 2)
16:17 上传
QQ截图13.jpg (0 Bytes, 下载次数: 0)
16:17 上传
QQ截图29.jpg (0 Bytes, 下载次数: 1)
16:17 上传
第二部分 基于接口的方式
一、申请小黄鸡接口
SimSimi,发音为〝shim-shimee〞,中文翻译:小黄鸡,由韩文simsim(??)演变而成。 “??”原意为“无聊”。SimSimi 由ISMaker于2002年建立流行的人工智能对话系统。
接口申请地址:
接口申请流程:
1. 注册账号
2. 激活账号
3. 申请7天试用接口(或者付费购买接口,价格30美元10 万次)
4. 获得Key:dea8-40ab-a0d2-f258ddd7de15
二、接口分析
请求参数说明
key:授权key
text:查询消息
lc: 语言代码
ft: 过滤器参数
{ “result”: 100, “response”: “Who are you?!”, “id”: , “msg”: “OK.” }
响应参数说明
result: 调用结果,成功时为100
id: 响应id
response: 响应消息内容
msg: 调用结果对应的内容
三、程序实现
构造Url参数
$params['key'] = &dea8-40ab-a0d2-f258ddd7de15&;
& & $params['lc'] = &ch&;
& & $params['ft'] = &1.0&;
& & $params['text'] = $
& & $url = &http://sandbox./request.p?&.http_build_query($params);
获取回复内容
$message = json_decode($output,true);
& & $result = &&;
& & if ($message['result'] == 100){
& && &&&$result = $message['response'];
& & }else{
& && &&&$result = $message['result'].$message['msg'];
小黄鸡完整代码simsimi.php
function callSimsimi($keyword)
& & $params['key'] = &dea8-40ab-a0d2-f258ddd7de15&;
& & $params['lc'] = &ch&;
& & $params['ft'] = &1.0&;
& & $params['text'] = $
& & $url = &http://sandbox./request.p?&.http_build_query($params);
& & $ch = curl_init();
& & curl_setopt($ch, CURLOPT_URL, $url);
& & curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
& & $output = curl_exec($ch);
& & curl_close($ch);
& & $message = json_decode($output,true);
& & $result = &&;
& & if ($message['result'] == 100){
& && &&&$result = $message['response'];
& & }else{
& && &&&$result = $message['result'].&-&.$message['msg'];
& & return $
接入微信公众平台
将官方文件的$contentStr = “Welcome to wechat world!”; 修改为接口调用$contentStr = callSimsimi($keyword);
define(&TOKEN&, &pondbay&);
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
& & $wechatObj-&valid();
& & $wechatObj-&responseMsg();
class wechatCallbackapiTest
& & public function valid()
& && &&&$echoStr = $_GET[&echostr&];
& && &&&if($this-&checkSignature()){
& && && && &echo $echoS
& && && && &
& & private function checkSignature()
& && &&&$signature = $_GET[&signature&];
& && &&&$timestamp = $_GET[&timestamp&];
& && &&&$nonce = $_GET[&nonce&];
& && &&&$token = TOKEN;
& && &&&$tmpArr = array($token, $timestamp, $nonce);
& && &&&sort($tmpArr);
& && &&&$tmpStr = implode( $tmpArr );
& && &&&$tmpStr = sha1( $tmpStr );
& && &&&if( $tmpStr == $signature ){
& && && && &
& && &&&}else{
& && && && &
& & public function responseMsg()
& && &&&$postStr = $GLOBALS[&HTTP_RAW_POST_DATA&];
& && &&&if (!empty($postStr)){
& && && && &$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
& && && && &$RX_TYPE = trim($postObj-&MsgType);
& && && && &switch ($RX_TYPE)
& && && && &{
& && && && && & case &text&:
& && && && && && &&&$resultStr = $this-&receiveText($postObj);
& && && && && && &&&
& && && && && & case &event&:
& && && && && && &&&$resultStr = $this-&receiveEvent($postObj);
& && && && && && &&&
& && && && &}
& && && && &echo $resultS
& && &&&}else {
& && && && &echo &&;
& && && && &
& & private function receiveText($object)
& && &&&$funcFlag = 0;
& && &&&$keyword = trim($object-&Content);
& && &&&include('simsimi.php');
& && &&&$contentStr = callSimsimi($keyword);
& && &&&$resultStr = $this-&transmitText($object, $contentStr, $funcFlag);
& && &&&return $resultS
& & private function receiveEvent($object)
& && &&&$contentStr = &&;
& && &&&switch ($object-&Event)
& && && && &case &subscribe&:
& && && && && & $contentStr = &欢迎关注方倍工作室\n小黄鸡为您服务!&;
& && &&&$resultStr = $this-&transmitText($object, $contentStr);
& && &&&return $resultS
& & private function transmitText($object, $content, $flag = 0)
& && &&&$textTpl = &&xml&
&ToUserName&&![CDATA[%s]]&&/ToUserName&
&FromUserName&&![CDATA[%s]]&&/FromUserName&
&CreateTime&%s&/CreateTime&
&MsgType&&![CDATA[text]]&&/MsgType&
&Content&&![CDATA[%s]]&&/Content&
&FuncFlag&%d&/FuncFlag&
& && &&&$resultStr = sprintf($textTpl, $object-&FromUserName, $object-&ToUserName, time(), $content, $flag);
& && &&&return $resultS
在线时间 小时
微信公众平台开发教程(java版本含代码).pdf
在线时间 小时
这个必须要支持的,毕竟这一切都是因为爱
在线时间 小时
《六大门派》2.5D即时经典侠MMORPG手机游戏,游
《英雄之城2》由蜗牛移动事业中心核心团队研
1、疯狂吸粉——惊喜好礼免费拿,争先恐后分享到
为了方便自己学习,我是直接上传的,没有压包
特别声明(务必查看!)
1、Cocos2d休闲小游戏《
为了方便自己学习,我是直接上传的,没有压
特别声明(务必查看!)
1、HTML5游戏《吃货大
塔防类《Kingdom Rush皇家守卫军》完整素材
100块 编译过的源码加数据库密码 加数据库 服
史上最全的Unity工具包来了,快来下载了
关于我们 | 联系方式
COPYRIGHT(C)2015 ZHONGQINGLONGTU NETWORK CO.LTD ALL RIGHTS RESERVED.ICP备号-4
北京中清龙图网络技术有限公司 地址:北京市朝阳区北苑路甲13号院北辰泰岳大厦11层下次自动登录
关注移动互联网和移动APP开发工具、开发框架、测试工具、微信开发、Android源码、Android开源类库以及各种开源组件的IT科技网站
现在的位置:
方倍微信公众平台消息接口开发(8)小黄鸡(小贱鸡)机器人
第一部分 基于模拟请求的方式
一、模拟请求数据
先看一下小黄鸡的网页版界面
我们通过模拟http请求来实现,上面对话抓包如下:
发送消息的包
接收消息的包:
根据上面的包,模拟发起请求如下:
二、与微信对接
小黄鸡还可以使用API方式调用,但免费时间有限,代码和上面基本一样,就不多写了。
三、演示效果
第二部分 基于接口的方式
一、申请小黄鸡接口
SimSimi,发音为shim-shimee,中文翻译:小黄鸡,由韩文simsim(??)演变而成。 &??&原意为&无聊&。SimSimi 由ISMaker于2002年建立流行的人工智能对话系统。
官方网站 /
接口申请地址:&
接口申请流程:
1. 注册账号
2. 激活账号
3. 申请7天试用接口(或者付费购买接口,价格30美元10 万次)
4. 获得Key:dea8-40ab-a0d2-f258ddd7de15
二、接口分析
http://sandbox./request.p?key=your_trial_key&lc=en&ft=1.0&text=hi
请求参数说明
key:授权key
text:查询消息
lc: 语言代码
ft: 过滤器参数
{ &result&: 100, &response&: &Who are you?!&, &id&: , &msg&: &OK.& }
响应参数说明
result: 调用结果,成功时为100
id: 响应id
response: 响应消息内容
msg: 调用结果对应的内容
三、程序实现
构造Url参数
$params['key'] = &dea8-40ab-a0d2-f258ddd7de15&;
$params['lc'] = &ch&;
$params['ft'] = &1.0&;
$params['text'] = $
$url = &http://sandbox./request.p?&.http_build_query($params);
CURL获取内容
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
获取回复内容
$message = json_decode($output,true);
$result = &&;
if ($message['result'] == 100){
$result = $message['response'];
$result = $message['result'].$message['msg'];
小黄鸡完整代码simsimi.php
function callSimsimi($keyword)
$params['key'] = &dea8-40ab-a0d2-f258ddd7de15&;
$params['lc'] = &ch&;
$params['ft'] = &1.0&;
$params['text'] = $
$url = &http://sandbox./request.p?&.http_build_query($params);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$message = json_decode($output,true);
$result = &&;
if ($message['result'] == 100){
$result = $message['response'];
$result = $message['result'].&-&.$message['msg'];
接入微信公众平台
将官方文件的$contentStr = &Welcome to wechat world!&; 修改为接口调用$contentStr = callSimsimi($keyword);
define(&TOKEN&, &pondbay&);
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
$wechatObj-&valid();
$wechatObj-&responseMsg();
class wechatCallbackapiTest
public function valid()
$echoStr = $_GET[&echostr&];
if($this-&checkSignature()){
echo $echoS
private function checkSignature()
$signature = $_GET[&signature&];
$timestamp = $_GET[&timestamp&];
$nonce = $_GET[&nonce&];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
public function responseMsg()
$postStr = $GLOBALS[&HTTP_RAW_POST_DATA&];
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$RX_TYPE = trim($postObj-&MsgType);
switch ($RX_TYPE)
case &text&:
$resultStr = $this-&receiveText($postObj);
case &event&:
$resultStr = $this-&receiveEvent($postObj);
echo $resultS
private function receiveText($object)
$funcFlag = 0;
$keyword = trim($object-&Content);
include('simsimi.php');
$contentStr = callSimsimi($keyword);
$resultStr = $this-&transmitText($object, $contentStr, $funcFlag);
return $resultS
private function receiveEvent($object)
$contentStr = &&;
switch ($object-&Event)
case &subscribe&:
$contentStr = &欢迎关注方倍工作室/n小黄鸡为您服务!&;
$resultStr = $this-&transmitText($object, $contentStr);
return $resultS
private function transmitText($object, $content, $flag = 0)
$textTpl = &&xml&
&ToUserName&&![CDATA[%s]]&&/ToUserName&
&FromUserName&&![CDATA[%s]]&&/FromUserName&
&CreateTime&%s&/CreateTime&
&MsgType&&![CDATA]&&/MsgType&
&Content&&![CDATA[%s]]&&/Content&
&FuncFlag&%d&/FuncFlag&
$resultStr = sprintf($textTpl, $object-&FromUserName, $object-&ToUserName, time(), $content, $flag);
return $resultS
更多内容,请关注方倍工作室微信,然后回复 &教程&,
&原文:/txw1958/p/wechat-tutorial.&
【上篇】【下篇】
您可能还会对这些文章感兴趣!
同分类最新文章更多好玩美拍

我要回帖

更多关于 小贱鸡网页版 的文章

 

随机推荐