Oktatóanyag: Azure IoT Hub-eseményekkel kapcsolatos e-mail-értesítések küldése az Event Grid és a Logic Apps használatával

Az Azure Event Griddel reagálhat az IoT Hub eseményeire a folyamatok későbbi szakaszában használt üzleti alkalmazásokban kiváltott műveletekkel.

Ez a cikk az IoT Hubot és az Event Gridet használó mintakonfigurációt ismerteti. A végén be van állítva egy Azure-logikai alkalmazás, amely értesítést küld e-mailben minden alkalommal, amikor egy eszköz csatlakozik vagy leválasztja az IoT Hubot. Az Event Grid segítségével időben értesítést kaphat a kritikus eszközök leválasztásáról. A metrikák és a diagnosztika több percet is igénybe vehet (például 20 percet vagy többet), amíg megjelennek a naplókban vagy riasztásokban. A hosszabb feldolgozási idő elfogadhatatlan lehet a kritikus infrastruktúra esetében.

Ha még nem rendelkezik Azure-fiókkal, első lépésként hozzon létre egy ingyenes fiókot.

Előfeltételek

  • Az Azure Logic Apps által támogatott e-mail-szolgáltatótól származó e-mail-fiók, például az Office 365 Outlook vagy Outlook.com. Ez az e-mail-fiók küldi majd az eseményértesítéseket.

IoT Hub létrehozása

Gyorsan létrehozhat egy új IoT Hubot a portál Azure Cloud Shell-termináljának használatával.

  1. Jelentkezzen be az Azure Portalra.

  2. A lap jobb felső sarkában válassza a Cloud Shell gombot.

    Képernyőkép arról, hogyan nyithatja meg az Azure Cloud Shellt az Azure Portalról.

  3. Futtassa a következő parancsot új erőforráscsoport létrehozásához:

    az group create --name {your resource group name} --location westus
    
  4. Futtassa a következő parancsot egy IoT Hub létrehozásához:

    az iot hub create --name {your iot hub name} --resource-group {your resource group name} --sku S1 
    
  5. Minimalizálja a Cloud Shell-terminált. Az oktatóanyag későbbi részében visszatérsz a parancssorba.

Logikai alkalmazás létrehozása

Ezután hozzon létre egy logikai alkalmazást, és adjon hozzá egy HTTP Event Grid-eseményindítót, amely feldolgozza az IoT Hubtól érkező kéréseket.

Logikai alkalmazás erőforrás létrehozása

  1. Az Azure Portalon válassza az Erőforrás létrehozása lehetőséget, majd írja be a "logikai alkalmazás" kifejezést a keresőmezőbe, és nyomja le az Enter billentyűt. Válassza a Logikai alkalmazás lehetőséget az eredmények közül.

    Képernyőkép arról, hogyan választhatja ki a logikai alkalmazást az erőforrások listájából.

  2. A következő képernyőn válassza a Létrehozás lehetőséget.

  3. A Logikai alkalmazás létrehozása lapon válassza a Fogyasztás (Több-bérlő) lehetőséget, majd válassza a Kiválasztás lehetőséget.

  4. A Logikai alkalmazás létrehozása (több-bérlős) lapon adjon egyedi nevet a logikai alkalmazásnak az előfizetésben, majd válassza ki ugyanazt az előfizetést, erőforráscsoportot és helyet, mint az IoT Hub.

    A logikai alkalmazás konfigurálásának képernyőképe.

  5. Válassza az Áttekintés + létrehozás lehetőséget.

  6. Ellenőrizze a beállításokat, majd válassza a Létrehozás lehetőséget.

  7. Az erőforrás létrehozása után válassza az Ugrás az erőforrásra lehetőséget.

  8. Az erőforrásmenüben válassza a Logikai alkalmazássablonok lehetőséget a Fejlesztési eszközök területen.

  9. A munkaablakban válassza az Üres munkafolyamat lehetőséget, hogy üres munkafolyamatból induljon ki.

    A logikai alkalmazássablonok képernyőképe.

Indító kiválasztása

