Snelstart: Een apparaat beheren dat is verbonden met een IoT-hub

In deze snelstartgids gebruikt u een directe methode om een gesimuleerd apparaat te beheren dat met uw IoT-hub is verbonden. IoT Hub is een Azure-service waarmee u uw IoT-apparaten vanuit de cloud kunt beheren en grote hoeveelheden apparaat-telemetrie kunt opnemen in de cloud voor opslag of verwerking. U kunt directe methoden gebruiken om het gedrag van apparaten die zijn verbonden met uw IoT-hub op afstand te wijzigen.

In de snelstartgids worden twee vooraf geschreven .NET-toepassingen gebruikt:

  • Een toepassing voor een gesimuleerd apparaat dat reageert op de directe methoden die worden aangeroepen vanuit een servicetoepassing. Om de aanroepen van de directe methoden te kunnen ontvangen, maakt deze toepassing verbinding met een apparaatspecifiek eindpunt op uw IoT-hub.

  • Een servicetoepassing die de directe methoden op het gesimuleerde apparaat aanroept. Als u een directe methode op een apparaat wilt aanroepen, maakt u met deze toepassing verbinding met een eindpunt aan de servicezijde van uw IoT-hub.

Vereisten

  • Een Azure-account met een actief abonnement. Maak er gratis een.

  • De twee voorbeeldtoepassingen die u uitvoert in deze snelstartgids zijn geschreven in C#. .NET Core SDK 3.1 of hoger moet zijn geïnstalleerd op de ontwikkelcomputer.

    U kunt de .NET Core SDK voor meerdere platforms downloaden van .NET.

    Gebruik de volgende opdracht om de huidige versie van C# op uw ontwikkelcomputer te controleren:

    dotnet --version
    
  • Als u dit nog niet hebt gedaan, downloadt u de Azure IoT C#-voorbeelden van https://github.com/Azure-Samples/azure-iot-samples-csharp/archive/main.zip en pakt u het ZIP-archief uit.

  • Zorg ervoor dat de poort 8883 is geopend in de firewall. In het apparaatvoorbeeld in deze quickstart wordt het MQTT-protocol gebruikt, dat communiceert via poort 8883. Deze poort is in sommige netwerkomgevingen van bedrijven en onderwijsinstellingen mogelijk geblokkeerd. Zie Verbinding maken met IoT Hub (MQTT) voor meer informatie en manieren om dit probleem te omzeilen.

  • Gebruik de bash-omgeving in Azure Cloud shell.

    Cloud Shell starten in een nieuw venster

  • Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren.

    • Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij de Azure CLI voor aanvullende aanmeldingsopties.

    • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.

    • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.

Notitie

In dit artikel wordt gebruikgemaakt van de nieuwste versie van de Azure IoT-extensie, azure-iot. De verouderde versie heet azure-cli-iot-ext. Zorg ervoor dat er maar één versie is geïnstalleerd. U kunt de opdracht az extension list gebruiken om de momenteel geïnstalleerde extensies te valideren.

Gebruik az extension remove --name azure-cli-iot-ext om de verouderde versie van de extensie te verwijderen.

Gebruik az extension add --name azure-iot om de nieuwe versie van de extensie toe te voegen.

Gebruik az extension list om te bekijken welke installaties u hebt geïnstalleerd.

Een IoT Hub maken

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

In deze sectie wordt beschreven hoe u een IoT-hub maakt met behulp van de Azure-portal.

  1. Meld u aan bij Azure Portal.

  2. Selecteer in de Azure-startpagina de knop + Een resource maken en voer vervolgens IoT Hub in het veld Marketplace doorzoeken in.

  3. Selecteer IoT Hub in de zoekresultaten en selecteer vervolgens Maken.

  4. Vul de velden in het tabblad Basis als volgt in:

    • Abonnement: Selecteer het abonnement dat u voor de hub wilt gebruiken.

    • Resourcegroep: Selecteer een Resourcegroep of maak een nieuwe. Als u een nieuwe wilt maken, selecteert u Nieuwe maken en vult u de gewenste naam in. Als u een bestaande resourcegroep wilt gebruiken, selecteert u die resourcegroep. Zie Azure Resource Manager-resourcegroepen beheren voor meer informatie.

    • Regio: Selecteer de regio waarin u wilt dat uw hub zich bevindt. Selecteer de locatie die het dichtst bij u in de buurt is. Sommige functies, bijvoorbeeld IoT Hub-apparaatstreams zijn alleen beschikbaar in specifieke regio's. Voor deze beperkte functies moet u een van de ondersteunde regio's selecteren.

    • Naam van de IoT Hub: Voer een naam in voor uw hub. Deze naam moet globaal uniek zijn, met een lengte tussen 3 en 50 alfanumerieke tekens. De naam kan ook het streepje ( '-' ) bevatten.

    Belangrijk

    Omdat de IoT-hub openbaar kan worden gevonden als DNS-eindpunt, moet u ervoor zorgen dat u geen gevoelige of persoonsgegevens invoert wanneer u deze een naam geeft.

    Maak een hub in de Azure Portal.

  5. Selecteer Volgende: Netwerken om verder te gaan met het maken van uw hub.

    Kies de eindpunten die apparaten kunnen gebruiken om verbinding te maken met uw IoT Hub. U kunt de standaardinstelling Openbaar eindpunt (alle netwerken) selecteren, of kiezen voor Openbaar eindpunt (geselecteerde IP-bereiken) of Privé-eindpunt. Accepteer voor dit voorbeeld de standaardinstellingen.

    Kies de eindpunten die verbinding kunnen maken.

  6. Selecteer Volgende: Beheer om verder te gaan met het maken van uw hub.

    Stel de grootte en schaal voor een nieuwe hub in met behulp van Azure Portal.

    U kunt de standaardinstellingen accepteren. Indien gewenst kunt u de volgende velden bewerken:

    • Prijs- en schaalniveau: De geselecteerde laag. U kunt kiezen uit diverse lagen, afhankelijk van hoeveel functies u wilt en hoeveel berichten u per dag wilt verzenden. De gratis optie is bedoeld voor testen en evalueren. Hiermee kunnen 500 apparaten met de hub worden verbonden en maximaal 8000 berichten per dag verzonden. Met de gratis optie kunt u voor elk Azure-abonnement één IoT-hub maken.

      Als u werkt met een quickstart voor IoT Hub-apparaatstreams, selecteert u de gratis laag.

    • IoT Hub-eenheden: het aantal toegestane berichten per eenheid is afhankelijk van de prijscategorie van uw hub. Als u bijvoorbeeld wilt dat de hub de invoer van 700.000 berichten moet kunnen ondersteunen, dan kiest u twee S1-laageenheden. Zie De juiste laag kiezen voor uw IoT-hub voor informatie over andere opties.

    • Defender voor IoT: Schakel dit in om een extra laag beveiligingsbescherming toe te voegen aan IoT en uw apparaten. Deze optie is niet beschikbaar voor hubs in de gratis laag. Zie Microsoft Defender for IoTvoor meer informatie over deze functie.

    • Geavanceerde instellingen > Partities voor apparaat-naar-cloud: met deze eigenschap worden de apparaat-naar-cloud-berichten gerelateerd met het aantal gelijktijdige lezers van de berichten. De meeste hubs hebben maar vier partities nodig.

  7. Selecteer Volgende: Tags om naar het volgende scherm te gaan.

    Tags zijn naam/waarde-paren. U kunt dezelfde tag aan meerdere resources en resourcegroepen toevoegen om resources te categoriseren en facturering te consolideren. In dit document voegt u geen tags toe. Raadpleeg Tags gebruiken om uw Azure-resources te organiseren voor meer informatie.

    Wijs tags toe voor de hub met behulp van Azure Portal.

  8. Selecteer Volgende: Beoordelen + maken om uw keuzes te beoordelen. U ziet iets soortgelijks op dit scherm, maar met de waarden die u hebt geselecteerd toen u de hub maakte.

    Lees de informatie voor het maken van de nieuwe hub.

  9. Selecteer Maken om de implementatie van de nieuwe hub te starten. De implementatie wordt een paar minuten uitgevoerd terwijl de hub wordt gemaakt. Zodra de implementatie is voltooid, selecteert u Ga naar resource om de nieuwe hub te openen.

