Quando um dispositivo envia uma mensagem em formato personalizado para um tópico personalizado que inclui a tag de análise ?_sn=default, o IoT Platform executa um script de análise de mensagens. Esse script transforma os dados personalizados em uma estrutura JSON e encaminha as informações para os sistemas de negócios downstream. Este tópico descreve como enviar um script de análise de mensagens no console do IoT Platform para processar dados em formato personalizado.
Uso e limites
Apenas dispositivos conectados via Message Queuing Telemetry Transport (MQTT) oferecem suporte à análise de mensagens de tópicos personalizados.
O script analisa somente os dados que os dispositivos reportam ao IoT Platform. Ele não processa dados enviados da cloud para os dispositivos.
O script processa o payload de uma mensagem upstream e retorna o payload analisado.
O tópico da mensagem permanece inalterado após a análise. Por exemplo, uma mensagem enviada para
/${productKey}/${deviceName}/user/updatecontinua no mesmo tópico depois de ser analisada.
Tag de análise
Ao configurar o dispositivo, adicione a tag de análise ?_sn=default ao final do tópico personalizado usado para publicar mensagens.
O IoT Platform analisa apenas as mensagens publicadas em tópicos que contêm a tag de análise.
Por exemplo, se uma mensagem enviada para o tópico /${productKey}/${deviceName}/user/update precisar ser convertida para o formato JSON, defina o tópico como /${productKey}/${deviceName}/user/update?_sn=default durante o desenvolvimento da lógica do dispositivo.
Ao criar um tópico personalizado no console do IoT Platform, não adicione a tag de análise à definição do tópico.
Procedimento
Faça login no console do IoT Platform.
Na página Overview, localize a instância que deseja gerenciar e clique em ID ou no nome da instância.
No painel de navegação à esquerda, escolha .
Na página Products, encontre o produto desejado e clique em View.
Na página Product Details, clique em aba Message Parsing.
-
Selecione uma linguagem de script. Em seguida, na seção Edit Script, insira seu script no editor de código.
Linguagens de script suportadas
Função a ser definida
Código de exemplo
JavaScript (ECMAScript 5)
transformPayload()
Python 2.7
transform_payload()
PHP 7.2
transformPayload()
NotaSe o Data Format do produto for Pass-through/Custom, também será necessário escrever um script para analisar mensagens do modelo Thing Specification Language (TSL). Para mais informações, consulte Submit a TSL model message parsing script.
-
Teste o script.
Na seção Input Simulation, defina Simulation Type como Custom e selecione um dispositivo e um tópico.
Insira os dados simulados reportados pelo dispositivo e clique em Execute.
Após confirmar que o script funciona conforme o esperado, clique em Submit para enviar o script ao IoT Platform.
Opcional: Atualize o script de análise de mensagens
Depois de enviar um script de análise de mensagens, retorne à aba Message Parsing para modificar ou excluir o script. Siga as etapas da seção Procedimento para testar e enviar suas alterações. As mudanças entram em vigor em aproximadamente um minuto. O script atualizado se aplica a todos os dispositivos existentes e novos associados ao produto.
Ao modificar e reenviar o script, atualize também a lógica de negócios relacionada ao service de análise de mensagens. Caso contrário, seus serviços podem ser interrompidos.
Se você excluir o script, o service de análise de mensagens para dispositivos associados ao produto ficará indisponível. Isso pode causar interrupções nos seus serviços.
Prossiga com cautela.
Referências
Para obter informações básicas, como o fluxo de análise de mensagens, consulte What is message parsing?.
Para saber como analisar dados do modelo TSL no formato Pass-through/Custom, veja Submit a TSL model message parsing script.
Para detalhes sobre como chamar uma API para enviar mensagens a um dispositivo, acesse APIs for TSL models e APIs for message communication.