Book Image

Azure IoT Development Cookbook

By : Yatish Patil
Book Image

Azure IoT Development Cookbook

By: Yatish Patil

Overview of this book

Microsoft’s end-to-end IoT platform is the most complete IoT offering, empowering enterprises to build and realize value from IoT solutions efficiently. It is important to develop robust and reliable solutions for your organization to leverage IoT services. This book focuses on how to start building custom solutions using the IoT hub or the preconfigured solution of Azure IoT suite. As a developer, you will be taught how to connect multiple devices to the Azure IoT hub, develop, manage the IoT hub service and integrate the hub with cloud. We will be covering REST APIs along with HTTP, MQTT and AMQP protocols. It also helps you learn Pre-Configured IoT Suite solution. Moving ahead we will be covering topics like:-Process device-to-cloud messages and cloud-to-device messages using .Net-Direct methods and device management-Query Language, Azure IoT SDK for .Net-Creating and managing, Securing IoT hub, IoT Suite and many more. We will be using windows 10 IoT core, Visual Studio, universal Windows platform. At the end, we will take you through IoT analytics and provide a demo of connecting real device with Azure IoT.
Table of Contents (10 chapters)

How to choose between protocols

Azure IoT Hub currently supports three different protocols. All of them work differently and are implemented in IoT solutions depending on the needs of the communication from the device to IoT Hub.

Getting ready

First, let's recap the three protocols, HTTP, MQTT, AMQP. MQTT protocol works on a publish and subscribe architecture. A MQTT client subscribes to a channel on a server, and when a server receives new information for that channel, it pushes it out to that device.

MQTT provides the QoS feature, which defines the priority for the communication between the device and server. These are:

  • 0: deliver the message once
  • 1: deliver the message at least once
  • 2: deliver the message exactly...