讓微信保持高度活躍的利器
這裡說的微信就是微信公眾平臺,為了提高其活躍度,開發者在微信公眾帳號中加入了聊天、笑話、天氣查詢等很多功能,但這些功能已經沒有什麼特別之處,為了區別讓自己的公眾帳號擁有與眾不同的地方,就需要開發一些有創意的功能。本文就講解如何通過圖靈機器人api介面實現“成語接龍”,關於圖靈機器人,就不多介紹,大家可以去看一下官方網站:
http://www.tuling123.com
實現步驟:
1、註冊圖靈機器人api,獲取介面key。
圖靈機器人網站:http://www.tuling123.com/
郵箱註冊,啟用即可。
2、封裝引數,key、info、userid
/**
*
封裝http
* @return url
*/
public String formatUrl(String info){
/** 此處為圖靈api介面
* key:第一步中註冊圖靈機器人帳號即可得到,以11111111代替
* info:傳送給微信的內容,進入成語接龍模式可以用“成語接龍”
* userid:區分自己的使用者,微信可以用微信的openid */
info = "成語接龍";
String apiUrl =
"http://www.tuling123.com/openapi/api?key=11111111&info="
return apiUrl;
}
3、編寫httpget請求方法
/**
* 傳送httpget請求
* @param param 請求連結和引數
* @return結果
*/
public String getProcess(Stringparam){
/** 傳送httpget請求 */
HttpGet request = new HttpGet(param);
String result =
""
try {
HttpResponseresponse = HttpClients.createDefault().execute(request);
if(response.getStatusLine().getStatusCode()==200){
result =EntityUtils.toString(response.getEntity());
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
4、呼叫圖靈機器人介面
/**
* 請求圖靈機器人介面,並解析結果資料
* @param info 請求內容
*/
public void getResult(String info){
/** 獲取url */
String url =formatUrl(info);
/** 傳送http get請求,獲取圖靈機器人介面結果 */
String result =getProcess(url);
/** 解析圖靈機器人介面返回結果 */
try {
JSONObject json = new JSONObject(result);
//成語接龍模式code=100000
if(100000==json.getInt("code")){
result =json.getString("text");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
5、在通過“成語接龍”進入成語接龍模式之後,迴圈呼叫介面,即可實現圖片中展示的效果。
總結,在成語接龍功能的實現過程中,上下文的關聯是最重要的,這也是圖靈機器人介面的強大之處。userid引數正是區分不同的使用者、對同一個使用者前後語義實現關聯的標誌,所以,想要實現成語接龍的功能,一定要傳userid。