微信公众号实现机器人回复

Posted woshihaiyong168

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信公众号实现机器人回复相关的知识,希望对你有一定的参考价值。


实现效果:


实现思路:

1、使用微擎连接微信公众号

2、修改自定义回复规则

3、请求智能机器人接口


在 服务器上 安装微擎(参考以下连接)

http://blog.csdn.net/woshihaiyong168/article/details/53932123

一定要 注册社区号 云升级   (将目录授权 777)

安装完成并升级成功之后


连接微擎与公众号


登陆微信公众平台


将以上数据写入到微擎的 新建公众号中去   注意要把服务器ip加入到白名单里

点击下一步 按照微擎流程 将token  以及其他数据写入到微信服务器配置里去   


设置自定义回复  正则匹配


笔者使用的智能机器人接口是 智齿科技的 机器人


http://www.sobot.com

修改demo.php   (在微擎的/framwork/builtin/user/api)

<?php 
$message = $this->message;
// function render(&$str)
// 	$str = "呵呵 $str 哈哈";
// 

// $ret = preg_match('/(?:userapi)(.*)/i', $this->message['content'], $matchs);
// if(!$ret) 
// 	return $this->respText($this->message['content']);
// 
// $word = $matchs[1];

// render($word);

function _request($url , $https = true, $method = 'GET', $data = '')
	$ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        if ($https) 
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        
        if ($method == 'POST') 
            curl_setopt($ch,CURLOPT_POST,1);
            //设置POST文件内容
            curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
        
        $out= curl_exec($ch);
        curl_close($ch);
        return $out;


function sendMess($content)
	$url = 'http://www.sobot.com/chat/user/robotsend.action';
	$data = [
	'requestText' => $content,
	'question' => $content,
	'sysNum' => '5e7429c4d9a949718a546bc09025a3f2',
	'uid' => '24754af78d3d4dbc8a0263f7b32bd2ed',
	'cid' => 'ae085b421f7949d48834218a37879372',
	'source' => 0,
	'questionFlag' => 0,
	'lanFlag' => 0,
	'robotFlag' => '',
	];
	return $res = json_decode(_request($url, false, 'POST', $data))->answer;

$content = sendMess($this->message['content']);
return $this->respText($content);



这时就实现了  微信公众号 机器人客服!!! 


以上是关于微信公众号实现机器人回复的主要内容,如果未能解决你的问题,请参考以下文章

微信公众号接入图灵机器人实现自动回复消息

flask+新浪sae+图灵机器人实现超简单微信公众号智能回复功能

使用微信公众平台自动回复 API 时候,如何向服务器提交 xml 消息内容?

Django实现微信公众号简单自动回复(复读机)

JAVA微信公众号开发回复消息能回复多条吗?具体怎么代码实现?

教你搭建微信公众号自动答复机器人(上)