InvokeThingService

更新时间:

InvokeThingService

调用该接口为指定设备设置属性值。

使用说明

定义产品物模型服务时,已设置服务调用方式。因此,调用本接口时,物联网平台会根据请求参数Identifier值,选择服务对应的调用方式。

●同步方式:物联网平台直接使用RRPC同步方式下行推送请求,设备返回RRPC响应消息。 ●异步方式:物联网平台采用异步方式下行推送请求,设备采用异步方式返回结果。

请求参数

名称

类型

是否必选

示例值

描述

Action

String

InvokeThingService

系统规定参数。取值:InvokeThingService。

Args

String

{"param1":1}

要启用服务的入参信息,数据格式为JSON String,例如Args={"param1":1}

若此参数为空时,需传入 Args={}

Identifier

String

Set

服务的标识符。

设备的服务Identifier的查看方式:

ProductKey

String

a1BwAGV****

要调用服务的设备所属的产品ProductKey。

DeviceName

String

light

要调用服务所属设备的DeviceName。

IotId

String

Q7uOhVRdZRRlDnTLv****00100

要调用服务的设备ID。物联网平台为该设备颁发的ID,设备的唯一标识符。

重要

‼️ 注意:调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数

返回数据

名称

类型

示例值

描述

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:调用失败。

示例

请求示例

curl 'https://si-d6e8d812acb848958054.tuyacloud.com:8686/?Action=InvokeThingsService&Args=%7B%22param%22%3A1%7D&Identifier=testService&SignatureNonce=5c5c58171ca14baca82aeaaec49ab5bd&AccessKeyId=xMr9wgwXQLhv5AUa65o03mcD&DeviceName.1=myTestDevice&SignatureMethod=HMAC-SHA1&Timestamp=2024-11-19T10%3A09%3A44Z&ProductKey=k1ymv1DuLfE&Signature=VNHEXCBGqYMx0gtzvTP8oRtkDBE%3D'

正常返回示例

{
  "RequestId": "059C3274-6197-4BEC-95E4-49A076330E57",
  "Success": true
}