微信公众平台开发(84) 小i机器人
很多朋友詢問如何開發(fā)小黃雞之類的智能聊天機(jī)器人,但遺憾的是小黃雞接口申請頁面在最近幾個月里都無法訪問,且使用時限制太大,我們找了另一個接口:小i機(jī)器人。本文介紹如何在微信公眾平臺中使用小i接口開發(fā)智能聊天機(jī)器人。
小i機(jī)器人是全球用戶量最大的中文聊天機(jī)器人,最早在MSN上出現(xiàn),后拓展到QQ、短信、網(wǎng)頁等交互平臺上,擁有超過1億的用戶。2012年2月,小i機(jī)器人整合了自然語音識別功能,并陸續(xù)發(fā)布了智能手機(jī)、智能電視以及電話上的語音交互版本。
小i機(jī)器人申請地址為
http://cloud.xiaoi.com/index.jsp
注冊即可獲得"初級測試權(quán)限",每日能有50次的智能問答;提交個人真實信息后可獲得"高級測試權(quán)限",每月有10000次智能問答調(diào)用次數(shù)。想要更多,則要付費(fèi)。方倍目前使用的就是免費(fèi)中的高級測試權(quán)限。
如果想體驗機(jī)器人的功能,那么可以直接在后臺找到url和token,填到開發(fā)模式下即可。
如果公眾賬號中已經(jīng)有其他功能,那么就需要使用代碼來接入,小i機(jī)器人的實現(xiàn)代碼如下:
1 function getXiaoiInfo($openid, $content) 2 { 3 //定義app 4 $app_key="************"; 5 $app_secret="********************"; 6 7 //簽名算法 8 $realm = "xiaoi.com"; 9 $method = "POST"; 10 $uri = "/robot/ask.do"; 11 $nonce = ""; 12 $chars = "abcdefghijklmnopqrstuvwxyz0123456789"; 13 for ($i = 0; $i < 40; $i++) { 14 $nonce .= $chars[ mt_rand(0, strlen($chars) - 1) ]; 15 } 16 $HA1 = sha1($app_key.":".$realm.":".$app_secret); 17 $HA2 = sha1($method.":".$uri); 18 $sign = sha1($HA1.":".$nonce.":".$HA2); 19 20 //接口調(diào)用 21 $url = "http://nlp.xiaoi.com/robot/ask.do"; 22 $ch = curl_init(); 23 curl_setopt($ch, CURLOPT_URL, $url); 24 curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-Auth: app_key="'.$app_key.'", nonce="'.$nonce.'", signature="'.$sign.'"')); 25 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 26 curl_setopt($ch, CURLOPT_POST, 1); 27 curl_setopt($ch, CURLOPT_POSTFIELDS, "question=".urlencode($content)."&userId=".$openid."&platform=custom&type=0"); 28 $output = curl_exec($ch); 29 if ($output === FALSE){ 30 return "cURL Error: ". curl_error($ch); 31 } 32 return trim($output); 33 }微信接口中調(diào)用如下:
1 private function receiveText($object) 2 { 3 $keyword = trim($object->Content); 4 include("xiaoi.php"); 5 $content = getXiaoiInfo($object->FromUserName, $keyword); 6 $result = $this->transmitText($object, $content); 7 return $result; 8 }實現(xiàn)效果如下:
?
?
?
總結(jié)
以上是生活随笔為你收集整理的微信公众平台开发(84) 小i机器人的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 并查集详解 ——图文解说,简单易懂(转)
- 下一篇: 基于myecilpse软件制作的欢乐摇奖