# 图灵机器人智能对话服务接入文档
| 文档状态 | beta |
| ---- | ----------- |
| 文档表述 | 测试版本,仅供测试使用 |
| 文档版本 | v1.0.0 |
| 作者 | 匡亚明 |
| 校对 | 李佳萍 |
| 完成日期 | 2018年1月30日 |
[TOC]
## 使用说明
#### 使用流程
- 注册申请图灵账号
登入网站 http://biz.turingos.cn/login 注册账户
#### 编码方式
> UTF-8(调用图灵API的各个环节的编码方式均为UTF-8)
#### 接口地址
http://api.turingos.cn/turingos/api/v2
## 接入说明
#### 请求方式
> HTTP POST
#### 请求参数
请求参数格式为 json
请求示例:
~~~
{
'data':'{
"content": [
{
"data": "你好"
}
],
"userInfo": {
"uniqueId": "uniqueId"
}
}',
'key':'ed474dae62*********67050faea1788',
'timestamp':'1505390837793'
}
~~~
>参数说明
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --------- | ---- | ---- | ---- | -------- |
| data | - | Y | - | 请求参数 |
| key | - | Y | - | 用户apikey |
| timestamp | - | Y | - | 时间戳 |
**data**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| ---------- | ---- | ---- | ---- | ----------- |
| content | - | Y | - | 输入信息 |
| userInfo | - | Y | - | 用户参数 |
| clientInfo | - | N | - | 客户端状态(内部可用) |
**content**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| ------- | ---- | ---- | ---- | ------------------------------ |
| type | - | N | - | 输入类型:0-文本(默认)、1-图片、2-音频、4-主动交互 |
| data | - | Y | - | 输入类型图片、音频存url;文本类型存输入内容 |
| message | - | N | - | 富媒体信息 |
**注意:type=4(主动交互),传入参数data说明**
| data | 说明 |
| -------- | ----- |
| osgreet | 开机提示语 |
| osactive | 主动交互 |
| osinquiry | 儿童电台初始化 |
**userInfo**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| -------- | ------ | ---- | --------- | ------ |
| uniqueId | String | Y | 长度小于等于32位 | 用户唯一标识 |
**clientInfo-appState**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| ------------ | ---- | ---- | ---- | ------ |
| code | int | Y | - | 应用code |
| operateState | int | Y | - | 应用状态值 |
**operateState**
| code | 功能 |
| ---- | ---- |
| 1000 | 结束 |
| 1100 | 启动 |
| 1200 | 暂停 |
| 1300 | 继续 |
| 1400 | 等待重启 |
#### 输出参数
输出示例:
~~~
{
"intent": {
"code": 10002,
"operateState": 1100
},
"results": [
{
"groupType": 0,
"values": {
"text": "请告诉我您在哪个城市的哪个地方"
},
"resultType": "text"
}
]
}
~~~
>参数说明
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| ------- | ---- | ---- | ---- | ----- |
| intent | - | Y | - | 请求意图 |
| results | - | N | - | 输出结果集 |
**intent**
| 参数 | 类型 | 是否包含 | 取值范围 | 说明 |
| ------------ | ------ | ---- | ---- | ------------ |
| code | int | Y | - | 输出功能code |
| operateState | int | Y | - | 功能状态(功能单独定义) |
| intentName | String | N | - | 意图名称 |
| actionName | String | N | - | 意图动作名称 |
| parameters | String | N | - | 功能相关参数 |
**results**
| 参数 | 类型 | 是否包含 | 取值范围 | 说明 |
| ---------- | ------ | ---- | ---------------------------------------- | ---------------------------- |
| resultType | String | Y | 文本(text);链接(url);音频(voice);主动交互(function);视频(video);图片(image);图文(news) | 输出类型 |
| values | Map | Y | - | 输出内容(一定包含key为resultType的键值对) |
| groupType | int | Y | - | 组编号:0为独立输出,大于0时可能包含同组相关内容 |
**功能code列表**
| code | 说明 |
| ------ | ------- |
| 10000 | 系统异常 |
| 10001 | 主题对话 |
| 10002 | 聊天 |
| 10005 | 成语接龙 |
| 10007 | 猜谜语 |
| 10008 | 一站到底 |
| 10018 | 编故事 |
| 10019 | 讲故事 |
| 10020 | 猜明星 |
| 10024 | 拼眼力 |
| 100000 | 儿童聊天 |
| 100102 | 英文对话 |
| 200101 | 音乐/唱歌 |
| 200201 | 故事 |
| 200205 | 十万个为什么 |
| 200207 | 绕口令 |
| 200208 | 歇后语 |
| 200209 | 问答百科 |
| 200211 | 脑筋急转弯 |
| 200212 | 顺口溜 |
| 200301 | 动物叫声 |
| 200302 | 大自然的声音 |
| 200303 | 乐器的声音 |
| 200401 | 诗词背诵 |
| 200501 | 拍照/关闭拍照 |
| 200701 | 跳舞 |
| 200702 | 日期查询 |
| 200710 | 备忘/闹钟 |
| 201204 | 笑话大全 |
| 201401 | 天气查询 |
| 201501 | 计算 |
| 201711 | 英汉互译 |
| 300101 | 动作控制 |
| 900110 | 系统设置 |
| 1000014 | 儿童电台初始化 |
>功能参数说明(intent-parameters)
**唱歌(200101)**
| 参数 | 类型 | 是否必须 | 说明 |
| ------ | ------ | ---- | ---- |
| singer | String | N | 歌手名 |
| name | String | N | 歌曲名 |
**动物叫声(200301)**
| 参数 | 类型 | 是否必须 | 说明 |
| ------- | ------ | ---- | ------ |
| english | String | N | 动物名称 |
| name | String | N | 动物英文名称 |
**大自然的声音(200302)**
| 参数 | 类型 | 是否必须 | 说明 |
| ---- | ------ | ---- | ---- |
| name | String | N | 名称 |
**乐器的声音(200303)**
| 参数 | 类型 | 是否必须 | 说明 |
| ---- | ------ | ---- | ---- |
| name | String | N | 名称 |
**系统设置(900110)**
| 参数 | 类型 | 是否必须 | 说明 |
| -------------------- | ------ | ---- | ---------------------------------------- |
| intent- operateState | int | Y | 操作11021为增大屏幕亮度,11022为减小屏幕亮度。11010为增大音量,11011为减小音量。11030电量查询 |
| setting_level | String | N | 设置级别,默认为增大一格。 |
**备忘/闹钟(200710)**
| 参数 | 类型 | 是否必须 | 说明 |
| ----------- | ------ | ---- | ---- |
| memoContent | String | N | 内容 |
| cycleType | String | N | 循环周期 |
| alarmType | String | N | 闹钟类型 |
| endDate | String | N | 结束日期 |
| timeLen | String | N | 时间长度 |
| alarmTag | String | N | 闹钟标签 |
| time | String | N | 闹钟时间 |
| startDate | String | N | 开始日期 |
**动作控制(300101)**
| 参数 | 类型 | 是否必须 | 说明 |
| --------- | ------ | ---- | ------------- |
| force | int | N | 力量,默认0,使用最小力量 |
| direction | String | Y | 运动方向 |
direction说明
| 参数 | 说明 |
| ---------------- | ---- |
| see_top | 向上看 |
| see_bottom | 向下看 |
| see_left | 向左看 |
| see_right | 向右看 |
| raise_left_hand | 抬左手 |
| raise_right_hand | 抬右手 |
| raise_all_hand | 抬双手 |
| site_down | 坐下 |
| go_front | 前走 |
| go_left | 左走 |
| go_right | 右走 |
| rotate_left | 左转 |
| rotate_right | 右转 |
| sit_up | 仰卧起坐 |
| push_up | 俯卧撑 |
**诗词背诵(200401)**
| 参数 | 类型 | 是否必须 | 说明 |
| ------ | ------ | ---- | ---- |
| year | String | N | 年代 |
| author | String | N | 作者 |
| name | String | N | 诗名 |
| type | String | N | 诗词类型 |
**中英互译(200401)**
| 参数 | 类型 | 是否必须 | 说明 |
| ------------ | ------ | ---- | ------------------------------------- |
| originalText | String | Y | 要翻译的内容 |
| model | String | Y | 模式 [Chinese2English, English2Chinese] |
**天气(201401)**
| 参数 | 类型 | 是否必须 | 说明 |
| ---- | ------ | ---- | -------------- |
| date | String | N | 时间(yyyy-MM-dd) |
| city | String | N | 城市 |
######
