# 设备控制器
# 协议类型
消息类型 | 名称 | 必须实现 |
---|---|---|
directive | execute | 是 |
event | execute_result | 是 |
# context
"unios_context": {
....
"device_controller": {
"version": "1.0"
},
...
}
1
2
3
4
5
6
7
2
3
4
5
6
7
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
version | string | 模块版本,现在是1.0 | 是 |
# directive
执行
执行云端下发的自定义指令,每次只下发一个自定义指令。
回复示例
{
"unios_directives": [
{
"header": {
"name": "device_controller.execute"
},
"payload": {
"operator": "ATTR_WIND_DIRECTION",
"value": "WIND_SWING",
"value_expr": "扫风"
}
}
]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
operator | String | 终端需要执行的指令。自定义回复中自定义指令或设备控制指令,如:升高一度(ACT_INCREASE) | 是 |
value | String | 设置值,如:WIND_SWING等 | 否 |
value_expr | String | 设置值,如:扫风等 | 否 |
data_type | String | 数据类型,如:int | 否 |
# event
执行结果上报
在执行完云端返回的directive后,需要将执行的结果告知云端。
{
"unios_header": {...},
"unios_context": {...},
"unios_event": {
"header": {
"name": "device_controller.execute_result",
"message_id": "xxxxxxxx"
},
"payload": {
"result": "SUCCEED",
"operator": "xxxxx",
"failure_code": "xxxx",
"feedback_text": "xxxxx"
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
unios_header | Object | 构建的通用 unios_header | 是 |
unios_context | Object | 构建的通用 unios_context | 是 |
result | String | 指令执行结果。取值:SUCCEED,FAILED | 是 |
operator | String | 终端需要执行的指令。自定义回复中自定义指令或设备控制指令,如:升高一度(ACT_INCREASE) | 是 |
failure_code | String | 失败类型,当result取值为FAILED时此项必填。取值:INTERNAL_ERROR | 否 |
feedback_text | String | 执行后反馈给用户的语音提示。提示音播放逻辑: 1. 该项出现,则云端会返回feedback_text中的文本 2.若该项出现但取值为空,云端不回复TTS 3.该项不出现,云端返回默认文本(执行成功) | 否 |