Todos os produtos
Search
Central de documentação

IoT Platform:InvokeThingsService

Última atualização: Jun 26, 2026

Chama vários serviços de dispositivo simultaneamente.

Observações de uso

Esta operação aceita apenas chamadas assíncronas.

Ao receber a chamada de serviço, o dispositivo retorna uma resposta ao chamador. Ao configurar o dispositivo, defina a lógica e os parâmetros de resposta. Os formatos de dados desses parâmetros devem obedecer ao protocolo Alink. Exemplo:


{
    "id": "58***89",
    "code": 200,
    "data": {},
    "message": "success",
    "localizedMsg": "localizedMsg"
}
            
Nota
  • O parâmetro id especifica o identificador exclusivo da solicitação. O IoT Platform gera esse ID. O dispositivo pode obtê-lo nos parâmetros da solicitação e retorná-lo.

  • O parâmetro code indica o resultado da chamada de serviço. O valor é um número inteiro.

  • O parâmetro data representa o resultado da chamada de serviço e é retornado ao chamador. Especifique os parâmetros incluídos nesse resultado. Os dados devem estar no formato JSON.

  • Os parâmetros message e localizedMsg são opcionais.

    O Link SDK for C do IoT Platform fornece um exemplo de uso de modelo Thing Specification Language (TSL). Para mais informações, consulte Chamar serviços de dispositivo.

Limites de QPS

Você pode chamar esta API até 10 vezes por segundo por conta.

Nota

Usuários RAM de uma conta Alibaba Cloud compartilham a cota dessa conta.

Depuração

O OpenAPI Explorer calcula automaticamente o valor da assinatura. Recomendamos usar o OpenAPI Explorer para chamar esta operação. A ferramenta também gera dinamicamente códigos de exemplo para diferentes SDKs.

Parâmetros de solicitação

ParâmetroTipoObrigatórioExemploDescrição
ActionStringSimInvokeThingsService

Operação a ser executada. Defina o valor como InvokeThingsService.

ArgsStringSim{"param1":1}

Parâmetro de entrada do serviço. O valor é uma string JSON. Exemplo: Args={"param1": 1}.

Para não configurar um parâmetro de entrada, defina o valor como Args={}.

Importante Se os dados TSL forem do tipo float ou double, os valores correspondentes devem conter pelo menos uma casa decimal. Exemplos: 10,0 e 11,1.
DeviceName.NRepeatListSimdevice1

Nome do dispositivo cujo serviço será chamado. É possível especificar até 100 nomes.

IdentifierStringSimSet

Identificador do serviço.

Para visualizar o identificador do serviço, use um dos métodos a seguir:

  • Faça login no console do IoT Platform. Na aba Define Feature do produto ao qual o dispositivo pertence, visualize o identificador.
  • Chame a operação QueryThingModel e visualize o identificador nas informações TSL retornadas.
Nota Se um serviço chamado testService pertencer a um módulo personalizado chamado testFb, defina este parâmetro como testFb:testService. O módulo personalizado difere do módulo padrão.
ProductKeyStringSima1BwAGV****

ProductKey do produto ao qual o dispositivo pertence.

IotInstanceIdStringNãoiot_instc_pu****_c*-v64********

ID da instância IoT. Visualize o ID da instância na página Overview do console do IoT Platform.

Importante
  • Se sua instância tiver um ID, especifique-o neste parâmetro. Caso contrário, a chamada falhará.
  • Se não houver página Overview ou ID gerado para sua instância, omita este parâmetro.

Para mais informações, consulte Visão geral da instância.

QosIntegerNão1

Nível de qualidade de serviço (QoS) da mensagem. Valores válidos:

  • 0 (padrão): O sistema envia a mensagem no máximo uma vez.
  • 1: O sistema envia a mensagem pelo menos uma vez. Se não houver resposta PUBACK após a publicação de uma mensagem QoS 1, o sistema reenviará a mensagem quando o dispositivo se reconectar ao IoT Platform.

Além dos parâmetros específicos descritos anteriormente, configure também os parâmetros comuns de solicitação. Para mais informações, consulte Parâmetros comuns.

Parâmetros de resposta

ParâmetroTipoExemploDescrição
CodeStringiot.system.SystemException

Código de erro retornado em caso de falha na chamada. Para mais detalhes, consulte Códigos de erro.

ErrorMessageStringA system exception occurred.

Mensagem de erro retornada em caso de falha na chamada.

RequestIdStringE55E50B7-40EE-4B6B-8BBE-D3ED55CCF565

ID da solicitação.

SuccessBooleantrue

Indica se a chamada foi bem-sucedida. Valores válidos:

  • true: Chamada bem-sucedida. Esse resultado não confirma a execução do serviço. Para verificar a execução, consulte os logs do dispositivo.
  • false: Falha na chamada.

Exemplos

Exemplos de solicitações

https://iot.cn-shanghai.aliyuncs.com/?Action=InvokeThingsService
&Args=%7B%20%20%20%20%20%22walk%22%3A%22a~z%22%2C%20%20%20%20%20%22city%22%3A%22shanghai%22%20%7D
&DeviceName.1=1102andriod02
&DeviceName.2=1102android01
&Identifier=TimeReset
&ProductKey=a1hWjHD****
&<Common request parameters>

Exemplos de respostas de sucesso

Formato XML

<InvokeThingsServiceResponse>
  <RequestId>059C3274-6197-4BEC-95E4-49A076330E57</RequestId>
  <Success>true</Success>
</InvokeThingsServiceResponse>

Formato JSON

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

Códigos de erro

Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.