A trigger a logikai alkalmazást elindító konkrét esemény. Ebben az oktatóanyagban a munkafolyamatot aktiváló trigger HTTP-kapcsolaton keresztül fogad egy kérést.

  1. A munkafolyamat-tervezőben válassza az Eseményindító hozzáadása lehetőséget.

  2. Írja be a HTTP kifejezést az összekötők és triggerek keresősávjába.

  3. Görgessen az eredményeken végig, és válassza a Kérés – HTTP-kérés fogadása indítóként.

    Képernyőkép az Eseményindító hozzáadása panelről a munkafolyamat-tervezőben.

  4. Az eseményindító konfigurációs mezőjében válassza a Mintapéldány adathalmaz használata séma létrehozása céljából lehetőséget.

    Képernyőkép az eseményindító információs mezőjéről.

  5. Másolja ki a következőt json , és cserélje le a helyőrző értékeket <> a sajátjára.

  6. Illessze be az eszközhöz csatlakoztatott eseményséma JSON-ját az Enterbe, vagy illessze be a JSON-minta hasznos adatait. szövegmezőbe, majd válassza a Kész elemet:

      [{  
       "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"
     }]
    

    Fontos

    Mindenképpen illessze be a JSON-részletet a Minta hasznos adat használata sémageneráláshoz link által biztosított mezőbe, és ne közvetlenül a Kérelemtörzs JSON séma mezőjébe. A mintapayload-hivatkozással létrehozhatja a JSON-tartalmat a JSON-kódrészlet alapján. A kérelem törzsében végződő utolsó JSON-fájl eltér a JSON-kódrészletétől.

    Ez az esemény akkor jelenik meg, ha egy eszköz IoT Hubhoz csatlakozik.

  7. A tervező eszköztárán válassza a Mentés lehetőséget.

    Feljegyzés

    Előfordulhat, hogy megjelenik egy előugró értesítés, amely azt jelzi, hogy ne felejtse el az alkalmazás/json tartalomtípusú fejlécet belefoglalni a kérésbe. Nyugodtan figyelmen kívül hagyhatja ezt a javaslatot, és továbbléphet a következő szakaszra.

  8. Zárja be az eseményindító információs mezőjét.

Művelet létrehozása

A műveletek azok a lépések, azután mennek végbe, hogy a trigger elindítja a logikai alkalmazás munkafolyamatát. Ebben az oktatóanyagban a művelet egy e-mail-értesítés küldése az e-mail-szolgáltatóról.

  1. A tervezőn válassza a pluszjelet (+) az eseményindító alatt, majd válassza a Művelet hozzáadása lehetőséget.

  2. A Művelet hozzáadása mezőben keresse meg az Outlookot.

  3. Az e-mail-szolgáltató alapján keresse meg és válassza ki a megfelelő összekötőt. Ez az oktatóanyag az Outlook.com-ot használja mint e-mail-szolgáltatót. A megfelelő összekötő használatához válassza az E-mail küldése (V2) műveletet a Outlook.com alatt. Az egyéb e-mail-szolgáltatókra vonatkozó lépések is hasonlók. Másik lehetőségként az Office 365 Outlook használatával kihagyhatja a bejelentkezési lépést.

    Képernyőkép a Művelet hozzáadása mezőről.

  4. Válassza a Bejelentkezés lehetőséget, és jelentkezzen be az e-mail-fiókjába. Az Igen elemet választva az alkalmazás hozzáférhet az adataihoz.

  5. Készítse el az e-mail-sablont.

    • Címzett: Adja meg az e-mail-címet, hogy megkapja az értesítő e-maileket. Ehhez az oktatóanyaghoz olyan e-mail-fiókot használjon, amelyhez hozzáfér majd a tesztelés során.

    • Tárgy: Töltse ki a tárgy szövegét. A Tárgy szövegmező kijelölésekor kiválaszthatja a szövegdoboz mellett megjelenő függvényikont, vagy beírhatja a perjel (/) karaktert, és a dinamikus tartalom belefoglalásához válassza a Dinamikus tartalomlista beszúrása lehetőséget. Ez az oktatóanyag például a következőt használja IoT Hub alert: {eventType}: .

    A kiválasztás eventTypeután megjelenik az e-mail-űrlap eddigi kimenete. Válassza a Küldés és e-mail (V2) lehetőséget az e-mail törzsének szerkesztéséhez.

    Képernyőkép az összesűrített törzs eredményűrlapról.

    • Törzs: Írja meg az e-mail szövegét. A választó eszközről választott JSON-tulajdonságokkal az esemény adataira alapuló dinamikus tartalmat illeszthet be. Ha nem látja a választóeszközt, jelölje ki a Szövegtörzs szövegdobozt, majd a szövegmező mellett megjelenő függvényikont választva adja meg a kifejezéseket és a dinamikus tartalmat. Ha nem jeleníti meg a kívánt mezőket, válassza a Továbbiak megjelenítése lehetőséget a Dinamikus tartalom képernyőn az előző művelet mezőinek belefoglalásához.

    Az e-mail-sablon az alábbi példához hasonlóan nézhet ki:

    Képernyőkép arról, hogyan hozhat létre eseményes e-maileket a sablonban.

  6. Válassza a Mentés lehetőséget a munkafolyamat-tervezőben.

Az HTTP URL-cím másolása

Mielőtt kilép a munkafolyamat-tervezőből, másolja azt az URL-t, amelyet a logikai alkalmazás figyel indítóként. Erre az URL-címre az Event Grid konfigurálásához lesz szükség.

  1. A HTTP-kérés fogadása eseményindító konfigurációs mezőjének kibontásához válassza ki azt.

  2. Másolja a HTTP URL-cím értékét a mellette lévő Másolás gombra kattintva.

    Képernyőkép az eseményindító HTTP-URL-címének másolásáról.

  3. Mentse ezt az URL-címet, hogy a következő szakaszban hivatkozhasson majd rá.

