# 设备控制器

# 协议类型

消息类型 名称 必须实现
directive execute
event execute_result

# context

"unios_context": {
  ....
  "device_controller": {
    "version": "1.0"
  },
  ...
}
1
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
参数 类型 说明 必填
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
参数 类型 说明 必填
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.该项不出现,云端返回默认文本(执行成功)