Destinos de ação HTTP - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Destinos de ação HTTP

Um destino de ação HTTP é um serviço da Web para o qual o mecanismo de regras pode rotear dados de uma regra de tópico. Um AWS IoT Core recurso descreve o serviço web para AWS IoT. Os recursos de destino podem ser compartilhados por regras diferentes.

Antes de AWS IoT Core poder enviar dados para outro serviço da Web, ele deve confirmar que pode acessar o endpoint do serviço.

Visão geral do

Um destino de ação HTTP se refere a um serviço da Web que oferece suporte a uma URL de confirmação e a uma ou mais coletas de dados URLs. O recurso de destino contém o URL de confirmação do seu serviço web. Ao configurar uma ação HTTP, você especifica a URL real do endpoint que deve receber os dados junto com a URL de confirmação do serviço web. Após a confirmação do destino, a regra do tópico envia o resultado da instrução SQL para o endpoint HTTPS (e não para a URL de confirmação).

O destino de uma ação HTTP pode estar em um dos seguintes estados:

ENABLED

O destino foi confirmado e pode ser usado por uma ação de regra. Um destino deve estar no estado ENABLED para que seja usado em uma regra. Você só pode habilitar destinos com status DISABLED.

DISABLED

O destino foi confirmado mas não pode ser usado por uma ação de regra. Isso é útil se você quiser impedir temporariamente o tráfego para seu endpoint sem precisar passar pelo processo de confirmação novamente. Você só pode desabilitar destinos com status ENABLED.

IN_PROGRESS

A confirmação do destino está em andamento.

ERRO

A confirmação do destino expirou.

Depois que um destino de ação HTTP for confirmado e ativado, ele poderá ser usado com qualquer regra em sua conta.

Gerenciando destinos de ações HTTP

Você pode usar as operações a seguir para gerenciar seus destinos de ação HTTP.

Criação de destinos de ação HTTP

Você cria um destino de ação HTTP chamando a CreateTopicRuleDestination operação ou usando o AWS IoT console.

Depois de criar um destino, AWS IoT envia uma solicitação de confirmação para o URL de confirmação. A solicitação de confirmação tem o seguinte formato:

HTTP POST {confirmationUrl}/?confirmationToken={confirmationToken} Headers: x-amz-rules-engine-message-type: DestinationConfirmation x-amz-rules-engine-destination-arn:"arn:aws:iot:us-east-1:123456789012:ruledestination/http/7a280e37-b9c6-47a2-a751-0703693f46e4" Content-Type: application/json Body: { "arn":"arn:aws:iot:us-east-1:123456789012:ruledestination/http/7a280e37-b9c6-47a2-a751-0703693f46e4", "confirmationToken": "AYADeMXLrPrNY2wqJAKsFNn-…NBJndA", "enableUrl": "https://iot.us-east-1.amazonaws.com/confirmdestination/AYADeMXLrPrNY2wqJAKsFNn-…NBJndA", "messageType": "DestinationConfirmation" }

O conteúdo do pedido de confirmação inclui as seguintes informações:

arn

O Amazon Resource Name (ARN) do destino da ação HTTP a ser confirmado.

confirmationToken

O token de confirmação enviado por AWS IoT Core. O token no exemplo é truncado. Seu token será mais longo. Você precisará desse token para confirmar seu destino em AWS IoT Core.

enableUrl

O URL para o qual você navega para confirmar um destino de regra de tópico.

messageType

O tipo de mensagem.

Confirmando destinos de ações HTTP

Para concluir o processo de confirmação do endpoint, se você estiver usando a AWS CLI, deverá realizar as seguintes etapas após o URL de confirmação receber a solicitação de confirmação.

  1. Confirme se o destino está pronto para receber mensagens

    Para confirmar se o destino da ação HTTP está pronto para receber mensagens de IoT, chame o enableUrl na solicitação de confirmação ou execute a operação da ConfirmTopicRuleDestination API e transmita a confirmationToken partir da solicitação de confirmação.

  2. Defina o status da regra de tópico como ativado

    Depois de confirmar que o destino pode receber mensagens, você deve realizar a operação de API UpdateTopicRuleDestination para definir o status da regra de tópico como ENABLED.

Se você estiver usando o AWS IoT console, confirmationToken copie e cole na caixa de diálogo de confirmação do destino no AWS IoT console. Em seguida, você pode ativar a regra do tópico.

Enviando uma nova solicitação de confirmação

Para acionar uma nova mensagem de confirmação para um destino, faça uma chamada para UpdateTopicRuleDestination e defina o status do destino da regra de tópico como IN_PROGRESS.

Repita o processo de confirmação depois de enviar uma nova solicitação de confirmação.

Desabilitando e excluindo um destino de ação HTTP

Para desativar um destino, chame UpdateTopicRuleDestination e defina o status do destino da regra de tópico como DISABLED. Uma regra de tópico no estado DISABLED pode ser ativada novamente sem a necessidade de enviar uma nova solicitação de confirmação.

Para excluir um destino de ação HTTP, chameDeleteTopicRuleDestination.

Support da Autoridade Certificadora

nota

Não há suporte para certificados autoassinados.

Os endpoints HTTPS em um destino de ação HTTP oferecem suporte a certificados emitidos pela Autoridade de Certificação AWS Privada e pela Lets Encrypt.