微信企业号开发之图灵机器人接入(4)
2016-02-26 13:45
543 查看
1.说明
图灵机器人其实也就是一个知识库,对你的提问进行回答图灵机器人接入文档地址:http://www.tuling123.com/html/doc/api.html
图灵机器人调用十分方便,只需要post请求,并在url中添加参数
这里以文字类为例:
文字类
<1>请求示例
http://www.tuling123.com/openapi/api?key=APIKEY&info=你好
<2>返回数据
{
"code": 100000,
"text": "你也好 嘻嘻"
}
<3>数据说明
字段 | 说明 |
---|---|
code | 文本类标识码 |
text | 结果 |
2.建议
图灵机器人对微信公众号提供了接口,但是并不建议使用这种方法,而是推荐接入原生的api原因是因为微信只提供了一个url接口,这个接口接入了微信,其他对输入内容进行逻辑判断
也就无法继续
3.接入工具类源码
package com.baosight.wechat.message.util; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import java.util.HashMap; import java.util.Map; //接入图灵机器人 回复问题功能 public class RoobotAnswer { public static HashMap<String, String> getAnswer(String question,String fromUserName) throws Exception{ Map<String, Object> reqMap=new HashMap<String, Object>(); HashMap<String, String> resMap=new HashMap<String, String>(); question=URLEncoder.encode(question,"utf-8"); String url="http://www.tuling123.com/openapi/api?key=d76e9828b91463bf989ff0156443c7ff&info="+question+"&userid="+fromUserName; URL getURL=new URL(url); HttpURLConnection connection=(HttpURLConnection) getURL.openConnection(); connection.connect(); BufferedReader reader=new BufferedReader(new InputStreamReader(connection.getInputStream())); StringBuffer sb=new StringBuffer(); String line=""; while ((line=reader.readLine())!=null) { sb.append(line); } reader.close(); connection.disconnect(); String [] ss=new String [10]; String s=sb.toString(); reqMap=GsonHelper.parseJsonToMap(s); Object key=reqMap.get("code"); //文本类和链接类 if (key.equals(200000.0)) { resMap.put("msgType","link"); resMap.put("text", (String) reqMap.get("text")); resMap.put("url",(String) reqMap.get("url") ); }else if (key.equals(100000.0)) { resMap.put("msgType", "text"); resMap.put("text", (String) reqMap.get("text")); }else { resMap.put("msgType", "text"); resMap.put("text", "本帅哥也不知道怎么办了。。。"); } return resMap; } }
这里只对图文类和连接类消息进行处理,想要获取更多种类消息需要解析传过来的其他种类json
相关文章推荐
- 微信企业号开发之图文消息
- 使用ngrok本地开发微信,代码无需上传到服务器
- zabbix借助onealert实现微信报警
- 微信JS-SDK实现自定义分享功能,分享给朋友,分享到朋友圈
- 微信SDK开发学习
- 不通过第三方判断有无安装微信、QQ方法
- 微信开发学习网址
- 阿里的钉钉能干掉腾讯的微信么?
- 仿微信安卓Activity拖动退出分析
- 怎样调通微信支付及微信发货通知接口(Js API)
- java双色球彩票小程序
- Android Learning:微信第三方登录
- 微信浏览器禁止页面下拉查看网址
- 微信URL设置问题
- 微信官方jssdk Demo
- 39、微信通讯录联系人快速索引侧边栏SideBar
- 38、微信通讯录联系人汉语拼音中英文混合排序
- 37、微信通讯录联系人列表适配器ContactAdapter
- 36、微信通讯录页面
- 35、公众号(订阅号)消息列表