Een apparaat registreren

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

Een apparaat moet zijn geregistreerd bij uw IoT-hub voordat het verbinding kan maken. In deze snelstart gebruikt u Azure Cloud Shell om een gesimuleerd apparaat te registreren.

  1. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaat-id te maken.

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    MyDotnetDevice: dit is de naam van het apparaat dat u gaat registreren. Het is raadzaam om MyDotnetDevice te gebruiken zoals wordt weergegeven. Als u een andere naam voor het apparaat kiest, moet u deze naam mogelijk ook in de rest van dit artikel gebruiken, en moet u de apparaatnaam bijwerken in de voorbeeldtoepassingen voordat u ze uitvoert.

    az iot hub device-identity create \
      --hub-name {YourIoTHubName} --device-id MyDotnetDevice
    
  2. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaatverbindingsreeks op te halen voor het apparaat dat u zojuist hebt geregistreerd:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-identity connection-string show \
      --hub-name {YourIoTHubName} \
      --device-id MyDotnetDevice \
      --output table
    

    Noteer de apparaatverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyNodeDevice;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids.

De verbindingsreeks voor de service ophalen

U hebt ook de serviceverbindingsreeks voor de IoT-hub nodig, zodat de servicetoepassing verbinding kan maken met de hub en de berichten kan ophalen. Met de volgende opdracht haalt u de serviceverbindingsreeks voor uw IoT-hub op:

az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table

Noteer de serviceverbindingsreeks. Deze ziet er ongeveer als volgt uit:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

U gebruikt deze waarde verderop in de snelstartgids. De verbindingsreeks voor de service is anders dan de verbindingsreeks voor het apparaat die u in de vorige stap hebt genoteerd.

Luisteren naar aanroepen van directe methoden

De toepassing voor het gesimuleerde apparaat maakt verbinding met een apparaatspecifiek eindpunt op uw IoT-hub, verstuurt gesimuleerde telemetrie en luistert naar aanroepen van directe methoden vanuit de hub. In deze snelstartgids geeft de aanroep van de directe methode vanuit de hub het apparaat opdracht om het interval voor het verzenden van telemetrie te wijzigen. Het gesimuleerde apparaat stuurt een bevestiging terug naar de hub nadat de directe methode is uitgevoerd.

  1. Navigeer in een lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in C#. Navigeer vervolgens naar de map iot-hub\Quickstarts\SimulatedDeviceWithCommand.

  2. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste pakketten te installeren voor de toepassing voor het gesimuleerde apparaat:

    dotnet restore
    
  3. Voer in het lokale terminalvenster de volgende opdracht uit om de toepassing voor het gesimuleerde apparaat te compileren. Vervang hierbij {DeviceConnectionString} door de apparaatverbindingsreeks die u eerder hebt genoteerd:

    dotnet run -- {DeviceConnectionString}
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing voor het gesimuleerde apparaat telemetriegegevens naar uw IoT-hub verzendt:

    Het gesimuleerde apparaat uitvoeren

De directe methode aanroepen

De servicetoepassing maakt verbinding met een eindpunt aan de servicezijde van de IoT-hub. De toepassing verzendt via uw IoT-hub aanroepen naar directe methoden op een apparaat en luistert naar bevestigingen. Een servicetoepassing van IoT Hub wordt meestal in de cloud uitgevoerd.

  1. Navigeer in een ander lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in C#. Navigeer vervolgens naar de map iot-hub\Quickstarts\InvokeDeviceMethod.

  2. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken voor de servicetoepassing te installeren:

    dotnet restore
    
  3. Voer in het lokale terminalvenster de volgende opdracht uit om de toepassing voor het apparaat te compileren. Vervang hierbij {ServiceConnectionString} door de serviceverbindingsreeks die u eerder hebt genoteerd:

    dotnet run -- {ServiceConnectionString}
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing een directe methode op het apparaat aanroept en een bevestiging ontvangt:

    De servicetoepassing uitvoeren

    Nadat u de servicetoepassing hebt uitgevoerd, ziet u een bericht in het consolevenster dat het gesimuleerde apparaat wordt uitgevoerd, en dat het interval voor het verzenden van berichten is gewijzigd:

    Wijziging in gesimuleerde client

