日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

微信公众号天气与聊天机器人小功能

發(fā)布時(shí)間:2025/3/11 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信公众号天气与聊天机器人小功能 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

微信公眾號(hào)小功能

以下都是借鑒的微信公眾平臺(tái)的文檔加老師指點(diǎn)和自行的理解。

(1)微信公眾號(hào)發(fā)送地區(qū)回復(fù)現(xiàn)在和未來(lái)五天天氣情況
(2)發(fā)送語(yǔ)音和智能機(jī)器人聊天

一、調(diào)用天氣預(yù)報(bào)接口

實(shí)現(xiàn)微信公眾號(hào)發(fā)送地區(qū)回復(fù)現(xiàn)在和未來(lái)五天天氣情況要去調(diào)用天氣接口。
我使用的是聚合網(wǎng)的天氣接口。

知道了接口的地址、返回格式、請(qǐng)求的方式那么接下來(lái)就好做了。
這里還要說(shuō)一下向http發(fā)送請(qǐng)求的幾種方式:
1.file_get_contents()
2.curl
3.fopen()
4.fsocket();
知道了發(fā)送請(qǐng)求的方式那么就可以寫(xiě)我們的代碼了。

下面的是接收微信端消息的代碼

private function receiveMsg(){$xml = file_get_contents("php://input");//獲取微信平臺(tái)發(fā)來(lái)的消息//file_put_contents("data.txt",$xml);//講發(fā)來(lái)的消息寫(xiě)入文件$obj = simplexml_load_string($xml,"SimpleXMLElement",LIBXML_NOCDATA);//將xml轉(zhuǎn)為對(duì)象類(lèi)型return $obj;}

這里是接收消息代碼

//這里證明不是第一次接入了。 處理業(yè)務(wù)邏輯 接收消息$obj = $this->receiveMsg();//判斷接收到的類(lèi)型switch($obj->MsgType){case "text"://城市$city = str_replace('天氣:',"",$obj->Content);//key$key = "ee9206e9a2c81fd162750d3321e072ea";//接口地址 拼接接口地址$url = "http://apis.juhe.cn/simpleWeather/query?city=".$city."&key=".$key;//發(fā)送請(qǐng)求 默認(rèn)為json格式將其轉(zhuǎn)為數(shù)組類(lèi)型$data = json_decode(file_get_contents($url),true);//file_put_contents('data.txt',$data);//判斷是否請(qǐng)求成功if($data["error_code"]==0){//當(dāng)前的數(shù)據(jù)$today = $data["result"]["realtime"];//未來(lái)五天的空氣狀況$future = $data["result"]["future"];//返回的信息$content = "您所查詢的城市為:".$data["result"]["city"]."\n";$content.= "當(dāng)前溫度為:".$today["temperature"]."℃"."\n當(dāng)前濕度為:".$today["humidity"]."%\n";$content.= "天氣狀況:".$today["info"]."\n"."風(fēng)向:".$today["direct"]."\n"."風(fēng)力:".$today["power"]."\n空氣質(zhì)量:".$today["aqi"]."\n";$content.= "以下是未來(lái)五天的天氣情況\n";//返回未來(lái)五天的空氣情況foreach($future as $k=>$v){$content.="--------------------------\n";$content.= "日期:".$v["date"]."\n";$content.="氣溫:".$v["temperature"]."\n";$content.="天氣情況:".$v["weather"]."\n";$content.="風(fēng)向:".$v["direct"]."\n";}}else{$content="您所輸入的城市有誤,請(qǐng)正確填寫(xiě)。格式為'天氣:地區(qū)名'";}break;}//回復(fù)消息$this->responseText($obj,$content);}

這里是回復(fù)消息代碼

//自動(dòng)回復(fù)消息private function responseText($obj,$content){//占位符的內(nèi)容$ToUserName = $obj->FromUserName;$FromUserName = $obj->ToUserName;$time = time();$msgType = "text";$contents = $content;//自動(dòng)回復(fù)$xml = "<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[%s]]></MsgType><Content><![CDATA[%s]]></Content></xml>";//把占位符改為消息echo sprintf($xml,$ToUserName,$FromUserName,$time,$msgType,$contents);}

二、調(diào)用圖靈機(jī)器人接口

首先我們是要語(yǔ)音和機(jī)器人交流需要去微信公眾平臺(tái)

找到接受語(yǔ)音識(shí)別結(jié)果選擇開(kāi)啟(開(kāi)啟后需要取消關(guān)注重新關(guān)注一下,否則要等24h)
然后去百度圖靈機(jī)器人注冊(cè)個(gè)賬號(hào)獲取到圖靈機(jī)器人的接口和key

然后直接寫(xiě)我們的代碼,因?yàn)閳D靈機(jī)器人用的是post請(qǐng)求所以要用curl,我們最好封裝一個(gè),如下

