Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Event Grid maakt het mogelijk om te reageren op gebeurtenissen in IoT Hub door acties in zakelijke toepassingen verderop in de werkstroom te activeren.
In dit artikel wordt u stapsgewijs begeleid bij het maken van een voorbeeldconfiguratie waarin IoT Hub en Event Grid worden gebruikt. Aan het einde van het artikel beschikt u over een logische Azure-app die een e-mailmelding verstuurt zodra er een apparaat verbinding maakt met uw IoT-hub of deze verbinding wordt verbroken. Event Grid kan worden gebruikt om tijdig meldingen te ontvangen over kritieke apparaten die de verbinding verbreken. Metrische gegevens en diagnostische gegevens kunnen enkele minuten (zoals 20 minuten of meer) duren om weer te geven in logboeken/waarschuwingen. Langere verwerkingstijden kunnen onaanvaardbaar zijn voor kritieke infrastructuur.
Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
Vereisten
- Een e-mailaccount van elke e-mailprovider die wordt ondersteund door Azure Logic Apps, zoals Office 365 Outlook of Outlook.com. Dit e-mailaccount wordt gebruikt voor het verzenden van de gebeurtenismeldingen.
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
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. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Zie Extensies gebruiken en beheren met de Azure CLIvoor 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.
Een IoT Hub maken
U kunt snel een nieuwe IoT-hub maken met behulp van de Azure Cloud Shell-terminal in de portal.
Meld u aan bij het Azure-portaal.
Klik in de rechterbovenhoek van de pagina en selecteer de knop Cloud Shell.
Voer de volgende opdracht uit om een nieuwe resourcegroep te maken:
az group create --name {your resource group name} --location westusVoer de volgende opdracht uit om een IoT-hub te maken:
az iot hub create --name {your iot hub name} --resource-group {your resource group name} --sku S1Minimaliseer de Cloud Shell-terminal. U keert later in de zelfstudie terug naar de shell.
Een logische app maken
Maak vervolgens een logische app en voeg een HTTP Event Grid-trigger toe waarmee aanvragen van IoT Hub worden verwerkt.
Een Logic App-resource maken
In de Azure Portal, selecteer Een resource maken en typ 'logic app' in het zoekvak en druk op Enter. Selecteer Logic App uit de resultaten.
Selecteer Maken in het volgende scherm.
Op de pagina Logische app maken, selecteer Verbruik (Multitenant) en selecteer vervolgens Selecteren.
Geef uw logische app op de pagina Logische app maken (meerdere tenants) een unieke naam in uw abonnement en selecteer vervolgens hetzelfde abonnement, dezelfde resourcegroep en locatie als uw IoT-hub.
Selecteer Beoordelen en maken.
Controleer de instellingen en selecteer vervolgens Maken.
Selecteer Ga naar resource zodra de resource is gemaakt.
Selecteer in het resourcemenu sjablonen voor logische apps onder Ontwikkelhulpprogramma's.
Kies in het werkvenster Lege werkstroom , zodat u kunt beginnen met een lege werkstroom.
Een trigger selecteren
Een trigger is een specifieke gebeurtenis waarmee uw logische app wordt gestart. Voor deze zelfstudie is de trigger voor het activeren van de werkstroom het ontvangen van een aanvraag via HTTP.
Selecteer een trigger toevoegen in de werkstroomontwerper.
Typ HTTP in de zoekbalk voor connectors en triggers.
Scroll door de resultaten en selecteer Aanvraag - Wanneer een HTTP-aanvraag is ontvangen als de trigger.
In het vak voor de triggerconfiguratie selecteer je de optie Voorbeeldpayload gebruiken om een schema te genereren.
Kopieer het volgende
jsonen vervang de waarden van de tijdelijke aanduiding door uw eigen waarden<>.Plak het apparaat verbonden gebeurtenisschema JSON in het tekstvak Voer een voorbeeld van een JSON-payload in of plak het. Selecteer vervolgens Gereed:
[{ "id": "f6bbf8f4-d365-520d-a878-17bf7238abd8", "topic": "/SUBSCRIPTIONS/<azure subscription ID>/RESOURCEGROUPS/<resource group name>/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/<hub name>", "subject": "devices/LogicAppTestDevice", "eventType": "Microsoft.Devices.DeviceConnected", "eventTime": "2018-06-02T19:17:44.4383997Z", "data": { "deviceConnectionStateEventInfo": { "sequenceNumber": "000000000000000001D4132452F67CE200000002000000000000000000000001" }, "hubName": "<hub name>", "deviceId": "LogicAppTestDevice", "moduleId" : "DeviceModuleID" }, "dataVersion": "1", "metadataVersion": "1" }]Belangrijk
Plak het JSON-fragment in het vak dat wordt geleverd door de link Gebruik voorbeeld-payload om schema te genereren en niet rechtstreeks in het vak JSON-schema voor aanvraagbody. De voorbeeld payload-link biedt een manier om de JSON-inhoud te genereren op basis van het JSON-fragment. De uiteindelijke JSON die in de aanvraagbody terechtkomt, verschilt van het JSON-fragment.
Deze gebeurtenis wordt gepubliceerd wanneer een apparaat is verbonden met een IoT-hub.
Selecteer in de werkbalk van de ontwerper Opslaan.
Notitie
Mogelijk ontvangt u een pop-upmelding met de mededeling: Vergeet niet om een Content-Type-header op te nemen die is ingesteld op application/json in uw aanvraag. U kunt deze suggestie veilig negeren en verdergaan met de volgende sectie.
Sluit het triggerinformatievak.
Een actie maken
Acties zijn stappen die worden uitgevoerd nadat de trigger de werkstroom van de logische app heeft gestart. Voor deze zelfstudie is de actie het verzenden van een e-mailmelding via uw e-mailprovider.
Selecteer in de ontwerpfunctie het plusteken (+) onder de trigger en selecteer vervolgens Een actie toevoegen.
Zoek in het vak Een actie toevoegen naar Outlook.
Zoek en selecteer de bijbehorende connector op basis van uw e-mailprovider. In deze zelfstudie wordt Outlook.com gebruikt als e-mailprovider. Als u de bijbehorende connector wilt gebruiken, selecteert u de actie Een e-mail verzenden (V2) onder Outlook.com. De stappen voor andere e-mailproviders zijn vergelijkbaar. U kunt ook Office 365 Outlook gebruiken om de aanmeldingsstap over te slaan.
Selecteer Aanmelden en meld u aan bij uw e-mailaccount. Selecteer Ja om de app toegang te geven tot uw gegevens.
Bouw uw e-mailsjabloon.
Aan: voer het e-mailadres in waarop u de e-mailmeldingen wilt ontvangen. Voor deze zelfstudie gebruikt u een e-mailaccount dat u kunt gebruiken voor het testen.
Onderwerp: Vul de tekst voor het onderwerp in. Wanneer u het tekstvak Onderwerp selecteert, kunt u het functiepictogram naast het tekstvak selecteren of het slash-teken (/) typen en de optie Dynamische inhoud invoegen selecteren om dynamische inhoud op te nemen. In deze zelfstudie wordt bijvoorbeeld
IoT Hub alert: {eventType}gebruikt.
Nadat u hebt
eventTypegeselecteerd, ziet u de uitvoer van het e-mailformulier tot nu toe. Selecteer de optie E-mail verzenden (V2) om de inhoud van uw e-mail te bewerken.- Hoofdtekst: Schrijf de tekst voor uw e-mail. Selecteer de JSON-eigenschappen van het selector-hulpprogramma om dynamische inhoud op basis van gebeurtenisgegevens toe te voegen. Als u het hulpmiddel selector niet kunt zien, selecteert u het tekstvak Hoofdtekst en selecteert u vervolgens het functiepictogram naast het tekstvak om expressies en dynamische inhoud op te nemen. Als de gewenste velden niet worden weergegeven, selecteert u Meer weergeven in het scherm Dynamische inhoud om de velden uit de vorige actie op te nemen.
Uw e-mailsjabloon kan er als volgt uitzien:
Selecteer Opslaan in de werkstroomontwerper.
HTTP-URL kopiëren
Voordat u de werkstroomontwerper verlaat, kopieert u de URL waarnaar uw logische app luistert voor een trigger. U gebruikt deze URL voor het configureren van Event Grid.
Vouw het vak Wanneer een HTTP-aanvraag wordt ontvangen , configuratievak voor triggers uit door deze te selecteren.
Kopieer de waarde van de HTTP-URL door de knop Kopiëren ernaast te selecteren.
Sla deze URL op zodat u ernaar kunt verwijzen in de volgende sectie.
Abonnement voor IoT Hub-gebeurtenissen configureren
In deze sectie configureert u uw IoT-hub om gebeurtenissen te publiceren zodra deze zich voordoen.
Ga in Azure Portal naar uw IoT-hub. U kunt uw IoT-hub vinden door IoT Hub te selecteren in uw Azure-dashboard en vervolgens uw IoT Hub-exemplaar te selecteren in de lijst met resources.
Selecteer Gebeurtenissen.
Selecteer Gebeurtenisabonnement.
Maak het gebeurtenisabonnement met de volgende waarden:
Ga als volgt te werk in de sectie GEBEURTENISABONNEMENTDETAILS:
- Geef een naam op voor het gebeurtenisabonnement.
- Selecteer Gebeurtenisrasterschema voor Gebeurtenisschema.
In de sectie ONDERWERPDETAILS:
- Controleer of het Onderwerpstype is ingesteld op IoT Hub.
- Controleer of de naam van de IoT Hub is ingesteld als de waarde voor het veld Bronresource.
- Voer een naam in voor het systeemonderwerp dat voor u moet worden gemaakt. Zie Systeemonderwerpen in Azure Event Grid voor meer informatie over systeemonderwerpen.
Ga als volgt te werk in de sectie GEBEURTENISTYPEN:
In de sectie EINDPUNTDETAILS:
- Selecteer Eindpunttype als Webhook.
- Selecteer een eindpunt, plak de URL die u hebt gekopieerd uit uw logische app en bevestig de selectie.
Wanneer u klaar bent, ziet het deelvenster eruit als in het volgende voorbeeld:
Selecteer Maken.
Een nieuw apparaat simuleren voor het verbinden en verzenden van telemetrie
Test uw logische app door snel een apparaatverbinding te simuleren met de Azure CLI.
Selecteer de knop Cloud Shell om uw terminal opnieuw te openen.
Voer de volgende opdracht uit om een identiteit van een gesimuleerd apparaat te maken:
az iot hub device-identity create --device-id simDevice --hub-name {YourIoTHubName}De verwerking kan een minuut duren. U ziet een JSON-afdruk in uw console zodra de verwerking is voltooid.
Voer de volgende opdracht uit om het verbinden van uw apparaat met IoT Hub en het verzenden van telemetrie te simuleren:
az iot device simulate -d simDevice -n {YourIoTHubName}Wanneer het gesimuleerde apparaat verbinding maakt met IoT Hub, ontvangt u een e-mail met de melding 'DeviceConnected'.
Wanneer de simulatie is voltooid, ontvangt u een e-mailbericht met de melding 'DeviceDisconnected'.
Hulpbronnen opschonen
In deze zelfstudie zijn resources gebruikt die kosten voor uw Azure-abonnement met zich meebrengen. Wanneer u klaar bent met de zelfstudie en het testen van de resultaten, moet u daarom de resources uitschakelen of verwijderen die u niet wilt behouden.
Als u alle resources wilt verwijderen die u in deze zelfstudie hebt gemaakt, verwijdert u de resourcegroep.
Selecteer Resourcegroepen en selecteer vervolgens de resourcegroep die u hebt gemaakt voor deze zelfstudie.
Selecteer Resourcegroep verwijderen op het deelvenster Resourcegroep. U wordt gevraagd de naam van de resourcegroep in te voeren en vervolgens kunt u deze verwijderen. Alle middelen daarin worden ook verwijderd.
Volgende stappen
- Ga voor meer informatie naar Reageren op gebeurtenissen van IoT Hub door met behulp van Event Grid acties te triggeren - Preview.
- Informatie over het rangschikken van gebeurtenissen ‘apparaat verbonden’ en ‘verbinding met apparaat verbroken’.
- Lees hier meer over wat u kunt doen met Event Grid.
Zie voor een volledige lijst met ondersteunde logic app-connectors:
Overzicht van connectors.