In deze quickstart worden twee Java-toepassingen gebruikt: een gesimuleerde apparaattoepassing die reageert op directe methoden die worden aangeroepen vanuit een back-endtoepassing en een servicetoepassing die de directe methode aanroept op het gesimuleerde apparaat.

Vereisten

  • Een Azure-account met een actief abonnement. Maak er gratis een.

  • Java SE Development Kit 8. In Java-langetermijnondersteuning voor Azure en Azure Stack onder Langetermijnondersteuning selecteert u Java 8.

    Gebruik de volgende opdracht om de huidige versie van Java op uw ontwikkelcomputer te controleren:

    java -version
    
  • Apache Maven 3.

    Gebruik de volgende opdracht om de huidige versie van Maven op uw ontwikkelcomputer te controleren:

    mvn --version
    
  • Een voorbeeld van een Java-project.

  • Poort 8883 is geopend in de firewall. In het apparaatvoorbeeld in deze quickstart wordt het MQTT-protocol gebruikt, dat communiceert via poort 8883. Deze poort is in sommige netwerkomgevingen van bedrijven en onderwijsinstellingen mogelijk geblokkeerd. Zie Verbinding maken met IoT Hub (MQTT) voor meer informatie en manieren om dit probleem te omzeilen.

  • Gebruik de bash-omgeving in Azure Cloud shell.

    Cloud Shell starten in een nieuw venster

  • Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren.

    • Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij de Azure CLI voor aanvullende aanmeldingsopties.

    • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.

    • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.

Notitie

In dit artikel wordt gebruikgemaakt van de nieuwste versie van de Azure IoT-extensie, azure-iot. De verouderde versie heet azure-cli-iot-ext. Zorg ervoor dat er maar één versie is geïnstalleerd. U kunt de opdracht az extension list gebruiken om de momenteel geïnstalleerde extensies te valideren.

Gebruik az extension remove --name azure-cli-iot-ext om de verouderde versie van de extensie te verwijderen.

Gebruik az extension add --name azure-iot om de nieuwe versie van de extensie toe te voegen.

Gebruik az extension list om te bekijken welke installaties u hebt geïnstalleerd.

Een IoT Hub maken

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

In deze sectie wordt beschreven hoe u een IoT-hub maakt met behulp van de Azure-portal.

  1. Meld u aan bij Azure Portal.

  2. Selecteer in de Azure-startpagina de knop + Een resource maken en voer vervolgens IoT Hub in het veld Marketplace doorzoeken in.

  3. Selecteer IoT Hub in de zoekresultaten en selecteer vervolgens Maken.

  4. Vul de velden in het tabblad Basis als volgt in:

    • Abonnement: Selecteer het abonnement dat u voor de hub wilt gebruiken.

    • Resourcegroep: Selecteer een Resourcegroep of maak een nieuwe. Als u een nieuwe wilt maken, selecteert u Nieuwe maken en vult u de gewenste naam in. Als u een bestaande resourcegroep wilt gebruiken, selecteert u die resourcegroep. Zie Azure Resource Manager-resourcegroepen beheren voor meer informatie.

    • Regio: Selecteer de regio waarin u wilt dat uw hub zich bevindt. Selecteer de locatie die het dichtst bij u in de buurt is. Sommige functies, bijvoorbeeld IoT Hub-apparaatstreams zijn alleen beschikbaar in specifieke regio's. Voor deze beperkte functies moet u een van de ondersteunde regio's selecteren.

    • Naam van de IoT Hub: Voer een naam in voor uw hub. Deze naam moet globaal uniek zijn, met een lengte tussen 3 en 50 alfanumerieke tekens. De naam kan ook het streepje ( '-' ) bevatten.

    Belangrijk

    Omdat de IoT-hub openbaar kan worden gevonden als DNS-eindpunt, moet u ervoor zorgen dat u geen gevoelige of persoonsgegevens invoert wanneer u deze een naam geeft.

    Maak een hub in de Azure Portal.

  5. Selecteer Volgende: Netwerken om verder te gaan met het maken van uw hub.

    Kies de eindpunten die apparaten kunnen gebruiken om verbinding te maken met uw IoT Hub. U kunt de standaardinstelling Openbaar eindpunt (alle netwerken) selecteren, of kiezen voor Openbaar eindpunt (geselecteerde IP-bereiken) of Privé-eindpunt. Accepteer voor dit voorbeeld de standaardinstellingen.

    Kies de eindpunten die verbinding kunnen maken.

  6. Selecteer Volgende: Beheer om verder te gaan met het maken van uw hub.

    Stel de grootte en schaal voor een nieuwe hub in met behulp van Azure Portal.

    U kunt de standaardinstellingen accepteren. Indien gewenst kunt u de volgende velden bewerken:

    • Prijs- en schaalniveau: De geselecteerde laag. U kunt kiezen uit diverse lagen, afhankelijk van hoeveel functies u wilt en hoeveel berichten u per dag wilt verzenden. De gratis optie is bedoeld voor testen en evalueren. Hiermee kunnen 500 apparaten met de hub worden verbonden en maximaal 8000 berichten per dag verzonden. Met de gratis optie kunt u voor elk Azure-abonnement één IoT-hub maken.

      Als u werkt met een quickstart voor IoT Hub-apparaatstreams, selecteert u de gratis laag.

    • IoT Hub-eenheden: het aantal toegestane berichten per eenheid is afhankelijk van de prijscategorie van uw hub. Als u bijvoorbeeld wilt dat de hub de invoer van 700.000 berichten moet kunnen ondersteunen, dan kiest u twee S1-laageenheden. Zie De juiste laag kiezen voor uw IoT-hub voor informatie over andere opties.

    • Defender voor IoT: Schakel dit in om een extra laag beveiligingsbescherming toe te voegen aan IoT en uw apparaten. Deze optie is niet beschikbaar voor hubs in de gratis laag. Zie Microsoft Defender for IoTvoor meer informatie over deze functie.

    • Geavanceerde instellingen > Partities voor apparaat-naar-cloud: met deze eigenschap worden de apparaat-naar-cloud-berichten gerelateerd met het aantal gelijktijdige lezers van de berichten. De meeste hubs hebben maar vier partities nodig.

  7. Selecteer Volgende: Tags om naar het volgende scherm te gaan.

    Tags zijn naam/waarde-paren. U kunt dezelfde tag aan meerdere resources en resourcegroepen toevoegen om resources te categoriseren en facturering te consolideren. In dit document voegt u geen tags toe. Raadpleeg Tags gebruiken om uw Azure-resources te organiseren voor meer informatie.

    Wijs tags toe voor de hub met behulp van Azure Portal.

  8. Selecteer Volgende: Beoordelen + maken om uw keuzes te beoordelen. U ziet iets soortgelijks op dit scherm, maar met de waarden die u hebt geselecteerd toen u de hub maakte.

    Lees de informatie voor het maken van de nieuwe hub.

  9. Selecteer Maken om de implementatie van de nieuwe hub te starten. De implementatie wordt een paar minuten uitgevoerd terwijl de hub wordt gemaakt. Zodra de implementatie is voltooid, selecteert u Ga naar resource om de nieuwe hub te openen.