public function http_get($url){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);//向那個(gè)url地址上面發(fā)送curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);//設(shè)置發(fā)送http請(qǐng)求時(shí)需不需要證書(shū)curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//設(shè)置發(fā)送成功后要不要輸出1 不輸出,0輸出$output = curl_exec($ch);//執(zhí)行curl_close($ch); //關(guān)閉return $output;}public function http_post($url,$data){$curl = curl_init(); //初始化curl_setopt($curl, CURLOPT_URL, $url);//向那個(gè)url地址上面發(fā)送curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);//需不需要帶證書(shū)curl_setopt($curl, CURLOPT_POST, 1); //是否是post方式 1是,0不是curl_setopt($curl, CURLOPT_POSTFIELDS, $data);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//需不需要輸出$output = curl_exec($curl);//執(zhí)行curl_close($curl); //關(guān)閉return $output;}

以下是圖靈機(jī)器人的用法

case "voice"://獲取用戶的消息轉(zhuǎn)為文本$text = urlencode($obj->Recognition);//轉(zhuǎn)碼//調(diào)用機(jī)器人的接口$url = "http://openapi.tuling123.com/openapi/api/v2";//請(qǐng)求的消息$msg = ["reqType"=>0,"perception"=>["inputText"=> ["text"=>$text,]],"userInfo"=>["apiKey"=>"b7da94fa32c8487a846e981f8761370c","userId"=>"1",]];$msg = urldecode(json_encode($msg));//轉(zhuǎn)為json格式,并且解碼//向接口發(fā)送請(qǐng)求$result = $this->http_post($url,$msg);//將得到的請(qǐng)求轉(zhuǎn)為數(shù)組$result = json_decode($result,true);//得到機(jī)器人的回復(fù)消息$content = $result["results"][0]["values"]["text"];$this->check($content);break;

總結(jié)

以上是生活随笔為你收集整理的微信公众号天气与聊天机器人小功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 白丝一区| 法国极品成人h版 | 日韩中文字幕一区二区三区 | 国产一区在线免费 | 靠逼网站 | 不卡中文字幕在线观看 | 午夜爱爱网 | 大战熟女丰满人妻av | 广州毛片 | 色屁屁| 国产精品精华液网站 | 在线观看波多野结衣 | 亚洲六月婷婷 | 国产精品免费看久久久无码 | a v免费视频 | 久久免费黄色 | 日本三级黄在线观看 | 1024国产在线| 精品一区二区三区免费毛片 | 日韩夜夜| 秋霞在线观看秋 | 给我免费观看片在线电影的 | 久久久精品国产sm调教 | 欧美一区二区视频在线 | 99视频99 | 亚洲男人天堂影院 | 欧美日韩激情网 | 欧美麻豆视频 | 亚洲欧洲精品成人久久奇米网 | 黄色大全在线观看 | 一级黄色片免费观看 | 国产aa视频 | 天天久久 | 国产精品一二三四区 | 久久综合九色综合欧美狠狠 | 国产亚洲精品久久久久四川人 | 欧美日韩在线二区 | 夜夜草网 | 亚洲性视频 | 少妇久久久久久久 | 精品少妇v888av| 国产精品无码网站 | 上海毛片| 69午夜 | 精品一区二区三 | 高级家教课程在线观看 | 久久无毛 | 国产又粗又黄又爽 | 成人亚洲一区 | 欧美a级片视频 | 免费的毛片 | 中国少妇无码专区 | 激情视频区 | 国产亚洲精品久久久久久无几年桃 | 国产美女菊爆在线播放APP | 老司机午夜视频 | 特级淫片aaaaaaa级附近的 | 精品熟妇视频一区二区三区 | 狠狠干网站 | 国产一二区在线 | 在线观看的av | 天天综合视频 | 男人天堂国产 | av小说区| 嫩草视频在线观看免费 | 中文在线字幕 | 国产亚洲视频在线观看 | 边打电话边做 | 鸥美一级片 | 日韩激情视频网站 | 亚洲熟妇中文字幕五十中出 | 亚洲性少妇 | 亚洲黄色一区二区 | 殴美毛片| 亚洲一区二区三区视频在线 | 亚洲天堂影院 | 国产免费一区二区三区 | 欧美一区二区三区国产 | 亚洲激情视频小说 | 黄色大毛片 | 两个人看的www视频免费完整版 | 天天综合天天添夜夜添狠狠添 | 国产精品久久久久一区二区 | 亚洲综合五区 | 国模无码视频一区 | 黄色国产视频网站 | 巨胸大乳www视频免费观看 | 精品久久久久久久中文字幕 | 日韩黄色精品视频 | 国产精品一区麻豆 | 男人午夜剧场 | 成人看的毛片 | 超碰97在线资源站 | 免费av网站在线观看 | 国内免费av | 欧美另类专区 | 高清乱码免费网 | 欧美午夜视频 | 野外做受又硬又粗又大视频√ |