Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Dans ce guide de démarrage rapide, vous utilisez une méthode directe pour contrôler un appareil simulé connecté à votre hub IoT. IoT Hub est un service Azure qui vous permet de gérer vos appareils IoT à partir du cloud et d’ingérer des volumes élevés de données de télémétrie d’appareil vers le cloud pour le stockage ou le traitement. Vous pouvez utiliser des méthodes directes pour modifier à distance le comportement des appareils connectés à votre ioT Hub.
Le guide de démarrage rapide utilise deux applications .NET préécrites :
Application d’appareil simulé qui répond aux méthodes directes appelées à partir d’une application de service. Pour recevoir les appels de méthode directe, cette application se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT.
Application de service qui appelle les méthodes directes sur l’appareil simulé. Pour appeler une méthode directe sur un appareil, cette application se connecte au point de terminaison côté service sur votre hub IoT.
Conditions préalables
Un compte Azure avec un abonnement actif. Créez-en un gratuitement.
Les deux exemples d’applications que vous exécutez dans ce guide de démarrage rapide sont écrits à l’aide de C#. Vous avez besoin du Kit de développement logiciel (SDK) .NET 6.0 ou supérieur sur votre ordinateur de développement.
Vous pouvez télécharger le Kit SDK .NET Core pour plusieurs plateformes sur .NET.
Vous pouvez vérifier la version actuelle de C# sur votre machine de développement à l’aide de la commande suivante :
dotnet --versionClonez ou téléchargez le Kit de développement logiciel (SDK) Microsoft Azure IoT pour .NET à partir de GitHub. Les exemples d’applications utilisés par ce guide de démarrage rapide sont inclus dans le Kit de développement logiciel (SDK).
Assurez-vous que le port 8883 est ouvert dans votre pare-feu. L’exemple d’appareil de ce guide de démarrage rapide utilise le protocole MQTT, qui communique sur le port 8883. Ce port pourrait être bloqué dans certains environnements réseau professionnels et scolaires. Pour plus d’informations et des façons de contourner ce problème, consultez la section Se connecter à IoT Hub de Communiquer avec un hub IoT à l’aide du protocole MQTT.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Remarque
Cet article utilise la version la plus récente de l’extension Azure IoT, appelée azure-iot. La version héritée est appelée azure-cli-iot-ext. Vous ne devez avoir qu’une seule version installée à la fois. Vous pouvez utiliser la commande az extension list pour valider les extensions actuellement installées.
Utilisez az extension remove --name azure-cli-iot-ext pour supprimer la version héritée de l’extension.
Utilisez az extension add --name azure-iot pour ajouter la nouvelle version de l’extension.
Pour voir quelles extensions sont actuellement installées, utilisez az extension list.
Dans cette section, vous utilisez Azure CLI pour créer un hub IoT et un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Un hub IoT agit en tant que hub de messages central pour la communication bidirectionnelle entre votre application IoT et les appareils.
Si vous disposez déjà d’un hub IoT dans votre abonnement Azure, vous pouvez ignorer cette section.
Pour créer un hub IoT et un groupe de ressources :
Lancez votre application CLI. Pour utiliser les commandes Common Language Infrastructure (CLI) dans le reste de cet article, copiez la syntaxe de la commande, collez-la dans votre application CLI, modifiez les valeurs des variables et appuyez sur
Enter.- Si vous utilisez Cloud Shell, sélectionnez le bouton Essayer dans les commandes CLI pour lancer Cloud Shell dans une fenêtre de navigateur partagée. Ou vous pouvez ouvrir Cloud Shell dans un onglet de navigateur distinct.
- Si vous utilisez Azure CLI localement, démarrez votre application console CLI et connectez-vous à Azure CLI.
Exécutez la commande az extension add pour installer ou mettre à niveau l’extension azure-iot vers la version actuelle.
az extension add --upgrade --name azure-iotDans votre application CLI, exécutez la commande az group create pour créer un groupe de ressources. La commande suivante crée un groupe de ressources nommé MyResourceGroup à l’emplacement eastus :
Remarque
Si vous le souhaitez, vous pouvez définir un autre emplacement. Pour voir les régions disponibles, exécutez
az account list-locations. Ce démarrage rapide utilise eastus comme indiqué dans l’exemple de commande.az group create --name MyResourceGroup --location eastusExécutez la commande az iot hub create pour créer un hub IoT. La création de votre hub IoT peut prendre plusieurs minutes.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure. Utilisez le nom de votre hub IoT dans le reste de ce guide de démarrage rapide là où vous voyez l’espace réservé.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Récupérer la chaîne de connexion de service
Vous avez également besoin de la chaîne de connexion de service de votre hub IoT pour permettre à l’application de service de se connecter au hub et de récupérer les messages. La chaîne de connexion de service est destinée à votre hub IoT dans son ensemble et diffère de la chaîne de connexion de l’appareil que vous avez récupérée dans la section précédente.
La commande suivante récupère la chaîne de connexion de service pour votre hub IoT :
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Notez la chaîne de connexion de service, qui ressemble à ceci :
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Vous utiliserez cette valeur plus loin dans ce démarrage rapide.
Simuler un appareil
L’application d’appareil simulé se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT, envoie des données de télémétrie simulées et écoute les appels de méthode directe à partir de votre hub. Dans ce démarrage rapide, l’appel de méthode directe à partir du concentrateur indique à l’appareil de modifier la fréquence à laquelle il envoie des données de télémétrie. L’appareil simulé renvoie un accusé de réception à votre hub une fois qu’il a exécuté la méthode directe.
Dans une fenêtre de terminal local, accédez au dossier racine du Kit de développement logiciel (SDK). Ensuite, accédez au dossier iothub\device\samples\getting started\SimulatedDeviceWithCommand .
Exécutez la commande suivante pour installer les packages requis pour l’application d’appareil simulé :
dotnet restoreExécutez la commande suivante pour générer et exécuter l’application d’appareil simulé.
{DeviceConnectionString}: remplacez cet espace réservé par la chaîne de connexion de l’appareil que vous avez précédemment notée.dotnet run -- -c "{DeviceConnectionString}"La capture d’écran suivante présente la sortie lorsque l’application d’appareil simulé envoie des données de télémétrie à votre IoT Hub :
Appeler la méthode directe
L’application de service se connecte à un point de terminaison côté service sur votre IoT Hub. L’application effectue des appels de méthode directe à un appareil via votre IoT Hub et écoute les accusés de réception. Une application de service IoT Hub s’exécute généralement dans le cloud.
Dans une autre fenêtre de terminal local, accédez au dossier racine du Kit de développement logiciel (SDK). Ensuite, accédez au dossier iothub\service\samples\getting started\InvokeDeviceMethod .
Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises pour l’application de service :
dotnet buildDans la fenêtre de terminal local, exécutez les commandes suivantes pour générer et exécuter l’application de service.
{ServiceConnectionString}: remplacez cet espace réservé par la chaîne de connexion de service IoT Hub que vous avez précédemment notée.{DeviceName}: remplacez cet espace réservé par le nom de l’appareil que vous avez inscrit.dotnet run -- -c "{ServiceConnectionString}" -d {DeviceName}La capture d’écran suivante montre les résultats quand l’application effectue un appel de méthode direct à l’appareil et reçoit un accusé de réception :
Après avoir exécuté l’application de service, vous voyez un message dans la fenêtre du terminal local exécutant le dispositif simulé, et le taux auquel il envoie des messages change :
Ce guide de démarrage rapide utilise deux applications Java :
- Application d’appareil simulé qui répond aux méthodes directes appelées à partir d’une application back-end.
- Application de service qui appelle la méthode directe sur l’appareil simulé.
Conditions préalables
Un compte Azure avec un abonnement actif. Créez-en un gratuitement.
Kit de développement Java SE 8. Dans la prise en charge à long terme de Java pour Azure et Azure Stack, sous prise en charge à long terme, sélectionnez Java 8.
Vous pouvez vérifier la version actuelle de Java sur votre ordinateur de développement à l’aide de la commande suivante :
java -version-
Vous pouvez vérifier la version actuelle de Maven sur votre ordinateur de développement à l’aide de la commande suivante :
mvn --version Clonez ou téléchargez les exemples Azure IoT pour Java à partir de GitHub.
Assurez-vous que le port 8883 est ouvert dans votre pare-feu. L’exemple d’appareil de ce guide de démarrage rapide utilise le protocole MQTT, qui communique sur le port 8883. Ce port pourrait être bloqué dans certains environnements réseau professionnels et scolaires. Pour plus d’informations et des façons de contourner ce problème, consultez la section Se connecter à IoT Hub de Communiquer avec un hub IoT à l’aide du protocole MQTT.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Remarque
Cet article utilise la version la plus récente de l’extension Azure IoT, appelée azure-iot. La version héritée est appelée azure-cli-iot-ext. Vous ne devez avoir qu’une seule version installée à la fois. Vous pouvez utiliser la commande az extension list pour valider les extensions actuellement installées.
Utilisez az extension remove --name azure-cli-iot-ext pour supprimer la version héritée de l’extension.
Utilisez az extension add --name azure-iot pour ajouter la nouvelle version de l’extension.
Pour voir quelles extensions sont actuellement installées, utilisez az extension list.
Créer un hub IoT
Dans cette section, vous utilisez Azure CLI pour créer un hub IoT et un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Un hub IoT agit en tant que hub de messages central pour la communication bidirectionnelle entre votre application IoT et les appareils.
Si vous disposez déjà d’un hub IoT dans votre abonnement Azure, vous pouvez ignorer cette section.
Pour créer un hub IoT et un groupe de ressources :
Lancez votre application CLI. Pour utiliser les commandes Common Language Infrastructure (CLI) dans le reste de cet article, copiez la syntaxe de la commande, collez-la dans votre application CLI, modifiez les valeurs des variables et appuyez sur
Enter.- Si vous utilisez Cloud Shell, sélectionnez le bouton Essayer dans les commandes CLI pour lancer Cloud Shell dans une fenêtre de navigateur partagée. Ou vous pouvez ouvrir Cloud Shell dans un onglet de navigateur distinct.
- Si vous utilisez Azure CLI localement, démarrez votre application console CLI et connectez-vous à Azure CLI.
Exécutez la commande az extension add pour installer ou mettre à niveau l’extension azure-iot vers la version actuelle.
az extension add --upgrade --name azure-iotDans votre application CLI, exécutez la commande az group create pour créer un groupe de ressources. La commande suivante crée un groupe de ressources nommé MyResourceGroup à l’emplacement eastus :
Remarque
Si vous le souhaitez, vous pouvez définir un autre emplacement. Pour voir les régions disponibles, exécutez
az account list-locations. Ce démarrage rapide utilise eastus comme indiqué dans l’exemple de commande.az group create --name MyResourceGroup --location eastusExécutez la commande az iot hub create pour créer un hub IoT. La création de votre hub IoT peut prendre plusieurs minutes.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure. Utilisez le nom de votre hub IoT dans le reste de ce guide de démarrage rapide là où vous voyez l’espace réservé.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Inscrire un appareil
Un appareil doit être inscrit dans votre hub IoT pour pouvoir se connecter. Dans cette section, vous utilisez Azure CLI pour créer une identité d’appareil.
Si vous disposez déjà d’un appareil inscrit dans votre hub IoT, vous pouvez ignorer cette section.
Pour créer une identité d’appareil :
Exécutez la commande az iot hub device-identity create dans votre shell CLI. Cette commande crée l'identité de l'appareil.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure.
myDevice. Vous pouvez utiliser ce nom pour l’ID d’appareil tout au long de cet article, ou fournissez un autre nom d’appareil.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}Exécutez la commande az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}La chaîne de connexion en sortie est au format suivant :
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>Enregistrez la chaîne de connexion en lieu sûr.
Remarque
Maintenez votre application CLI ouverte. Vous l’utiliserez dans les étapes ultérieures.
Récupérer la chaîne de connexion de service
Vous avez également besoin d’une chaîne de connexion de service pour permettre à l’application back-end de se connecter à votre hub IoT et de récupérer les messages. La commande suivante récupère la chaîne de connexion de service pour votre hub IoT :
YourIoTHubName : remplacez cet espace réservé dans la commande suivante par le nom que vous avez choisi pour votre hub IoT.
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Notez la chaîne de connexion de service, qui ressemble à ceci :
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Vous utiliserez cette valeur plus loin dans ce démarrage rapide. Cette chaîne de connexion de service est différente de la chaîne de connexion de l’appareil que vous avez notée à l’étape précédente.
Simuler un appareil
L’application d’appareil simulé se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT, envoie des données de télémétrie simulées et écoute les appels de méthode directe à partir de votre hub. Dans ce démarrage rapide, l’appel de méthode directe à partir du concentrateur indique à l’appareil de modifier la fréquence à laquelle il envoie des données de télémétrie. L’appareil simulé renvoie un accusé de réception à votre hub une fois qu’il a exécuté la méthode directe.
Dans une fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Java. Accédez ensuite au dossier iot-hub\Quickstarts\simulated-device-2 .
Ouvrez le fichier src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java dans un éditeur de texte de votre choix.
Remplacez la valeur de la
connStringvariable par la chaîne de connexion de l’appareil que vous avez notée précédemment. Enregistrez ensuite vos modifications dans SimulatedDevice.java.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises et générer l’application d’appareil simulé :
mvn clean packageDans la fenêtre de terminal local, exécutez les commandes suivantes pour exécuter l’application d’appareil simulé :
java -jar target/simulated-device-2-1.0.0-with-deps.jarLa capture d’écran suivante présente la sortie lorsque l’application d’appareil simulé envoie des données de télémétrie à votre IoT Hub :
Appeler la méthode directe
L’application back-end se connecte à un point de terminaison côté service sur votre IoT Hub. L’application effectue des appels de méthode directe à un appareil via votre IoT Hub et écoute les accusés de réception. Une application back-end IoT Hub s’exécute généralement dans le cloud.
Dans une autre fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Java. Accédez ensuite au dossier iot-hub\Quickstarts\back-end-application .
Ouvrez le fichier src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java dans un éditeur de texte de votre choix.
Remplacez la valeur de la
iotHubConnectionStringvariable par la chaîne de connexion de service que vous avez notée précédemment. Enregistrez ensuite vos modifications dans BackEndApplication.java.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises et générer l’application principale :
mvn clean packageDans la fenêtre de terminal local, exécutez les commandes suivantes pour exécuter l’application principale :
java -jar target/back-end-application-1.0.0-with-deps.jarLa capture d’écran suivante montre les résultats quand l’application effectue un appel de méthode direct à l’appareil et reçoit un accusé de réception :
Après avoir exécuté l’application principale, un message s’affiche dans la fenêtre de terminal local exécutant l’appareil simulé, et le taux auquel il envoie des messages change.
Ce guide de démarrage rapide utilise deux applications Node.js :
- Application d’appareil simulé qui répond aux méthodes directes appelées à partir d’une application back-end. Pour recevoir les appels de méthode directe, cette application se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT.
- Une application back-end qui appelle les méthodes directes sur l’appareil simulé. Pour appeler une méthode directe sur un appareil, cette application se connecte à un point de terminaison spécifique au service sur votre hub IoT.
Conditions préalables
Un compte Azure avec un abonnement actif. Créez-en un gratuitement.
-
Vous pouvez vérifier la version actuelle de Node.js sur votre machine de développement à l’aide de la commande suivante :
node --version Clonez ou téléchargez les exemples d'Node.js Azure IoT à partir de GitHub.
Assurez-vous que le port 8883 est ouvert dans votre pare-feu. L’exemple d’appareil de ce guide de démarrage rapide utilise le protocole MQTT, qui communique sur le port 8883. Ce port pourrait être bloqué dans certains environnements réseau professionnels et scolaires. Pour plus d’informations et des façons de contourner ce problème, consultez la section Se connecter à IoT Hub de Communiquer avec un hub IoT à l’aide du protocole MQTT.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Remarque
Cet article utilise la version la plus récente de l’extension Azure IoT, appelée azure-iot. La version héritée est appelée azure-cli-iot-ext. Vous ne devez avoir qu’une seule version installée à la fois. Vous pouvez utiliser la commande az extension list pour valider les extensions actuellement installées.
Utilisez az extension remove --name azure-cli-iot-ext pour supprimer la version héritée de l’extension.
Utilisez az extension add --name azure-iot pour ajouter la nouvelle version de l’extension.
Pour voir quelles extensions sont actuellement installées, utilisez az extension list.
Créer un hub IoT
Dans cette section, vous utilisez Azure CLI pour créer un hub IoT et un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Un hub IoT agit en tant que hub de messages central pour la communication bidirectionnelle entre votre application IoT et les appareils.
Si vous disposez déjà d’un hub IoT dans votre abonnement Azure, vous pouvez ignorer cette section.
Pour créer un hub IoT et un groupe de ressources :
Lancez votre application CLI. Pour utiliser les commandes Common Language Infrastructure (CLI) dans le reste de cet article, copiez la syntaxe de la commande, collez-la dans votre application CLI, modifiez les valeurs des variables et appuyez sur
Enter.- Si vous utilisez Cloud Shell, sélectionnez le bouton Essayer dans les commandes CLI pour lancer Cloud Shell dans une fenêtre de navigateur partagée. Ou vous pouvez ouvrir Cloud Shell dans un onglet de navigateur distinct.
- Si vous utilisez Azure CLI localement, démarrez votre application console CLI et connectez-vous à Azure CLI.
Exécutez la commande az extension add pour installer ou mettre à niveau l’extension azure-iot vers la version actuelle.
az extension add --upgrade --name azure-iotDans votre application CLI, exécutez la commande az group create pour créer un groupe de ressources. La commande suivante crée un groupe de ressources nommé MyResourceGroup à l’emplacement eastus :
Remarque
Si vous le souhaitez, vous pouvez définir un autre emplacement. Pour voir les régions disponibles, exécutez
az account list-locations. Ce démarrage rapide utilise eastus comme indiqué dans l’exemple de commande.az group create --name MyResourceGroup --location eastusExécutez la commande az iot hub create pour créer un hub IoT. La création de votre hub IoT peut prendre plusieurs minutes.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure. Utilisez le nom de votre hub IoT dans le reste de ce guide de démarrage rapide là où vous voyez l’espace réservé.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Inscrire un appareil
Un appareil doit être inscrit dans votre hub IoT pour pouvoir se connecter. Dans cette section, vous utilisez Azure CLI pour créer une identité d’appareil.
Si vous disposez déjà d’un appareil inscrit dans votre hub IoT, vous pouvez ignorer cette section.
Pour créer une identité d’appareil :
Exécutez la commande az iot hub device-identity create dans votre shell CLI. Cette commande crée l'identité de l'appareil.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure.
myDevice. Vous pouvez utiliser ce nom pour l’ID d’appareil tout au long de cet article, ou fournissez un autre nom d’appareil.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}Exécutez la commande az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}La chaîne de connexion en sortie est au format suivant :
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>Enregistrez la chaîne de connexion en lieu sûr.
Remarque
Maintenez votre application CLI ouverte. Vous l’utiliserez dans les étapes ultérieures.
Récupérer la chaîne de connexion de service
Vous avez également besoin de la chaîne de connexion de service de votre hub IoT pour permettre à l’application back-end de se connecter à votre hub IoT et de récupérer les messages. La commande suivante récupère la chaîne de connexion de service pour votre hub IoT :
YourIoTHubName : remplacez cet espace réservé dans la commande suivante par le nom que vous avez choisi pour votre hub IoT.
az iot hub connection-string show \
--policy-name service --hub-name {YourIoTHubName} --output table
Notez la chaîne de connexion de service, qui ressemble à ceci :
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Vous utiliserez cette valeur plus loin dans ce démarrage rapide. Cette chaîne de connexion de service est différente de la chaîne de connexion de l’appareil que vous avez notée à l’étape précédente.
Simuler un appareil
L’application d’appareil simulé se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT, envoie des données de télémétrie simulées et écoute les appels de méthode directe à partir de votre hub. Dans ce démarrage rapide, l’appel de méthode directe à partir du concentrateur indique à l’appareil de modifier la fréquence à laquelle il envoie des données de télémétrie. L’appareil simulé renvoie un accusé de réception à votre hub une fois qu’il a exécuté la méthode directe.
Dans une fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Node.js. Accédez ensuite au dossier iot-hub\Quickstarts\simulated-device-2 .
Ouvrez le fichier SimulatedDevice.js dans un éditeur de texte de votre choix.
Remplacez la valeur de la
connectionStringvariable par la chaîne de connexion de l’appareil que vous avez notée précédemment. Enregistrez ensuite vos modifications dans SimulatedDevice.js.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises et exécuter l’application d’appareil simulé :
npm install node SimulatedDevice.jsLa capture d’écran suivante présente la sortie lorsque l’application d’appareil simulé envoie des données de télémétrie à votre IoT Hub :
Appeler la méthode directe
L’application back-end se connecte à un point de terminaison côté service sur votre hub IoT. L’application effectue des appels de méthode directe à un appareil via votre IoT Hub et écoute les accusés de réception. Une application back-end IoT Hub s’exécute généralement dans le cloud.
Dans une autre fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Node.js. Accédez ensuite au dossier iot-hub\Quickstarts\back-end-application .
Ouvrez le fichier BackEndApplication.js dans un éditeur de texte de votre choix.
Remplacez la valeur de la
connectionStringvariable par la chaîne de connexion de service que vous avez notée précédemment. Enregistrez ensuite vos modifications dans BackEndApplication.js.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises et exécuter l’application principale :
npm install node BackEndApplication.jsLa capture d’écran suivante montre les résultats quand l’application effectue un appel de méthode direct à l’appareil et reçoit un accusé de réception :
Après avoir exécuté l’application principale, un message s’affiche dans la fenêtre de terminal local exécutant l’appareil simulé, et le taux auquel il envoie des messages change.
Ce guide de démarrage rapide utilise deux applications Python :
- Application d’appareil simulé qui répond aux méthodes directes appelées à partir d’une application back-end.
- Une application back-end qui appelle les méthodes directes sur l’appareil simulé.
Conditions préalables
Un compte Azure avec un abonnement actif. Créez-en un gratuitement.
Python 3.7+. Pour obtenir d’autres versions de Python prises en charge, consultez Les fonctionnalités d’appareil Azure IoT.
Clonez ou téléchargez les exemples Python Azure IoT à partir de GitHub.
Assurez-vous que le port 8883 est ouvert dans votre pare-feu. L’exemple d’appareil de ce guide de démarrage rapide utilise le protocole MQTT, qui communique sur le port 8883. Ce port pourrait être bloqué dans certains environnements réseau professionnels et scolaires. Pour plus d’informations et des façons de contourner ce problème, consultez la section Se connecter à IoT Hub de Communiquer avec un hub IoT à l’aide du protocole MQTT.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Remarque
Cet article utilise la version la plus récente de l’extension Azure IoT, appelée azure-iot. La version héritée est appelée azure-cli-iot-ext. Vous ne devez avoir qu’une seule version installée à la fois. Vous pouvez utiliser la commande az extension list pour valider les extensions actuellement installées.
Utilisez az extension remove --name azure-cli-iot-ext pour supprimer la version héritée de l’extension.
Utilisez az extension add --name azure-iot pour ajouter la nouvelle version de l’extension.
Pour voir quelles extensions sont actuellement installées, utilisez az extension list.
Créer un hub IoT
Dans cette section, vous utilisez Azure CLI pour créer un hub IoT et un groupe de ressources. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Un hub IoT agit en tant que hub de messages central pour la communication bidirectionnelle entre votre application IoT et les appareils.
Si vous disposez déjà d’un hub IoT dans votre abonnement Azure, vous pouvez ignorer cette section.
Pour créer un hub IoT et un groupe de ressources :
Lancez votre application CLI. Pour utiliser les commandes Common Language Infrastructure (CLI) dans le reste de cet article, copiez la syntaxe de la commande, collez-la dans votre application CLI, modifiez les valeurs des variables et appuyez sur
Enter.- Si vous utilisez Cloud Shell, sélectionnez le bouton Essayer dans les commandes CLI pour lancer Cloud Shell dans une fenêtre de navigateur partagée. Ou vous pouvez ouvrir Cloud Shell dans un onglet de navigateur distinct.
- Si vous utilisez Azure CLI localement, démarrez votre application console CLI et connectez-vous à Azure CLI.
Exécutez la commande az extension add pour installer ou mettre à niveau l’extension azure-iot vers la version actuelle.
az extension add --upgrade --name azure-iotDans votre application CLI, exécutez la commande az group create pour créer un groupe de ressources. La commande suivante crée un groupe de ressources nommé MyResourceGroup à l’emplacement eastus :
Remarque
Si vous le souhaitez, vous pouvez définir un autre emplacement. Pour voir les régions disponibles, exécutez
az account list-locations. Ce démarrage rapide utilise eastus comme indiqué dans l’exemple de commande.az group create --name MyResourceGroup --location eastusExécutez la commande az iot hub create pour créer un hub IoT. La création de votre hub IoT peut prendre plusieurs minutes.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure. Utilisez le nom de votre hub IoT dans le reste de ce guide de démarrage rapide là où vous voyez l’espace réservé.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Inscrire un appareil
Un appareil doit être inscrit dans votre hub IoT pour pouvoir se connecter. Dans cette section, vous utilisez Azure CLI pour créer une identité d’appareil.
Si vous disposez déjà d’un appareil inscrit dans votre hub IoT, vous pouvez ignorer cette section.
Pour créer une identité d’appareil :
Exécutez la commande az iot hub device-identity create dans votre shell CLI. Cette commande crée l'identité de l'appareil.
YourIoTHubName. Remplacez cet espace réservé et les accolades qui l’entourent dans la commande suivante, en utilisant le nom que vous avez choisi pour votre hub IoT. Le nom du hub IoT doit être globalement unique dans Azure.
myDevice. Vous pouvez utiliser ce nom pour l’ID d’appareil tout au long de cet article, ou fournissez un autre nom d’appareil.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}Exécutez la commande az iot hub device-identity connection-string show.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}La chaîne de connexion en sortie est au format suivant :
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>Enregistrez la chaîne de connexion en lieu sûr.
Remarque
Maintenez votre application CLI ouverte. Vous l’utiliserez dans les étapes ultérieures.
Récupérer la chaîne de connexion de service
Vous avez également besoin d’une chaîne de connexion de service pour permettre à l’application back-end de se connecter à votre hub IoT et de récupérer les messages. La commande suivante récupère la chaîne de connexion de service pour votre hub IoT :
YourIoTHubName : remplacez cet espace réservé dans la commande suivante par le nom que vous choisissez pour votre hub IoT.
az iot hub connection-string show \
--policy-name service \
--hub-name {YourIoTHubName} \
--output table
Notez la chaîne de connexion de service, qui ressemble à ceci :
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Vous utiliserez cette valeur plus loin dans ce démarrage rapide. Cette chaîne de connexion de service est différente de la chaîne de connexion de l’appareil que vous avez notée à l’étape précédente.
Simuler un appareil
L’application d’appareil simulé se connecte à un point de terminaison spécifique à l’appareil sur votre hub IoT, envoie des données de télémétrie simulées et écoute les appels de méthode directe à partir de votre hub. Dans ce démarrage rapide, l’appel de méthode directe à partir du concentrateur indique à l’appareil de modifier la fréquence à laquelle il envoie des données de télémétrie. L’appareil simulé renvoie un accusé de réception à votre hub une fois qu’il a exécuté la méthode directe.
Dans une fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Python. Accédez ensuite au dossier iot-hub\Quickstarts\simulated-device-2 .
Ouvrez le fichier SimulatedDeviceSync.py dans un éditeur de texte de votre choix.
Remplacez la valeur de la
CONNECTION_STRINGvariable par la chaîne de connexion de l’appareil que vous avez notée précédemment. Enregistrez ensuite vos modifications dans SimulatedDeviceSync.py.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises pour l’application d’appareil simulé :
pip install azure-iot-deviceDans la fenêtre de terminal local, exécutez les commandes suivantes pour exécuter l’application d’appareil simulé :
python SimulatedDeviceSync.pyLa capture d’écran suivante présente la sortie lorsque l’application d’appareil simulé envoie des données de télémétrie à votre IoT Hub :
Appeler la méthode directe
L’application back-end se connecte à un point de terminaison côté service sur votre IoT Hub. L’application effectue des appels de méthode directe à un appareil via votre IoT Hub et écoute les accusés de réception. Une application back-end IoT Hub s’exécute généralement dans le cloud.
Dans une autre fenêtre de terminal local, accédez au dossier racine de l’exemple de projet Python. Accédez ensuite au dossier iot-hub\Quickstarts\back-end-application .
Ouvrez le fichier BackEndApplication.py dans un éditeur de texte de votre choix.
Remplacez la valeur de la
CONNECTION_STRINGvariable par la chaîne de connexion de service que vous avez notée précédemment. Enregistrez ensuite vos modifications dans BackEndApplication.py.Dans la fenêtre de terminal local, exécutez les commandes suivantes pour installer les bibliothèques requises pour l’application d’appareil simulé :
pip install azure-iot-hubDans la fenêtre de terminal local, exécutez les commandes suivantes pour exécuter l’application principale :
python BackEndApplication.pyLa capture d’écran suivante montre les résultats quand l’application effectue un appel de méthode direct à l’appareil et reçoit un accusé de réception :
Après avoir exécuté l’application back-end, un message s’affiche dans la fenêtre de console exécutant l’appareil simulé, et le taux auquel il envoie des messages change.
Nettoyer les ressources
Si vous passez à l’article recommandé suivant, vous pouvez conserver les ressources que vous avez déjà créées et les réutiliser.
Sinon, vous pouvez supprimer les ressources Azure créées dans cet article pour éviter les frais.
Important
La suppression d’un groupe de ressources est irréversible. Le groupe de ressources et toutes les ressources qu’il contient sont supprimés définitivement. Veillez à ne pas supprimer accidentellement les mauvaises ressources ou le mauvais groupe de ressources. Si vous avez créé le hub IoT à l’intérieur d’un groupe de ressources existant qui contient les ressources que vous souhaitez conserver, supprimez uniquement la ressource IoT Hub elle-même au lieu de supprimer le groupe de ressources.
Pour supprimer un groupe de ressources par nom :
Connectez-vous au portail Azure, puis sélectionnez Groupes de ressources.
Dans la zone de texte Filtrer pour n'importe quel champ, tapez le nom du groupe de ressources contenant votre hub IoT.
Dans la liste des résultats, sélectionnez le groupe de ressources contenant votre hub IoT.
Dans le volet de travail du groupe de ressources, sélectionnez Supprimer le groupe de ressources dans la barre de commandes.
Vous êtes invité à confirmer la suppression du groupe de ressources. Saisissez à nouveau le nom de votre groupe de ressources pour confirmer, puis sélectionnez Supprimer. Après quelques instants, le groupe de ressources et toutes les ressources qu’il contient sont supprimés.
Étapes suivantes
Dans ce guide de démarrage rapide, vous avez appelé une méthode directe sur un appareil à partir d’une application de service et répondu à l’appel de méthode directe dans une application d’appareil simulé.
Pour savoir comment router des messages appareil-à-cloud vers différentes destinations dans le cloud, passez au tutoriel suivant.