微信公众平台Token验证及小黄鸡API接口设置


1.设置好自己的微信公众平台消息接口,这个大家参照网站提示设置即可
注意先要上传API示范文件,修改token为自己的token,即api的TOKEN和自己平台的是一致的,然后点击提交,如果正确会,显示"提交成功”

2.显示消息:当用户发送消息到,接口,接口做出响应,然后返回消息。在用户微信客户端显示。

<?php
/**
* wechat php test
* 这基本就是官方的PHPSDK,改动很小
*/
//这里换成你的Token

define("TOKEN", "h2blog");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();//响应成功,请注释掉,谢谢!
$wechatObj->responseMsg();

class wechatCallbackapiTest
{
public function valid()
{
$echoStr = $_GET["echostr"];

//valid signature , option
if($this->checkSignature()){
echo $echoStr;
exit;
}
}

public function responseMsg()
{
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];

//extract post data
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
if(!empty( $keyword ))
{
$msgType = "text";
if( $keyword == "help" ){//你说的这个,我懂,不劳小黄鸡烦心了,直接返回自定义结果
$contentStr = "帮助信息";
}
elseif( $keyword == "1" ){
$contentStr = "草你妹的,学点字会死啊?";
}
elseif( $keyword == "2" ){
$contentStr = "出门没带老2吗?";
}
elseif( $keyword == "3" ){
$contentStr = "再不说话不理你了!";
}
elseif( $keyword == "无聊" && $keyword == "无聊啊"){
$contentStr = "你大爷,陪你聊天不收费你还嫌无聊?劳资不伺候你了!";
}
elseif( $keyword == "微信" ){
$contentStr = "梦想与现实-无节操陪聊,微信号:IMH_BLOG";
}
elseif( $keyword == "干吗" ){
$contentStr = "咦!这位童鞋,我看你玉树临风,天赋异秉,将来必成大器。";
}

else{
$contentStr = re( $keyword );//小黄鸡,你怎么看?(re调用小黄鸡)
}
//$contentStr = $contentStr."(自动回复,查看帮助请发help)";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
}else{
echo "大爷,您还是写点什么吧~";
}

}else {
echo "";
exit;
}
}

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 ){
return true;
}else{
return false;
}
}
}

//拿出cookie,否则会回复 "hi"
function re( $keyword ){
if ( $keyword<>'' ){
$header = array();
$header[]= 'Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, text/html, * '. '/* ';
$header[]= 'Accept-Language: zh-cn ';
$header[]= 'User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1';
$header[]= 'Host: www.simsimi.com';
$header[]= 'Connection: Keep-Alive ';
$header[]= 'Cookie: JSESSIONID=2D96E7F39FBAB9B28314607D0328D35F';

$Ref="http://www.simsimi.com/talk.htm?lc=ch";
$Ch = curl_init();
$Options = array(
CURLOPT_HTTPHEADER => $header,
CURLOPT_URL => 'http://www.simsimi.com/func/req?msg='.$keyword.'&lc=ch',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_REFERER => $Ref,
);
curl_setopt_array($Ch, $Options);
$Message = json_decode(curl_exec($Ch),true);
curl_close($Ch);

if($Message['result']=='100' && $Message['response'] <> 'hi'){
return $Message['response'];
}else{
echo '梦想与现实(<A href="http:///xiaotime.cn">http://xiaotime.cn</A>)服务器异常,请联系管理员';
}

}
}

?>

3.必须对SDK代码做一点点修改,原来SDK代码只调用了签名,根本没有调用responseMsg()方法。只需要在代码开始添加调用代码即可,开头部分代码如下:
//define your token
define("TOKEN", "weixin"); //TOKEN和你在公众接口里设置的一样比如weixin,
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid(); //接口设置成功后把 //$wechatObj->valid();注释掉
$wechatObj->responseMsg(); //就是添加这段调用代码 一切就绪后随便向平台发送个消息,然后就会显示了,注意平台发送内容编码格式是“UTF-8”
4.深入开发。所有数据处理都可以在responseMsg方法中完成,你想怎么做都可以。
5.注意事项,返回消息长度限制2048个字节。
6.如果你的关键词不多,可以不使用接口,直接定义关键词,和回复内容即可(做多200条规则)。
7.补充一下,很多朋友不会设置,上个图

另外,小黄鸡以成功接入微信共众平台!哈哈o(∩_∩)o 发张图!

喜欢的朋友加我微信公号:IMH_BLOG 调戏调戏吧! QQ:605667168

=================================以上是微信公众平台帐号=====================================

 

 

=================================以下是H的QQ助手,语言库都是劳资一个一个手写添加进来的,各种无节操的陪聊=====================================

添加QQ:605667168为好友即可无节操自助陪聊。

聊天截图如下:


无论走哪条路都牢记最初的梦想,并坚持于最初梦想的方向! Carpe Diem and Do what I like