Desenvolver sem utilizar um SDK de Hub IoT do Azure

Este tópico fornece informações e ligações úteis para programadores que pretendem desenvolver aplicações de dispositivos ou back-end sem utilizar os SDKs do Azure IoT.

A Microsoft aconselha vivamente a utilização de um SDK do Azure IoT. Os SDKs de dispositivos e serviços IoT do Azure são publicados em muitas plataformas populares. Os SDKs fornecem uma camada de conveniência que processa grande parte da complexidade do protocolo de comunicação subjacente, incluindo ligação e restabelecimento de ligação do dispositivo e política de repetição. Os SDKs são atualizados regularmente para fornecer as funcionalidades mais recentes expostas por Hub IoT, bem como atualizações de segurança. A utilização dos SDKs pode ajudá-lo a reduzir o tempo e o tempo de desenvolvimento dedicados à manutenção de código. Para saber mais sobre os SDKs do Azure IoT, veja SDKs de Dispositivos e Serviços do Azure IoT. Para obter mais detalhes sobre as vantagens de utilizar um SDK do Azure IoT, veja Os Benefícios de utilizar os SDKs do Azure IoT e as armadilhas para evitar se não publicar no blogue.

Embora Hub IoT suporte AMQP, AMQP através de WebSockets, HTTPS, MQTT e MQTT através de WebSockets para comunicação com dispositivos, recomendamos que utilize MQTT se o seu dispositivo o suportar.

Pré-requisitos de desenvolvimento

Antes de começar a desenvolver, deve ter um conhecimento aprofundado sobre Hub IoT e as funcionalidades que pretende que o seu dispositivo ou aplicação de back-end implementem. Eis uma lista muito abreviada de tópicos com os quais deve estar familiarizado:

  • Certifique-se de que compreende os pontos finais expostos pelo Hub IoT e os protocolos suportados em cada ponto final. Para saber mais, veja Hub IoT pontos finais.

  • Quando estiver envolvida uma escolha de protocolo para aplicações de dispositivos, recomendamos vivamente que utilize MQTT. No entanto, antes de escolher um protocolo, certifique-se de que compreende as limitações impostas por cada um. Para saber mais, consulte Escolher um protocolo de comunicação.

  • Para compreender a autenticação com Hub IoT, veja Controlar o acesso ao Hub IoT.

Importante

A seguinte funcionalidade para dispositivos que utilizam autenticação de autoridade de certificação X.509 (AC) ainda não está disponível em geral e o modo de pré-visualização tem de estar ativado:

  • HTTPS, MQTT através de WebSockets e AMQP através de protocolos WebSockets.
  • Carregamentos de ficheiros (todos os protocolos).

Estas funcionalidades estão geralmente disponíveis em dispositivos que utilizam a autenticação de thumbprint X.509. Para saber mais sobre a autenticação X.509 com Hub IoT, consulte Certificados X.509 suportados.

Ajuda em protocolos diferentes

Para obter ajuda com os seguintes protocolos sem um SDK do Azure IoT:

  • Aplicações de dispositivos ou back-end no AMQP, veja Suporte amQP.

  • Aplicações de dispositivos no MQTT, veja Suporte MQTT. A maior parte deste tópico trata diretamente a utilização do protocolo MQTT. Também contém informações sobre a utilização do repositório de Exemplo do MQTT IoT. Este repositório contém exemplos C que utilizam a biblioteca eclipse Mosquitto para enviar mensagens para Hub IoT.

  • Aplicações de dispositivos ou back-end em HTTPS, consulte as APIs REST Hub IoT do Azure. Tenha em atenção, conforme indicado nos pré-requisitos de desenvolvimento, que não pode utilizar a autenticação da autoridade de certificação X.509 (AC) com HTTPS.

Para dispositivos, recomendamos vivamente a utilização do MQTT se o seu dispositivo o suportar.

Passos seguintes