Ler mensagens de dispositivo para cloud a partir do ponto final incorporado
Por padrão, as mensagens são roteadas para o ponto de extremidade interno voltado para o serviço (mensagens/eventos) que é compatível com Hubs de Eventos. O Hub IoT expõe o ponto de extremidade interno de mensagens/eventos para que seus serviços de back-end leiam as mensagens do dispositivo para a nuvem recebidas pelo hub. Esse ponto de extremidade é compatível com Hubs de Eventos, o que permite que você use qualquer um dos mecanismos suportados pelo serviço Hubs de Eventos para ler mensagens.
Se você estiver usando o roteamento de mensagens e a rota de fallback estiver habilitada, uma mensagem que não corresponda a uma consulta em nenhuma rota irá para o ponto de extremidade interno. Se você desabilitar essa rota de fallback, uma mensagem que não corresponde a nenhuma consulta será descartada.
Atualmente, esse ponto de extremidade só é exposto usando o protocolo AMQP na porta 5671 e o AMQP sobre WebSockets na porta 443. Um hub IoT expõe as seguintes propriedades para permitir que você controle as mensagens/eventos de ponto de extremidade de mensagens compatíveis com Hubs de Eventos internos.
Property | Description |
---|---|
Contagem de partições | Defina essa propriedade na criação para definir o número de partições para ingestão de eventos de dispositivo para nuvem. |
Tempo de retenção | Esta propriedade especifica por quanto tempo, em dias, o Hub IoT retém mensagens. O padrão é um dia, mas pode ser aumentado para sete dias. |
O Hub IoT permite a retenção de dados no endpoint integrado por um período máximo de sete dias. Você pode definir o tempo de retenção durante a criação do seu hub IoT. O tempo de retenção de dados no Hub IoT depende da camada do hub IoT e do tipo de unidade. Em termos de tamanho, o ponto de extremidade interno pode reter mensagens do tamanho máximo de mensagem até pelo menos 24 horas de cota. Por exemplo, um hub IoT de unidade S1 fornece armazenamento suficiente para reter pelo menos 400.000 mensagens, a 4 KB por mensagem. Se os seus dispositivos estiverem a enviar mensagens mais pequenas, poderão ser retidas por mais tempo (até sete dias), dependendo da quantidade de armazenamento consumida. Garantimos a retenção dos dados pelo tempo de retenção especificado como mínimo. Após o tempo de retenção, as mensagens expiram e ficam inacessíveis. Você pode modificar o tempo de retenção, programaticamente usando as APIs REST do provedor de recursos do Hub IoT ou com o portal do Azure.
O Hub IoT também permite gerenciar grupos de consumidores no ponto de extremidade interno. Você pode ter até 20 grupos de consumidores para cada hub IoT.
Conectar-se ao ponto de extremidade integrado
Algumas integrações de produtos e SDKs de Hubs de Eventos estão cientes do Hub IoT e permitem que você use sua cadeia de conexão de serviço de hub IoT para se conectar ao ponto de extremidade interno.
Ao usar SDKs de Hubs de Eventos ou integrações de produtos que desconhecem o Hub IoT, você precisa de um ponto de extremidade compatível com Hubs de Eventos e um nome compatível com Hubs de Eventos. Você pode recuperar esses valores do portal da seguinte maneira:
Entre no portal do Azure e navegue até seu hub IoT.
Selecione Pontos de extremidade internos no menu de recursos, em Configurações do Hub.
O painel de trabalho Pontos de extremidade internos contém três seções:
- A seção Detalhes do Hub de Eventos contém os seguintes valores: Partições, Nome compatível com o Hub de Eventos, Reter para e Grupos de Consumidores.
- A seção de ponto de extremidade compatível com o Hub de Eventos contém os seguintes valores: Política de acesso compartilhado e Ponto de extremidade compatível com o Hub de Eventos.
- A seção Mensagens da nuvem para o dispositivo contém os seguintes valores: TTL padrão, Tempo de retenção de feedback e Contagem máxima de entrega.
No painel de trabalho, o campo de ponto de extremidade compatível com o Hub de Eventos contém uma cadeia de conexão completa de Hubs de Eventos que se parece com o exemplo a seguir:
Ponto de extremidade=sb://abcd1234namespace.servicebus.windows.net/; SharedAccessKeyName=iothubowner; SharedAccessKey=keykeykeykeykey=; EntityPath=iothub-ehub-abcd-1234-123456
Se o SDK que você está usando exigir outros valores, eles serão:
Nome | Valor |
---|---|
Ponto final | sb://abcd1234namespace.servicebus.windows.net/ |
Hostname (Nome do anfitrião) | abcd1234namespace.servicebus.windows.net |
Espaço de Nomes | abcd1234namespace |
Em seguida, você pode escolher qualquer política de acesso compartilhado na lista suspensa Política de acesso compartilhado, conforme mostrado na captura de tela anterior. Ele mostra apenas as políticas que têm as permissões ServiceConnect para se conectar ao hub de eventos especificado.
Exemplos de SDK
Os SDKs que você pode usar para se conectar ao ponto de extremidade compatível com Hubs de Eventos interno que o Hub IoT expõe incluem:
Conecte-se a outros serviços e produtos
As integrações de produtos que você pode usar com o ponto de extremidade compatível com Hubs de Eventos interno que o Hub IoT expõe incluem:
-
Para obter mais informações, consulte Associações do Hub IoT do Azure para o Azure Functions.
-
Para obter mais informações, consulte Transmitir dados como entrada no Stream Analytics.
-
Para obter mais informações, consulte Adicionar uma fonte de eventos do hub IoT ao seu ambiente do Azure Time Series Insight.
-
Para obter mais informações, consulte o guia do desenvolvedor do Apache Kafka para Hubs de Eventos do Azure.
Próximos passos
Para obter mais informações sobre pontos de extremidade do Hub IoT, consulte Pontos de extremidade do Hub IoT.
Se você quiser rotear suas mensagens do dispositivo para a nuvem para pontos de extremidade personalizados, consulte Usar rotas de mensagens e pontos de extremidade personalizados para mensagens do dispositivo para a nuvem.