### 3.2.6 挑战单词
#### (1)功能说明
激情澎湃的猜单词游戏。游戏有四关,难度递增。每一关有10道题。游戏中,机器人给出一个单词,并让用户选择相应的单词类型。用户答对一道题,就能获得1分,并进入下一题;用户答错,则没有加分,而机器人会告诉用户答案,并进入下一题。在每一关中,用户答对6道题(即获得6分),才能有资格进入下一关。在最后一关中,答对8道以下的用户能获得“单词小将”的称号;答对8或9道题的用户能获得“单词达人”的称号;全答对的用户能获得“单词王”的称号。
#### (2) 接口说明
**请求方法**
* POST
**请求地址**
* [http://api.ruyi.ai/v1/message](http://api.ruyi.ai/v1/message)
**请求参数说明**
| 参数名 | 参数类型 | 是否必须 | 参数说明 |
| :--- | :--- | :---: | :--- |
| q | String | 是 | 自然语言表达,例如“挑战单词" |
| app\_key | String | 是 | 应用开发者秘钥,注册开发者后台账号,建立虚拟助理后获得 |
| user\_id | String | 是 | 用户唯一标识,便于支持个性化语义解析。建议开发者使用 UUID 字符,且不同用户必须用不同的 user\_id,防止意图串。 |
#### (3) 返回说明
**返回参数说明**
| 名称 | 类型 | 说明 |
| :--- | :--- | :--- |
| code | Integer | 返回代码 |
| msg | String | 返回代码描述 |
| parameters | JSON Object | 解析到的实体以及服务说明 |
| action | String | 服务的接口名称 |
| name | String | 匹配的意图名称 |
| result | JSON Object | 接口返回内容 |
| outputs | Array | 服务输出结果,微信端使用 type 类型为 wechat 开头的内容;硬件端收到所有内容,依据需求解析使用 |
**返回代码说明**
| 返回代码 | 错误类型 | 说明 |
| :--- | :--- | :--- |
| 0/200 | 成功 | 请求成功 |
| 400 | 无效请求 | 某些必需参数缺失或参数值错误,详见msg字段 |
| 401 | 未授权 | 授权失败,app\_key缺失或错误 |
| 403 | 请求被禁止 | 有效请求,但服务拒绝响应,请联系contact@ruyi.ai |
| 408 | 请求超时 | 请求响应超时,一般响应时间设置为2000ms以内 |
| 429 | 短时间内大量访问 | 短时间内请求数过多 |
| 500 | 内部错误 | 服务处理异常 |
| 503 | 服务不可用 | 服务异常或正在维护 |
#### (4)请求示例
**请求范例**
*挑战单词
开始游戏
渗透
沉默
退出*
**请求示例**
(挑战单词)
* http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=挑战单词
```json
{
"code": 0,
"msg": "ok",
"result": {
"_text": "挑战单词",
"msg_id": "03a6e843-d08a-4e94-98f0-cc3aacd08dbd",
"intents": [
{
"parameters": {
"service": "challengeVocab"
},
"name": "挑战单词",
"result": {
"text": "游戏有四关,难度递增。我给你一个单词,你来猜这个单词的类型。准备好了对我说“开始游戏”",
"type": "dialog"
},
"outputs": [
{
"type": "wechat.text",
"property": {
"text": "游戏有四关,难度递增。我给你一个单词,你来猜这个单词的类型。准备好了对我说“开始游戏”"
}
},
{
"type": "dialog",
"property": {
"text": "游戏有四关,难度递增。我给你一个单词,你来猜这个单词的类型。准备好了对我说“开始游戏”",
"emotion": "like"
}
}
],
"score": "1.0",
"scoreColor": "c4",
"is_match": 1,
"skill_id": "aa9a75f6-442d-4b18-a166-e6dd3fd8bd52",
"id": "33812004-880d-4efc-a0e5-ba4d57c71f93",
"action": "dialog"
}
],
"meta_process_milliseconds": 110
}
}
```
**请求示例**
(开始游戏)
* http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=开始游戏
```json
{
"code": 0,
"msg": "ok",
"result": {
"_text": "开始游戏",
"msg_id": "4f583750-610e-4fa5-862c-ffece97da251",
"intents": [
{
"parameters": {
"service": "challengeVocab"
},
"action": "开始游戏",
"name": "开始游戏",
"result": {
"code": 200,
"response": {
"code": 0,
"msg": "成功",
"result": {
"level": "1",
"question": "fulsomeness",
"answer": "谄媚",
"explanation": "n.虚情,谄媚",
"options": [
"吹毛求疵",
"谄媚"
],
"is_right": "yes",
"total_score": "0",
"level_score": "0",
"q_no": "1"
}
},
"text": "第1关:请直接说出这个单词的类型。单词【fulsomeness】的分类是【吹毛求疵】还是【谄媚】",
"type": "dialog"
},
"outputs": [
{
"type": "wechat.text",
"property": {
"text": "第1关:请直接说出这个单词的类型。单词【fulsomeness】的分类是【吹毛求疵】还是【谄媚】"
}
},
{
"type": "dialog",
"property": {
"text": "第1关:请直接说出这个单词的类型。单词【fulsomeness】的分类是【吹毛求疵】还是【谄媚】",
"emotion": "despite"
}
}
],
"score": "1.0",
"scoreColor": "c4",
"is_match": 1,
"skill_id": "aa9a75f6-442d-4b18-a166-e6dd3fd8bd52",
"id": "2bb16ddc-ad95-43cb-8a3d-20d84a9d3b25"
}
],
"meta_process_milliseconds": 88
}
}
```
**请求示例**
(选择题目)
* http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=谄媚
```json
格式化JSON:
{
"code": 0,
"msg": "ok",
"result": {
"_text": "谄媚",
"msg_id": "ebaffaa1-4469-4bd7-8082-7b63b161c090",
"intents": [
{
"parameters": {
"text": "谄媚",
"service": "challengeVocab"
},
"action": "玩游戏",
"name": "玩游戏",
"result": {
"code": 200,
"response": {
"code": 0,
"msg": "成功",
"result": {
"level": "1",
"last_answer": "谄媚",
"question": "frippery",
"answer": "俗丽廉价",
"explanation": "n.低俗,俗艳",
"options": [
"外表外皮",
"俗丽廉价"
],
"is_right": "yes",
"total_score": "1",
"level_score": "1",
"q_no": "2"
}
},
"text": "你答对了,第1关,第2题:frippery是【外表外皮】或者【俗丽廉价】",
"type": "dialog"
},
"outputs": [
{
"type": "wechat.text",
"property": {
"text": "你答对了,第1关,第2题:frippery是【外表外皮】或者【俗丽廉价】"
}
},
{
"type": "dialog",
"property": {
"text": "你答对了,第1关,第2题:frippery是【外表外皮】或者【俗丽廉价】",
"emotion": "calm"
}
}
],
"score": "1.0",
"scoreColor": "c4",
"is_match": 1,
"skill_id": "aa9a75f6-442d-4b18-a166-e6dd3fd8bd52",
"id": "b13de92c-a700-4831-8f43-9ff9ce2c072c"
}
],
"meta_process_milliseconds": 120
}
}
```
**请求示例**
(退出)
* http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=退出
```json
{
"code": 0,
"msg": "ok",
"result": {
"_text": "退出",
"msg_id": "e2243368-2c8c-4754-b788-325e42dea520",
"intents": [
{
"parameters": {
"service": "challengeVocab"
},
"action": "退出游戏",
"name": "退出游戏",
"result": {
"code": 200,
"response": {
"code": 0,
"msg": "成功",
"result": {
"level": "1",
"total_score": "1",
"level_score": "1",
"q_no": "2"
}
},
"text": "谢谢你参与挑战单词。你在第1关挑战了2个单词,本关得分1分,总分1分,加油哦!",
"type": "dialog"
},
"outputs": [
{
"type": "wechat.text",
"property": {
"text": "谢谢你参与挑战单词。你在第1关挑战了2个单词,本关得分1分,总分1分,加油哦!"
}
},
{
"type": "dialog",
"property": {
"text": "谢谢你参与挑战单词。你在第1关挑战了2个单词,本关得分1分,总分1分,加油哦!",
"emotion": "happy"
}
}
],
"score": "1.0",
"scoreColor": "c4",
"is_match": 1,
"skill_id": "aa9a75f6-442d-4b18-a166-e6dd3fd8bd52",
"id": "fb868cd6-0ae8-4d47-8840-b26e4fdf9638"
}
],
"meta_process_milliseconds": 127
}
}
```
**详细参数说明**
| 名称 | 类型 | 说明 |
| :--- | :--- | :--- |
| text | String | 输入文本 |
| question | String | 问题 |
| answer | String | 答案 |
| explanation | String | 单词解释 |
| total_score | String | 用户得的总分 |
| level_score | String | 用户在当前关数所得的分 |
| option | String | 选项 |
| level| String | 关数 |
| lastAnswer| String | 上一个问题的答案 |
| service | String | 服务名称 |
**指令清单**
| 指令名称 | 范例 |
| :--- | :--- |
| 唤醒| 挑战单词|
| 开始游戏| 开始|
| 猜类型| 魔法|
| 继续(有资格闯入下一关时,才能被触发)| 继续|
| 退出| 退出|
- 1. 海知智能第三方技能插件开放平台概述
- 2. 快速接入API
- 2.1 硬件接口调用
- 2.2 快速接入微信
- 2.3 API接入常见问题
- 3. 技能插件
- 3.1 基础能力类
- 顶级过滤器
- 用户知识图谱
- 机器人档案
- 通用闲聊
- 儿童闲聊
- Smart Reply
- 轻量闲聊
- 3.2 语音游戏类
- 成语接龙
- 词汇乐园
- 词语接龙
- 鹦鹉学舌
- 动脑猜猜
- 挑战单词
- 冒险世界
- 猜猜我是谁
- 阿拉丁学诗词
- 猫猫托管所
- 漂流瓶
- 诗词大会
- 国学大会
- 我爱猜歌名
- 我在看着你
- 灯谜猜猜
- 3.3 休闲娱乐类
- 星座运势
- 悦耳声音
- 幸运签
- 调教机器人
- 娱乐推送
- 3.4 生活服务类
- 黄历
- 计算器
- 古诗词
- 时间询问
- 翻译类技能
- 天气资讯
- 日程创建
- 日程创建指令
- 闹钟
- 食材知识
- 冥想音乐
- 格言
- 每日英语
- 汉语词典
- 豆果菜谱
- 古文翻译
- 3.5 音频点播类
- 喜马拉雅FM
- 新闻广播
- 音乐点播
- Smart Music
- 儿童听听
- Smart Audio
- 儿童笑话
- 点播控制指令
- 3.6 视频点播类
- 影视点播
- 3.7 百科知识类
- 人物百科
- 百科问答
- 实时百科
- 3.8 体育健康类
- 五分钟健身
- 4. 开发者初级教程
- 4.1 开通服务
- 4.2 创建机器人
- 4.3 设置机器人
- 4.4 获取技能插件
- 4.5 让机器人学会聊天
- 4.6 导入知识库
- 4.7 多种问答形式
- 4.8 数据统计
- 4.9 粉丝管理
- 5. 开发者中级教程
- 5.1 词典运用
- 5.2 意图处理
- 5.3 暗号使用
- 5.4 事件触发
- 5.5 优先级
- 5.6 触发器
- 5.7 快捷键
- 5.8 意图报错
- 6. 开发者高级教程
- 6.1 handlebars模版语言
- 6.2 JavaScript简单介绍
- 6.3 JavaScript使用说明
- 6.4 JavaScript使用案例
- 6.5 JavaScript常见问题
- 7. 快速发布技能
- 8. 帮助中心
- 8.1 常见概念
- 8.2 帮助视频
- 8.3 联系我们