🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### 接口路径:https://dev.lingju.ai/httpAuthApi/ljchat.do <table style="width:100%"> <tbody> <tr height="28" style="font-weight:bold;"> <td height="28" width="130px" >名称</td> <td colspan="3" >服务器API接口</td> </tr> <tr height="28" style="font-weight:bold;"> <td height="28" >接口路径</td> <td colspan="3" >https://dev.lingju.ai/httpAuthApi/ljchat.do</td> </tr> <tr height="28" style="font-weight:bold;"> <td height="28" >请求方式</td> <td colspan="3" >post</td> </tr> </tbody> </table> #### http post请求示例: ~~~ post https://dev.lingju.ai/httpAuthApi/ljchat.do json格式串行化post上传,注意请求的header需添加 'Content-Type':'application/json;charset=UTF-8' { "appkey":"xxxxxxxxxxxxxxxxxxxxxx", "userid":"xxxxxxxxxxxxxxxxxxxxxx", "authcode":"xxxxxxxxxxxxxxxxxxxxxx", "userip":"xxx.xxx.xxx.xxx", "input":"今天天气怎么样", "lat":"23.12635", "lng":"113.38776", "city":"广州", "position":"广东广州", "data":[ { "target":ID, "list":[] } ] } ~~~ #### 请求参数说明: <table style="width:100%"> <thead> <tr height="28"> <th width="130px">参数</th> <th width="100px">数据类型</th> <th width="130px">可需</th> <th colspan="2" >描述</th> </tr> </thead> <tbody> <tr height="23" style="height:17.25pt"> <td height="23" >appkey</td> <td >String</td> <td>必填</td> <td colspan="2">分配给开发者的专属appkey,请妥善保管</td> </tr> <tr height="92" > <td height="92">userid</td> <td>String</td> <td>必填</td> <td colspan="2">终端用户的唯一标识,移动设备建议使用mac地址,入网许可号等,注意取值必须为:[A-Za-z0-9]。请开发者务必注意区分userid,智能云根据userid标识终端id并实现授权限制及个性化的上下文应答。</td> </tr> <tr height="69" style="height:51.75pt"> <td>authcode</td> <td>String</td> <td>必填</td> <td colspan="2">给终端设备分配的授权码,由开发者自行管理</td> </tr> <tr height="23" style="height:17.25pt"> <td height="23" >userip</td> <td >String</td> <td>必填</td> <td colspan="2" >终端设备的ip(用来获取终端设备所在城市。请开发者务必填写终端设备的ip,否则会影响询问天气、交通信息等需要获取终端设备所在城市对话的正常交流。)</td> </tr> <tr > <td>input</td> <td>String</td> <td>必填</td> <td colspan="2">文本输入,长度:[1,300],取值:普通标点符号及中英文数字</td> </tr> <tr> <td>city</td> <td>String</td> <td></td> <td colspan="2">城市(该字段如果有参数,必须跟“lat”以及“lng”一起传才有效)</td> </tr> <tr> <td>lat</td> <td>double</td> <td></td> <td colspan="2">纬度</td> </tr> <tr> <td>lng</td> <td>double</td> <td></td> <td colspan="2">经度</td> </tr> <tr> <td>position</td> <td>String</td> <td></td> <td colspan="2">具体位置</td> </tr> <tr> <td rowspan="6">entryMode</td> <td rowspan="6">Json</td> <td rowspan="6">选填</td> <td colspan="2">附带的JSON数据:</td> </tr> <tr> <td>mode</td> <td>录入方式(必填):<br>0=文本、<br>1=按键。 <br>数据类型:int</td> </tr> <tr> <td>status</td> <td>录入状态(必填): <br> 0=正常录入、<br>1=当前正在合成文本时,打断文本合成录入、<br>2=当前正在播放音频,打断音频录入。 <br> 数据类型:int </td> <tr> <td>audios</td> <td>当前播放的音频在音频集合中的索引(从0开始,例如当前播放列表有5个音频,听到第二个音频时打断则填1)。<br>数据类型:int </td> </tr> <tr> <td>intent</td> <td>按键意图(当录入方式mode=1时必填):<br>0=打开技能、<br>1=终止技能。<br>数据类型:int </td> </tr> <tr> <td>skillName</td> <td>技能名(当按键意图intent=0时必填):例如(探索)。<br>数据类型:String </td> </tr> <tr> <td rowspan="3">data</td> <td rowspan="3">JsonArray</td> <td rowspan="3"></td> <td colspan="2">附带的JSON数据:</td> </tr> <tr> <td>target</td> <td>目标对象id<br>数据类型:int</td> </tr> <tr> <td>list</td> <td>目标对象集合,Json,json<a href="http://doc.lingju.ai/@ljsdk/android_sdk" target="_blank">结构请参照</a></td> </tr> </tbody> </table> #### 接口返回JSON示例: ~~~ 普通回复: { "answer":"广州今天天气预报说“大雨”,出门最好带上伞。", "status":0 } 带指令的回复: { "answer":"{\"rtext\":\"好的\",\"outc\":0, \"actions\":[{\"action\":\"QUERY\", \"target\":{\"recyle\":0,\"id\":100,\"singer\":[\"周杰伦\"],\"release\":0,\"type\":\"歌曲\"}, \"hints\":{ \"success\":{\"text\":\"好的,为您播放周杰伦的歌\"}, \"failure\":{\"text\":\"抱歉,我找不到周杰伦的歌\"}, \"notsupport\":{\"text\":\"抱歉,我没办法播放歌曲\"} } }, {\"action\":\"SET\", \"target\":{\"id\":300,\"origin\":\"QUERY\",\"control\":\"PLAY\",\"type\":\"AUDIO\"}}]}", "status":0 } ~~~ #### 接口返回说明: ~~~ Content-Type:application/json;charset=UTF-8 ~~~ <table style="width:100%"> <thead> <tr height="28" > <th height="28" width="130px">属性名</th> <th width="100px">数据类型</th> <th>描述</th> </tr> </thead> <tbody> <tr height="23"> <td height="23" >status</td> <td>int</td> <td>状态码,0=成功,其它值则为错误码,请参考错误码表</td> </tr> <tr height="23"> <td height="23" >description</td> <td >String</td> <td>通常为空,出错时会有错误信息</td> </tr> <tr > <td>answer</td> <td >String</td> <td>普遍的回复文本或json结构的字符串文本,若为json文本,请参考<a href="http://doc.lingju.ai/@ljsdk/android_sdk">指令说明文档</a>解析,若仅用于普通聊天,建议忽略json文本,以"暂不知道该功能"作为回复。</td> </tr> </tbody></table>