Een apparaat registreren

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

Een apparaat moet zijn geregistreerd bij uw IoT-hub voordat het verbinding kan maken. In deze snelstart gebruikt u Azure Cloud Shell om een gesimuleerd apparaat te registreren.

  1. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaat-id te maken.

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    MyJavaDevice : dit is de naam van het apparaat dat u gaat registreren. Het is raadzaam om MyJavaDevice te gebruiken zoals wordt weergegeven. Als u een andere naam voor het apparaat kiest, moet u deze naam mogelijk ook in de rest van dit artikel gebruiken, en moet u de apparaatnaam bijwerken in de voorbeeldtoepassingen voordat u ze uitvoert.

    az iot hub device-identity create \
      --hub-name {YourIoTHubName} --device-id MyJavaDevice
    
  2. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaatverbindingsreeks op te halen voor het apparaat dat u zojuist hebt geregistreerd:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-identity connection-string show\
      --hub-name {YourIoTHubName} \
      --device-id MyJavaDevice \
      --output table
    

    Noteer de apparaatverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyNodeDevice;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids.

De verbindingsreeks voor de service ophalen

U hebt ook een service-verbindingsreeks nodig, zodat de back-end-toepassing verbinding kan maken met de IoT-hub en de berichten kan ophalen. Met de volgende opdracht haalt u de serviceverbindingsreeks voor uw IoT-hub op:

YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

az iot hub connection-string show --policy-name service --name {YourIoTHubName} --output table

Noteer de serviceverbindingsreeks. Deze ziet er ongeveer als volgt uit:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

U gebruikt deze waarde verderop in de snelstartgids. De verbindingsreeks voor de service is anders dan de verbindingsreeks voor het apparaat die u in de vorige stap hebt genoteerd.

Luisteren naar aanroepen van directe methoden

De toepassing voor het gesimuleerde apparaat maakt verbinding met een apparaatspecifiek eindpunt op uw IoT-hub, verstuurt gesimuleerde telemetrie en luistert naar aanroepen van directe methoden vanuit de hub. In deze snelstartgids geeft de aanroep van de directe methode vanuit de hub het apparaat opdracht om het interval voor het verzenden van telemetrie te wijzigen. Het gesimuleerde apparaat stuurt een bevestiging terug naar de hub nadat de directe methode is uitgevoerd.

  1. Navigeer in een lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Java. Navigeer vervolgens naar de map iot-hub\Quickstarts\simulated-device-2.

  2. Open het bestand src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java in een teksteditor van uw keuze.

    Vervang de waarde van de variabele connString door de apparaatverbindingsreeks die u eerder hebt genoteerd. Sla daarna de wijzigingen op in SimulatedDevice.java.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren en de toepassing voor het gesimuleerde apparaat te compileren:

    mvn clean package
    
  4. Voer in het lokale terminalvenster de volgende opdrachten uit om de toepassing voor het gesimuleerde apparaat uit te voeren:

    java -jar target/simulated-device-2-1.0.0-with-deps.jar
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing voor het gesimuleerde apparaat telemetriegegevens naar uw IoT-hub verzendt:

    Uitvoer van de telemetrie die door het apparaat wordt verzonden naar uw IoT-hub

De directe methode aanroepen

De back-endtoepassing maakt verbinding met een eindpunt aan de servicezijde van uw IoT-hub. De toepassing verzendt via uw IoT-hub aanroepen naar directe methoden op een apparaat en luistert naar bevestigingen. Een back-endtoepassing van IoT Hub wordt meestal in de cloud uitgevoerd.

  1. Navigeer in een ander lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Java. Navigeer vervolgens naar de map iot-hub\Quickstarts\back-end-application.

  2. Open het bestand src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java in een teksteditor van uw keuze.

    Vervang de waarde van de variabele iotHubConnectionString door de serviceverbindingsreeks die u eerder hebt genoteerd. Sla de wijzigingen vervolgens op in BackEndApplication.java.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren en de back-endtoepassing te compileren:

    mvn clean package
    
  4. Voer in het lokale terminalvenster de volgende opdrachten uit om de back-endtoepassing uit te voeren:

    java -jar target/back-end-application-1.0.0-with-deps.jar
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing een directe methode op het apparaat aanroept en een bevestiging ontvangt:

    Uitvoer terwijl de toepassing een directe methode aanroept via uw IoT-hub

    Nadat u de back-endtoepassing hebt uitgevoerd, ziet u een bericht in het consolevenster dat het gesimuleerde apparaat wordt uitgevoerd, en dat het interval voor het verzenden van berichten is gewijzigd:

    Consolebericht van apparaat toont de mate waarin het verandert

In deze quickstart worden twee Node.js-toepassingen gebruikt: een gesimuleerde apparaattoepassing die reageert op directe methoden die worden aangeroepen vanuit een back-endtoepassing en een back-endtoepassing die de directe methoden aanroept op het gesimuleerde apparaat.

