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.