1. 程式人生 > >讓微信保持高度活躍的利器

讓微信保持高度活躍的利器

這裡說的微信就是微信公眾平臺,為了提高其活躍度,開發者在微信公眾帳號中加入了聊天、笑話、天氣查詢等很多功能,但這些功能已經沒有什麼特別之處,為了區別讓自己的公眾帳號擁有與眾不同的地方,就需要開發一些有創意的功能。本文就講解如何通過圖靈機器人api介面實現“成語接龍”,關於圖靈機器人,就不多介紹,大家可以去看一下官方網站:

http://www.tuling123.com


實現步驟:

1、註冊圖靈機器人api,獲取介面key。
圖靈機器人網站:http://www.tuling123.com/
郵箱註冊,啟用即可。


2、封裝引數,key、info、userid

/**

       * 封裝http

請求的url引數

       * @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="

+info+"&userid=********";

           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。