Vereisten

  • Een Azure-account met een actief abonnement. Maak er gratis een.

  • Node.js 12+.

    Gebruik de volgende opdracht om de huidige versie van Node.js op uw ontwikkelcomputer te controleren:

    node --version
    
  • Een voorbeeld van een Node.js-project.

  • Poort 8883 is geopend in de firewall. In het apparaatvoorbeeld in deze quickstart wordt het MQTT-protocol gebruikt, dat communiceert via poort 8883. Deze poort is in sommige netwerkomgevingen van bedrijven en onderwijsinstellingen mogelijk geblokkeerd. Zie Verbinding maken met IoT Hub (MQTT) voor meer informatie en manieren om dit probleem te omzeilen.

  • Gebruik de bash-omgeving in Azure Cloud shell.

    Cloud Shell starten in een nieuw venster

  • Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren.

    • Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij de Azure CLI voor aanvullende aanmeldingsopties.

    • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.

    • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.

Notitie

In dit artikel wordt gebruikgemaakt van de nieuwste versie van de Azure IoT-extensie, azure-iot. De verouderde versie heet azure-cli-iot-ext. Zorg ervoor dat er maar één versie is geïnstalleerd. U kunt de opdracht az extension list gebruiken om de momenteel geïnstalleerde extensies te valideren.

Gebruik az extension remove --name azure-cli-iot-ext om de verouderde versie van de extensie te verwijderen.

Gebruik az extension add --name azure-iot om de nieuwe versie van de extensie toe te voegen.

Gebruik az extension list om te bekijken welke installaties u hebt geïnstalleerd.

Een IoT Hub maken

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

In deze sectie wordt beschreven hoe u een IoT-hub maakt met behulp van de Azure-portal.

  1. Meld u aan bij Azure Portal.

  2. Selecteer in de Azure-startpagina de knop + Een resource maken en voer vervolgens IoT Hub in het veld Marketplace doorzoeken in.

  3. Selecteer IoT Hub in de zoekresultaten en selecteer vervolgens Maken.

  4. Vul de velden in het tabblad Basis als volgt in:

    • Abonnement: Selecteer het abonnement dat u voor de hub wilt gebruiken.

    • Resourcegroep: Selecteer een Resourcegroep of maak een nieuwe. Als u een nieuwe wilt maken, selecteert u Nieuwe maken en vult u de gewenste naam in. Als u een bestaande resourcegroep wilt gebruiken, selecteert u die resourcegroep. Zie Azure Resource Manager-resourcegroepen beheren voor meer informatie.

    • Regio: Selecteer de regio waarin u wilt dat uw hub zich bevindt. Selecteer de locatie die het dichtst bij u in de buurt is. Sommige functies, bijvoorbeeld IoT Hub-apparaatstreams zijn alleen beschikbaar in specifieke regio's. Voor deze beperkte functies moet u een van de ondersteunde regio's selecteren.

    • Naam van de IoT Hub: Voer een naam in voor uw hub. Deze naam moet globaal uniek zijn, met een lengte tussen 3 en 50 alfanumerieke tekens. De naam kan ook het streepje ( '-' ) bevatten.

    Belangrijk

    Omdat de IoT-hub openbaar kan worden gevonden als DNS-eindpunt, moet u ervoor zorgen dat u geen gevoelige of persoonsgegevens invoert wanneer u deze een naam geeft.

    Maak een hub in de Azure Portal.

  5. Selecteer Volgende: Netwerken om verder te gaan met het maken van uw hub.

    Kies de eindpunten die apparaten kunnen gebruiken om verbinding te maken met uw IoT Hub. U kunt de standaardinstelling Openbaar eindpunt (alle netwerken) selecteren, of kiezen voor Openbaar eindpunt (geselecteerde IP-bereiken) of Privé-eindpunt. Accepteer voor dit voorbeeld de standaardinstellingen.

    Kies de eindpunten die verbinding kunnen maken.

  6. Selecteer Volgende: Beheer om verder te gaan met het maken van uw hub.

    Stel de grootte en schaal voor een nieuwe hub in met behulp van Azure Portal.

    U kunt de standaardinstellingen accepteren. Indien gewenst kunt u de volgende velden bewerken:

    • Prijs- en schaalniveau: De geselecteerde laag. U kunt kiezen uit diverse lagen, afhankelijk van hoeveel functies u wilt en hoeveel berichten u per dag wilt verzenden. De gratis optie is bedoeld voor testen en evalueren. Hiermee kunnen 500 apparaten met de hub worden verbonden en maximaal 8000 berichten per dag verzonden. Met de gratis optie kunt u voor elk Azure-abonnement één IoT-hub maken.

      Als u werkt met een quickstart voor IoT Hub-apparaatstreams, selecteert u de gratis laag.

    • IoT Hub-eenheden: het aantal toegestane berichten per eenheid is afhankelijk van de prijscategorie van uw hub. Als u bijvoorbeeld wilt dat de hub de invoer van 700.000 berichten moet kunnen ondersteunen, dan kiest u twee S1-laageenheden. Zie De juiste laag kiezen voor uw IoT-hub voor informatie over andere opties.

    • Defender voor IoT: Schakel dit in om een extra laag beveiligingsbescherming toe te voegen aan IoT en uw apparaten. Deze optie is niet beschikbaar voor hubs in de gratis laag. Zie Microsoft Defender for IoTvoor meer informatie over deze functie.

    • Geavanceerde instellingen > Partities voor apparaat-naar-cloud: met deze eigenschap worden de apparaat-naar-cloud-berichten gerelateerd met het aantal gelijktijdige lezers van de berichten. De meeste hubs hebben maar vier partities nodig.

  7. Selecteer Volgende: Tags om naar het volgende scherm te gaan.

    Tags zijn naam/waarde-paren. U kunt dezelfde tag aan meerdere resources en resourcegroepen toevoegen om resources te categoriseren en facturering te consolideren. In dit document voegt u geen tags toe. Raadpleeg Tags gebruiken om uw Azure-resources te organiseren voor meer informatie.

    Wijs tags toe voor de hub met behulp van Azure Portal.

  8. Selecteer Volgende: Beoordelen + maken om uw keuzes te beoordelen. U ziet iets soortgelijks op dit scherm, maar met de waarden die u hebt geselecteerd toen u de hub maakte.

    Lees de informatie voor het maken van de nieuwe hub.

  9. Selecteer Maken om de implementatie van de nieuwe hub te starten. De implementatie wordt een paar minuten uitgevoerd terwijl de hub wordt gemaakt. Zodra de implementatie is voltooid, selecteert u Ga naar resource om de nieuwe hub te openen.