Az IoT Hub eseményeire való előfizetés beállítása

Ebben a szakaszban úgy konfigurálja az IoT Hubot, hogy az eseményeket az események bekövetkezésekor tegye közzé.

  1. Az Azure Portalon keresse meg az IoT-központot. Az IoT Hub megkereséséhez válassza ki az IoT Hubot az Azure-irányítópulton, majd válassza ki az IoT Hub-példányt az erőforrások listájából.

  2. Válassza az Események elemet.

    Képernyőkép az IoT Hub szolgáltatásmenüjéről az Azure Portalon, kiemelve az Események parancsot.

  3. Válassza az Eseményfeliratkozás elemet.

    Képernyőkép az IoT Hub munkaablakáról az Azure Portalon, kiemelve az Esemény-előfizetés parancsot a parancssávon.

  4. Hozza létre az esemény-előfizetést a következő értékekkel:

    1. Az ESEMÉNYFELIRATKOZÁS RÉSZLETEI szakaszban:

      1. Adja meg az esemény-előfizetés nevét.
      2. Válassza az Event Grid-sémát az eseményséma számára.
    2. A TÉMAKÖR RÉSZLETEI szakaszban:

      1. Erősítse meg, hogy a Témakör típusa az IoT Hub értékre van állítva.
      2. Erősítse meg, hogy a Forrás-erőforrás mező értékeként az IoT-központ neve van megadva.
      3. Adja meg a létrehozandó rendszertémakör nevét. A rendszertémakörökről az Azure Event Grid rendszertémakörökben olvashat.
    3. AzESEMÉNYTÍPUSOK szakaszban:

      1. Válassza ki az Eseménytípusokra szűrés legördülő listát.

      2. Törölje az Eszköz létrehozva és Eszköz törölve jelölőnégyzetek jelölését, és csak az Eszköz csatlakoztatva és Eszköz leválasztva jelölőnégyzeteket hagyja bejelölve.

        Képernyőkép az

    4. A VÉGPONT ADATAI szakaszban:

      1. Válassza ki a végpont típusa lehetőséget Web Hook-ként.
      2. Válasszon ki egy végpontot, illessze be a logikai alkalmazásból másolt URL-címet, és erősítse meg a kijelölést.

      Képernyőkép az Azure Portal

      Ha végzett, a panelnek az alábbi példához kell hasonlítania:

      Képernyőkép az

  5. Válassza a Létrehozás lehetőséget.

Új eszköz csatlakoztatásának és telemetria küldésének szimulálása

Tesztelje a logikai alkalmazást egy eszközkapcsolat gyors szimulálásával az Azure CLI használatával.

  1. Válassza a Cloud Shell gombot a terminál újbóli megnyitásához.

  2. Futtassa a következő parancsot egy szimulált eszközidentitás létrehozásához:

    az iot hub device-identity create --device-id simDevice --hub-name {YourIoTHubName}
    

    A feldolgozás eltarthat egy percig. Miután a feldolgozás befejeződött, megjelenik egy JSON-nyomtatás a konzolon.

  3. Futtassa az alábbi parancsot az eszköz IoT Hubhoz való csatlakoztatásának szimulálásához és a telemetriai adatok küldéséhez:

    az iot device simulate -d simDevice -n {YourIoTHubName}
    
  4. Amikor a szimulált eszköz csatlakozik az IoT Hubhoz, e-mailben értesítést kap egy "DeviceConnected" eseményről.

  5. Amikor a szimuláció befejeződik, egy e-mailt kap, amely értesíti Önt egy "DeviceDisconnected" eseményről.

    Képernyőkép a kapott e-mailről.

Az erőforrások megtisztítása

Ebben az oktatóanyagban olyan erőforrásokat használtunk, amelyek költségekkel terhelik az Azure-előfizetését. Ha befejezte az oktatóanyag kipróbálását és az eredmények tesztelését, tiltsa le vagy törölje azokat az erőforrásokat, amelyeket nem szeretne megtartani.

Az oktatóanyagban létrehozott összes erőforrás törléséhez törölje az erőforráscsoportot.

  1. Válassza ki az Erőforráscsoportokat, majd válassza ki az oktatóanyaghoz létrehozott erőforráscsoportot.

  2. Az Erőforráscsoport panelen válassza az Erőforráscsoport törlése lehetőséget. A rendszer kérni fogja az erőforráscsoport nevének megadását, majd törölheti azt. Az abban található összes erőforrás is el lesz távolítva.

Következő lépések

A támogatott logikaialkalmazás-összekötők teljes listáját a következő témakörben találja: