调用设备服务 (非透传)¶
设备端通过服务调用 Topic 响应设备服务调用请求,云端采用同步或异步的方式推送该消息,设备端可以利用 reply topic 响应该消息。
下行
请求 Topic:
/sys/{productKey}/{deviceKey}/thing/service/{tsl.service.identifier}
响应 Topic:
/sys/{productKey}/{deviceKey}/thing/service/{tsl.service.identifier}_reply
备注
tsl.service.identifier 为模型中定义的服务的标识符。
请求数据格式¶
{
"id": "123",
"version": "1.0",
"params": {
"Power": "on",
"WindState": 2
},
"method": "thing.service.{tsl.service.identifier}"
}
响应数据格式¶
{
"id": "123",
"code": 200,
"data": {
"parameter_1": 1.3,
"parameter_2": 13
}
}
请求参数说明¶
参数 |
类型 |
是否必需 |
描述 |
---|---|---|---|
id |
String |
必需 |
消息 ID 号,保留值。 |
version |
String |
必需 |
协议版本号,目前协议版本 1.0。 |
params |
List |
必需 |
调用设备服务的参数。 |
method |
String |
必需 |
请求方法。 |
Power |
String |
可选 |
要调用的服务的标识符,在此示例中为服务 Power 的标识符。此处设置的值必须与服务的数据类型匹配。例如,当此参数的数据类型在模型中设置为 string 时,此处的值必须为 string。 |
WindState |
integer |
可选 |
要调用的服务的标识符,在此示例中为服务 Windstate 的标识符。如上,此处设置的值必须与服务的数据类型匹配。 |
响应参数说明¶
参数 |
类型 |
描述 |
---|---|---|
id |
String |
消息 ID 号。 |
code |
Integer |
200 或设备端定义的错误码。200 代表请求成功执行。 |
data |
Map(Key 为 String,Value 为 String,Number,Array 或 Object) |
模型中定义的服务输出字段。 |
错误码¶
有关错误码的描述,参见 错误码。