更新时间:2024-09-14 07:22:18
调用该接口在单个设备上调用指定服务。
定义产品物模型服务时,已设置服务调用方式。因此,调用本接口时,物联网平台会根据请求参数Identifier值,选择服务对应的调用方式。
重要 若创建产品时,设置物模型校验类型为免校验,调用本接口会默认为异步调用方式。
调用服务到设备端后,设备会返回调用结果给接口的调用方。设备端响应逻辑及响应结果,需您在设备端完成开发。设备返回结果的数据格式必须符合标准的Alink协议,Alink JSON格式如下:
{
"id": "58***89",
"code": 200,
"data": {},
"message": "success",
"localizedMsg": "localizedMsg"
}
说明
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | InvokeThingService | 系统规定参数。取值:InvokeThingService。 |
Args | String | 是 | {“param1”:1} | 要启用服务的入参信息,数据格式为JSON String,例如Args={“param1”:1} 。若此参数为空时,需传入 Args={} 。 重要 物模型功能定义数据类型为float或double时,对应参数值(即使值为整数)至少携带一位小数位。例如10.0、11.1。 |
Identifier | String | 是 | Set | 服务的标识符。设备的服务Identifier的查看方式: + 登录物联网平台控制台,在设备所属产品的功能定义 中查看。 + 调用接口QueryThingModel,从返回的物模型信息中查看。 |
IotInstanceId | String | 否 | iot_instc_pu****_c*-v64********* | 实例ID。您可在物联网平台控制台的实例概览 页面,查看当前实例的ID。重要 + 若有ID值,必须传入该ID值,否则调用会失败。 + 若无实例概览 页面或ID值,则无需传入。实例的更多信息,请参见实例概述。 |
ProductKey | String | 否 | a1BwAGV**** | 要调用服务的设备所属的产品ProductKey。** 重要** 如果传入该参数,需同时传入** DeviceName**。 |
DeviceName | String | 否 | light | 要调用服务所属设备的DeviceName。** 重要** 如果传入该参数,需同时传入** ProductKey**。 |
IotId | String | 否 | Q7uOhVRdZRRlDnTLv****00100 | 要调用服务的设备ID。物联网平台为该设备颁发的ID,设备的唯一标识符。重要 IotId作为设备唯一标识符,和ProductKey与DeviceName组合是一一对应的关系。如果传入该参数,则无需传入ProductKey和DeviceName。如果您同时传入IotId和ProductKey与DeviceName组合,则以IotId为准。 |
Qos | Integer | 否 | 1 | 指定调用本接口时,消息的发送方式。取值: + 0(默认):最多发送一次。 + 1:最少发送一次。如果QoS=1消息未接收到PUBACK消息,会在设备重连时,重新推送给设备。 |
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | String | iot.system.SystemException | 调用失败时,返回的错误码。更多信息,请参见错误码。 |
Data | Struct | 调用成功时,返回的数据。 | |
MessageId | String | abcabcabc1234**** | 云端向设备下发服务调用的消息ID。 |
Result | String | {“param1”:1} | 同步调用服务,返回的调用结果。异步调用服务,不返回此参数。 |
ErrorMessage | String | 系统异常 | 调用失败时,返回的出错信息。 |
RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | 涂鸦云为该请求生成的唯一标识符。 |
Success | Boolean | true | 是否调用成功。 + ** true**:调用成功,但不代表调用的服务执行成功。执行情况,以设备端日志为准。 + ** false**:调用失败。 |
请求示例
https://iot.****.tuya.com/?Action=InvokeThingService
&ProductKey=a1BwAGV****
&DeviceName=device1
&Identifier=service1
&Args=%7B%22param1%22%3A1%7D
&<公共请求参数>
正常返回示例
JSON
格式
{
"Data": {
"Result": "{\"code\":200,\"data\":{},\"id\":\"100686\",\"message\":\"success\",\"version\":\"1.0\"}",
"MessageId": "abcabc123"
},
"RequestId": "A44C818E-FA7F-4765-B1E7-01D14AE01C6A",
"Success": true
}