| 字段名 | 数据类型 | 说明 |
|---|---|---|
| version | String | 配置文件的版本号 |
| commands | Array | 包含所有命令定义的数组 |
commands 数组包含多个命令对象,每个对象定义了一类控制意图。
| 字段名 | 数据类型 | 说明 |
|---|---|---|
| intent | String | 命令的意图或类别名称,可包含具有类型控制指令的对象 |
| actions | Array | 此意图下支持的操作列表 |
| objects | Array | 此意图下可操作的对象列表 |
actions 数组定义了在特定意图下可以执行的操作。
| 字段名 | 数据类型 | 说明 | 示例 |
|---|---|---|---|
| action | String | 具体的动作名称 | "start", "stop", "compile" |
| keywords | Array<String> 或 Array<Array<String>> | 触发此动作的关键词列表,数组中每个元素是与关系,必须包含,如果一个意图中包含空格表示或关系只需要出现一次即可 |
["启动 打开"] 数组第一项包含空格,表示"启动","打开"任意一个出现就满足条件; ["图像", "采集"] 数组包含两项,表示"图像"和"采集"两个词汇同时出现才满足条件 |
objects 数组定义了可以操作的具体对象。
| 字段名 | 数据类型 | 说明 | 示例 |
|---|---|---|---|
| object | String | 具体的对象名称 | "node_camera_raw", "face_recognition" |
| keywords | Array<String> 或 Array<Array<String>> | 用于匹配此对象的关键词列表 | ["图像", "采集"] |
匹配: 语音识别结果中必须在同一个"intent"中匹配一条"action"和一条"object"才算匹配成功
顺序: 匹配按顺序解析,满足一条匹配规则结束,定义关键字时应避免同时满足多要"intent"项
语音识别结果: "启动图像采集"
匹配动作: start (关键词: "启动")
匹配对象: node_camera_raw (关键词同时包含: "图像", "采集")
发布识别结果: {
"action": "start",
"object": "node_camera_raw"
}