Een apparaat registreren

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

Een apparaat moet zijn geregistreerd bij uw IoT-hub voordat het verbinding kan maken. In deze snelstart gebruikt u Azure Cloud Shell om een gesimuleerd apparaat te registreren.

  1. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaat-id te maken.

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    MyNodeDevice: dit is de naam van het apparaat dat u gaat registreren. Het is raadzaam om MyNodeDevice te gebruiken zoals wordt weergegeven. Als u een andere naam voor het apparaat kiest, moet u deze naam mogelijk ook in de rest van dit artikel gebruiken, en moet u de apparaatnaam bijwerken in de voorbeeldtoepassingen voordat u ze uitvoert.

    az iot hub device-identity create \
      --hub-name {YourIoTHubName} --device-id MyNodeDevice
    
  2. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaatverbindingsreeks op te halen voor het apparaat dat u zojuist hebt geregistreerd:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-identity connection-string show \
      --hub-name {YourIoTHubName} \
      --device-id MyNodeDevice \
      --output table
    

    Noteer de apparaatverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyNodeDevice;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids.

  3. U hebt ook een service-verbindingsreeks nodig, zodat de back-end-toepassing verbinding kan maken met de IoT-hub en de berichten kan ophalen. Met de volgende opdracht haalt u de serviceverbindingsreeks voor uw IoT-hub op:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub connection-string show \
      --policy-name service --name {YourIoTHubName} --output table
    
    

    Noteer de serviceverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids. De verbindingsreeks voor de service is anders dan de verbindingsreeks voor het apparaat die u in de vorige stap hebt genoteerd.

Luisteren naar aanroepen van directe methoden

De toepassing voor het gesimuleerde apparaat maakt verbinding met een apparaatspecifiek eindpunt op uw IoT-hub, verstuurt gesimuleerde telemetrie en luistert naar aanroepen van directe methoden vanuit de hub. In deze snelstartgids geeft de aanroep van de directe methode vanuit de hub het apparaat opdracht om het interval voor het verzenden van telemetrie te wijzigen. Het gesimuleerde apparaat stuurt een bevestiging terug naar de hub nadat de directe methode is uitgevoerd.

  1. Navigeer in een lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Node.js. Navigeer vervolgens naar de map iot-hub\Quickstarts\simulated-device-2.

  2. Open het bestand SimulatedDevice.js in een teksteditor van uw keuze.

    Vervang de waarde van de variabele connectionString door de apparaatverbindingsreeks die u eerder hebt genoteerd. Sla daarna de wijzigingen in SimulatedDevice.js op.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren en de toepassing voor het gesimuleerde apparaat uit te voeren:

    npm install
    node SimulatedDevice.js
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing voor het gesimuleerde apparaat telemetriegegevens naar uw IoT-hub verzendt:

    Het gesimuleerde apparaat uitvoeren

De directe methode aanroepen

De back-endtoepassing maakt verbinding met een eindpunt aan de servicezijde van uw IoT-hub. De toepassing verzendt via uw IoT-hub aanroepen naar directe methoden op een apparaat en luistert naar bevestigingen. Een back-endtoepassing van IoT Hub wordt meestal in de cloud uitgevoerd.

  1. Navigeer in een ander lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Node.js. Navigeer vervolgens naar de map iot-hub\Quickstarts\back-end-application.

  2. Open het bestand BackEndApplication.js in een teksteditor van uw keuze.

    Vervang de waarde van de variabele connectionString door de serviceverbindingsreeks die u eerder hebt genoteerd. Sla de wijzigingen vervolgens op in BackEndApplication.js.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren en de back-endtoepassing uit te voeren:

    npm install
    node BackEndApplication.js
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing een directe methode op het apparaat aanroept en een bevestiging ontvangt:

    Uitvoer wanneer de toepassing via een directe methode het apparaat aanroept

    Nadat u de back-endtoepassing hebt uitgevoerd, ziet u een bericht in het consolevenster dat het gesimuleerde apparaat wordt uitgevoerd, en dat het interval voor het verzenden van berichten is gewijzigd:

    Uitvoer wanneer er een wijziging in de gesimuleerde client is

In deze quickstart worden twee Python-toepassingen gebruikt: een gesimuleerde apparaattoepassing die reageert op directe methoden die worden aangeroepen vanuit een back-endtoepassing en een back-endtoepassing die de directe methoden aanroept op het gesimuleerde apparaat.

Vereisten

  • Een Azure-account met een actief abonnement. Maak er gratis een.

  • Python 3.7+. Zie Functies van Azure IoT-apparaten voor andere versies van Python die worden ondersteund.

  • Een python-voorbeeldproject vanuit github. Download of kloon de voorbeelden met behulp van de knop Code in de github-opslagplaats.

  • Poort 8883 is geopend in de firewall. In het apparaatvoorbeeld in deze quickstart wordt het MQTT-protocol gebruikt, dat communiceert via poort 8883. Deze poort is in sommige netwerkomgevingen van bedrijven en onderwijsinstellingen mogelijk geblokkeerd. Zie Verbinding maken met IoT Hub (MQTT) voor meer informatie en manieren om dit probleem te omzeilen.

  • Gebruik de bash-omgeving in Azure Cloud shell.

    Cloud Shell starten in een nieuw venster

  • Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren.

    • Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij de Azure CLI voor aanvullende aanmeldingsopties.

    • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.

    • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.

Notitie

