Define valores de propriedades para um dispositivo especificado.
Observações de uso
A configuração de propriedades entre o IoT Platform e o dispositivo é assíncrona. Uma resposta de sucesso indica apenas que o IoT Platform enviou a solicitação, e não que o dispositivo a recebeu ou processou. As propriedades do dispositivo são configuradas somente após o SDK do dispositivo responder à solicitação.
Se os dados da Thing Specification Language (TSL) forem do tipo float ou double, os valores dos parâmetros correspondentes aos dados TSL devem conter pelo menos uma casa decimal. Exemplos: 10,0 e 11,1.
Limites de QPS
Esta operação aceita até 500 chamadas por segundo por conta.
Usuários RAM de uma conta Alibaba Cloud compartilham a cota da conta.
Depuração
Parâmetros da solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | SetDeviceProperty |
A operação a ser executada. Defina o valor como SetDeviceProperty. |
| Items | String | Sim | {"Switch":1,"Color":"blue"} |
As propriedades a configurar, no formato JSON. Cada propriedade consiste em uma combinação de identificador e valor no formato chave:valor. Separe múltiplas propriedades com vírgulas (,). Por exemplo, configure as seguintes propriedades para uma lâmpada inteligente:
O formato JSON resultante é: Items={"Switch":1,"Color":"blue"}
Nota Para configurar propriedades do módulo personalizado testFb, especifique Items={"testFb:Switch":1,"testFb:Color":"blue"}. O módulo testFb não é o módulo padrão. |
| IotInstanceId | String | Não | iot-v64***** |
O ID da instância. Visualize o ID na página Overview no console do IoT Platform. Importante
Para mais informações, consulte Visão geral. |
| ProductKey | String | Não | a1BwAGV**** |
A ProductKey do produto ao qual os dispositivos pertencem. Importante Ao especificar um valor para este parâmetro, configure também o parâmetro DeviceName. |
| DeviceName | String | Não | light |
O DeviceName do dispositivo. Importante Ao configurar este parâmetro, especifique também um valor para o parâmetro ProductKey. |
| IotId | String | Não | Q7uOhVRdZRRlDnTLv****00100 |
O ID do dispositivo, um identificador exclusivo emitido pelo IoT Platform. Importante O parâmetro IotId especifica um GUID para o dispositivo. Seu valor equivale à combinação dos parâmetros ProductKey e DeviceName. Ao especificar o IotId, não é necessário informar ProductKey e DeviceName. Se você especificar valores para IotId, ProductKey e DeviceName, o parâmetro IotId terá precedência. |
| Qos | Integer | Não | 1 |
O nível de QoS da mensagem. Valores válidos:
|
Além dos parâmetros específicos desta operação, configure os parâmetros comuns de solicitação ao chamar esta API. Para mais informações, consulte Parâmetros comuns.
Parâmetros de resposta
| Parâmetro | Tipo | Exemplo | Descrição |
| Code | String | iot.system.SystemException |
O código de erro retornado se a chamada falhar. Para mais informações, consulte Códigos de erro. |
| Data | Struct |
Os dados retornados em caso de sucesso. |
|
| MessageId | String | abcabc123 |
O ID da mensagem enviada pelo IoT Platform ao dispositivo. |
| ErrorMessage | String | A system exception occurred. |
A mensagem de erro retornada se a chamada falhar. |
| RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 |
O ID da solicitação. |
| Success | Boolean | true |
Indica se a chamada foi bem-sucedida.
|
Exemplos
Exemplos de solicitações
https://iot.cn-shanghai.aliyuncs.com/?Action=SetDeviceProperty
&ProductKey=a1BwAGV****
&DeviceName=device1
&Items={"Switch":1,"Color":"blue"}
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
<SetDevicePropertyResponse>
<RequestId>57b144cf-09fc-4916-a272-a62902d5b207</RequestId>
<Success>true</Success>
<Data>
<MessageId>abcabc123</MessageId>
</Data>
</SetDevicePropertyResponse>
Formato JSON
{
"RequestId":"57b144cf-09fc-4916-a272-a62902d5b207",
"Success": true,
"Data": {
"MessageId":"abcabc123"
}
}
Códigos de erro
Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.