In dit artikel wordt gebruikgemaakt van de nieuwste versie van de Azure IoT-extensie, azure-iot. De verouderde versie heet azure-cli-iot-ext. Zorg ervoor dat er maar één versie is geïnstalleerd. U kunt de opdracht az extension list gebruiken om de momenteel geïnstalleerde extensies te valideren.

Gebruik az extension remove --name azure-cli-iot-ext om de verouderde versie van de extensie te verwijderen.

Gebruik az extension add --name azure-iot om de nieuwe versie van de extensie toe te voegen.

Gebruik az extension list om te bekijken welke installaties u hebt geïnstalleerd.

Een IoT Hub maken

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

In deze sectie wordt beschreven hoe u een IoT-hub maakt met behulp van de Azure-portal.

  1. Meld u aan bij Azure Portal.

  2. Selecteer in de Azure-startpagina de knop + Een resource maken en voer vervolgens IoT Hub in het veld Marketplace doorzoeken in.

  3. Selecteer IoT Hub in de zoekresultaten en selecteer vervolgens Maken.

  4. Vul de velden in het tabblad Basis als volgt in:

    • Abonnement: Selecteer het abonnement dat u voor de hub wilt gebruiken.

    • Resourcegroep: Selecteer een Resourcegroep of maak een nieuwe. Als u een nieuwe wilt maken, selecteert u Nieuwe maken en vult u de gewenste naam in. Als u een bestaande resourcegroep wilt gebruiken, selecteert u die resourcegroep. Zie Azure Resource Manager-resourcegroepen beheren voor meer informatie.

    • Regio: Selecteer de regio waarin u wilt dat uw hub zich bevindt. Selecteer de locatie die het dichtst bij u in de buurt is. Sommige functies, bijvoorbeeld IoT Hub-apparaatstreams zijn alleen beschikbaar in specifieke regio's. Voor deze beperkte functies moet u een van de ondersteunde regio's selecteren.

    • Naam van de IoT Hub: Voer een naam in voor uw hub. Deze naam moet globaal uniek zijn, met een lengte tussen 3 en 50 alfanumerieke tekens. De naam kan ook het streepje ( '-' ) bevatten.

    Belangrijk

    Omdat de IoT-hub openbaar kan worden gevonden als DNS-eindpunt, moet u ervoor zorgen dat u geen gevoelige of persoonsgegevens invoert wanneer u deze een naam geeft.

    Maak een hub in de Azure Portal.

  5. Selecteer Volgende: Netwerken om verder te gaan met het maken van uw hub.

    Kies de eindpunten die apparaten kunnen gebruiken om verbinding te maken met uw IoT Hub. U kunt de standaardinstelling Openbaar eindpunt (alle netwerken) selecteren, of kiezen voor Openbaar eindpunt (geselecteerde IP-bereiken) of Privé-eindpunt. Accepteer voor dit voorbeeld de standaardinstellingen.

    Kies de eindpunten die verbinding kunnen maken.

  6. Selecteer Volgende: Beheer om verder te gaan met het maken van uw hub.

    Stel de grootte en schaal voor een nieuwe hub in met behulp van Azure Portal.

    U kunt de standaardinstellingen accepteren. Indien gewenst kunt u de volgende velden bewerken:

    • Prijs- en schaalniveau: De geselecteerde laag. U kunt kiezen uit diverse lagen, afhankelijk van hoeveel functies u wilt en hoeveel berichten u per dag wilt verzenden. De gratis optie is bedoeld voor testen en evalueren. Hiermee kunnen 500 apparaten met de hub worden verbonden en maximaal 8000 berichten per dag verzonden. Met de gratis optie kunt u voor elk Azure-abonnement één IoT-hub maken.

      Als u werkt met een quickstart voor IoT Hub-apparaatstreams, selecteert u de gratis laag.

    • IoT Hub-eenheden: het aantal toegestane berichten per eenheid is afhankelijk van de prijscategorie van uw hub. Als u bijvoorbeeld wilt dat de hub de invoer van 700.000 berichten moet kunnen ondersteunen, dan kiest u twee S1-laageenheden. Zie De juiste laag kiezen voor uw IoT-hub voor informatie over andere opties.

    • Defender voor IoT: Schakel dit in om een extra laag beveiligingsbescherming toe te voegen aan IoT en uw apparaten. Deze optie is niet beschikbaar voor hubs in de gratis laag. Zie Microsoft Defender for IoTvoor meer informatie over deze functie.

    • Geavanceerde instellingen > Partities voor apparaat-naar-cloud: met deze eigenschap worden de apparaat-naar-cloud-berichten gerelateerd met het aantal gelijktijdige lezers van de berichten. De meeste hubs hebben maar vier partities nodig.

  7. Selecteer Volgende: Tags om naar het volgende scherm te gaan.

    Tags zijn naam/waarde-paren. U kunt dezelfde tag aan meerdere resources en resourcegroepen toevoegen om resources te categoriseren en facturering te consolideren. In dit document voegt u geen tags toe. Raadpleeg Tags gebruiken om uw Azure-resources te organiseren voor meer informatie.

    Wijs tags toe voor de hub met behulp van Azure Portal.

  8. Selecteer Volgende: Beoordelen + maken om uw keuzes te beoordelen. U ziet iets soortgelijks op dit scherm, maar met de waarden die u hebt geselecteerd toen u de hub maakte.

    Lees de informatie voor het maken van de nieuwe hub.

  9. Selecteer Maken om de implementatie van de nieuwe hub te starten. De implementatie wordt een paar minuten uitgevoerd terwijl de hub wordt gemaakt. Zodra de implementatie is voltooid, selecteert u Ga naar resource om de nieuwe hub te openen.

Een apparaat registreren

Als u Snelstart: Als u telemetrie vanaf een apparaat wilt verzenden naar een IoT-hub, kunt u deze stap overslaan.

Een apparaat moet zijn geregistreerd bij uw IoT-hub voordat het verbinding kan maken. In deze snelstart gebruikt u Azure Cloud Shell om een gesimuleerd apparaat te registreren.

  1. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaat-id te maken.

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    MyPythonDevice: dit is de naam van het apparaat dat u gaat registreren. Het is raadzaam om MyPythonDevice te gebruiken zoals wordt weergegeven. Als u een andere naam voor het apparaat kiest, moet u deze naam mogelijk ook in de rest van dit artikel gebruiken, en moet u de apparaatnaam bijwerken in de voorbeeldtoepassingen voordat u ze uitvoert.

    az iot hub device-identity create --hub-name {YourIoTHubName} --device-id MyPythonDevice
    
  2. Voer de volgende opdrachten uit in Azure Cloud Shell om de apparaatverbindingsreeks op te halen voor het apparaat dat u zojuist hebt geregistreerd:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-identity connection-string show --hub-name {YourIoTHubName} --device-id MyPythonDevice --output table
    

    Noteer de apparaatverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;DeviceId=MyNodeDevice;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids.

  3. U hebt ook een service-verbindingsreeks nodig, zodat de back-end-toepassing verbinding kan maken met de IoT-hub en de berichten kan ophalen. Met de volgende opdracht haalt u de serviceverbindingsreeks voor uw IoT-hub op:

    YourIoTHubName: vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub connection-string show \
      --policy-name service \
      --hub-name {YourIoTHubName} \
      --output table
    

    Noteer de serviceverbindingsreeks. Deze ziet er ongeveer als volgt uit:

    HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

    U gebruikt deze waarde verderop in de snelstartgids. De verbindingsreeks voor de service is anders dan de verbindingsreeks voor het apparaat die u in de vorige stap hebt genoteerd.

Luisteren naar aanroepen van directe methoden

De toepassing voor het gesimuleerde apparaat maakt verbinding met een apparaatspecifiek eindpunt op uw IoT-hub, verstuurt gesimuleerde telemetrie en luistert naar aanroepen van directe methoden vanuit de hub. In deze snelstartgids geeft de aanroep van de directe methode vanuit de hub het apparaat opdracht om het interval voor het verzenden van telemetrie te wijzigen. Het gesimuleerde apparaat stuurt een bevestiging terug naar de hub nadat de directe methode is uitgevoerd.

  1. Navigeer in een lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Python. Navigeer vervolgens naar de map iot-hub\Quickstarts\simulated-device-2.

  2. Open het bestand SimulatedDevice.py in een teksteditor van uw keuze.

    Vervang de waarde van de variabele CONNECTION_STRING door de apparaatverbindingsreeks die u eerder hebt genoteerd. Sla daarna de wijzigingen op in SimulatedDevice.py.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren voor de toepassing voor het gesimuleerde apparaat:

    pip install azure-iot-device
    
  4. Voer in het lokale terminalvenster de volgende opdrachten uit om de toepassing voor het gesimuleerde apparaat uit te voeren:

    python SimulatedDevice.py
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing voor het gesimuleerde apparaat telemetriegegevens naar uw IoT-hub verzendt:

    Het gesimuleerde apparaat uitvoeren

De directe methode aanroepen

De back-endtoepassing maakt verbinding met een eindpunt aan de servicezijde van uw IoT-hub. De toepassing verzendt via uw IoT-hub aanroepen naar directe methoden op een apparaat en luistert naar bevestigingen. Een back-endtoepassing van IoT Hub wordt meestal in de cloud uitgevoerd.

  1. Navigeer in een ander lokaal terminalvenster naar de hoofdmap van het voorbeeldproject in Python. Navigeer vervolgens naar de map iot-hub\Quickstarts\back-end-application.

  2. Open het bestand BackEndApplication.py in een teksteditor van uw keuze.

    Vervang de waarde van de variabele CONNECTION_STRING door de serviceverbindingsreeks die u eerder hebt genoteerd. Sla daarna de wijzigingen in het bestand BackEndApplication.py op.

  3. Voer in het lokale terminalvenster de volgende opdrachten uit om de vereiste bibliotheken te installeren voor de toepassing voor het gesimuleerde apparaat:

    pip install azure-iot-hub
    
  4. Voer in het lokale terminalvenster de volgende opdrachten uit om de back-endtoepassing uit te voeren:

    python BackEndApplication.py
    

    In de volgende schermafbeelding ziet u de uitvoer op het moment dat de toepassing een directe methode op het apparaat aanroept en een bevestiging ontvangt:

    De back-endtoepassing uitvoeren

    Nadat u de back-endtoepassing hebt uitgevoerd, ziet u een bericht in het consolevenster dat het gesimuleerde apparaat wordt uitgevoerd, en dat het interval voor het verzenden van berichten is gewijzigd:

    Wijziging in gesimuleerde client

Resources opschonen

Als u verder wilt gaan met het volgende aanbevolen artikel, kunt u de resources die u al hebt gemaakt behouden en opnieuw gebruiken.

Anders kunt u de Azure-resources die u in dit artikel hebt gemaakt verwijderen om kosten te voorkomen.

Belangrijk

Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. De resourcegroep en alle resources daarin worden permanent verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde resourcegroep of resources verwijdert. Als u de IoT Hub in een bestaande resourcegroep hebt gemaakt met resources die u wilt behouden, moet u alleen de IoT Hub-resource zelf verwijderen in plaats van de resourcegroep te verwijderen.

Een resourcegroep verwijderen op naam:

  1. Meld u aan bij Azure Portal en selecteer Resourcegroepen.

  2. Typ in het tekstvak Filteren op naam de naam van de resourcegroep die uw IoT Hub bevat.

  3. Selecteer rechts van de resourcegroep in de lijst met resultaten ... en vervolgens Resourcegroep verwijderen.

    Verwijderen

  4. U wordt gevraagd om het verwijderen van de resourcegroep te bevestigen. Typ ter bevestiging nogmaals de naam van de resourcegroep. Selecteer vervolgens Verwijderen. Na enkele ogenblikken worden de resourcegroep en alle resources in de groep verwijderd.

Volgende stappen

In deze quickstart hebt u vanuit een servicetoepassing een directe methode op een apparaat aangeroepen, en op de aanroep van de directe methode gereageerd in een toepassing voor een gesimuleerd apparaat.

Ga verder met de volgende zelfstudie als u wilt leren hoe u berichten van een apparaat naar andere bestemmingen in de cloud kunt routeren.