Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure Event Grid segítségével eseményalapú alkalmazásokat hozhat létre, és könnyen integrálhatja az IoT-eseményeket az üzleti megoldásokba. Ez a cikk végigvezeti egy beállításon a Cosmos DB, a Logic App, az IoT Hub Events és egy szimulált Raspberry Pi használatával az eszköz kapcsolati és leválasztási eseményeinek gyűjtéséhez és tárolásához.
Az eszköz futásától kezdve a műveletek sorrendje aktiválódik:
Az IoT Hub-eszközkulcsot használó Pi-eszköz elindul, majd leáll
Egy IoT Hub-esemény rögzíti az eszköztevékenységet, majd HTTP-kérést küld a logikai alkalmazásnak
A Logikai alkalmazás egy beállított feltétel alapján dolgozza fel a HTTP-kérést
A Logic App naplózza a kapcsolati vagy leválasztási eseményeket egy új dokumentumba a Cosmos DB-ben
Előfeltételek
Aktív Azure Cosmos DB for NoSQL-fiók. Ha még nem hoz létre egyet, tekintse meg az adatbázisfiók létrehozása című útmutatót.
Gyűjtemény az adatbázisban. Lásd: Gyűjtemény hozzáadása bemutatóhoz. A gyűjtemény létrehozásakor használja
/ida partíciókulcsot.Azure-előfizetés. Ha nem rendelkezik Azure-előfizetéssel, a kezdés előtt hozzon létre egyet ingyenesen .
IoT Hub az Azure-előfizetésben. Ha még nem rendelkezik központokkal, kövesse az IoT Hub létrehozása című témakörben leírt lépéseket.
Logikai alkalmazás létrehozása
Hozzunk létre egy logikai alkalmazást, és adjunk hozzá egy Event Grid-eseményindítót, amely figyeli a virtuális gép erőforráscsoportját.
Logikai alkalmazás erőforrás létrehozása
Az Azure portálon válassza az +Erőforrás létrehozása, majd az Integráció, és végül a logikai alkalmazás lehetőséget.
Töltse ki az űrlapot egy új logikai alkalmazás létrehozásához, amely a következőket tartalmazza:
Az Ön előfizetése
Az Ön erőforráscsoportja (vagy új létrehozása)
Az előfizetésben egyedi logikai alkalmazásnév
Az IoT Hub régiója
Egy Nem a naplóelemzés engedélyezése érdekében
Fogyasztás tervtípusa
Megjegyzés:
A Használat csomagtípus az a lehetőség, amely engedi a logikai alkalmazástervezőt a felhasználói felületen. Ha a Standard (alapértelmezett) lehetőséget választja, akkor létre kell hoznia egy új munkafolyamatot ahhoz, hogy a Logikai alkalmazás tervezője elérhetővé váljon.
Válassza a Véleményezés + Létrehozás lehetőséget a konfiguráció áttekintéséhez, majd válassza a Létrehozás lehetőséget a logikai alkalmazás létrehozásához.
Ezzel létrehozott egy Azure-erőforrást a logikai alkalmazás számára. Miután az Azure üzembe helyezi a logikai alkalmazást, válassza az Erőforrás megnyitása lehetőséget. A logikai alkalmazás tervezője a gyakori minták sablonjait mutatja be, így gyorsabban kezdheti el az első lépéseket.
A Logikai alkalmazás tervezőjében görgessen végig, amíg meg nem jelenik a Sablonok szakasz, majd válassza az Üres logikai alkalmazás lehetőséget, hogy a logikai alkalmazást az alapoktól kezdve felépíthesse.
Indítószó 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.
Az összekötők és az eseményindítók keresősávjában írja be a HTTP kifejezést, és nyomja le az Enter billentyűt.
Válassza ki a kérést , ha egy HTTP-kérés érkezik eseményindítóként.
Válassza a Minta payload használatával séma generálása opciót.
Illessze be a következő JSON-mintakódot a szövegmezőbe, majd válassza a Kész lehetőséget.
Ez a JSON csak sablonként használatos, így a pontos értékek nem fontosak.
[{ "id": "fbfd8ee1-cf78-74c6-dbcf-e1c58638ccbd", "topic": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/EGTESTRG/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/MYIOTHUB", "subject": "devices/Demo-Device-1", "eventType": "Microsoft.Devices.DeviceConnected", "eventTime": "2018-07-03T23:20:11.6921933+00:00", "data": { "deviceConnectionStateEventInfo": { "sequenceNumber": "000000000000000001D4132452F67CE200000002000000000000000000000001" }, "hubName": "MYIOTHUB", "deviceId": "48e44e11-1437-4907-83b1-4a8d7e89859e", "moduleId": "" }, "dataVersion": "1", "metadataVersion": "1" }]
Feltétel létrehozása
A feltételek segítenek adott műveletek futtatásában az adott feltétel átadása után. Ebben a cikkben a feltétel annak ellenőrzése, hogy az eventType csatlakoztatva van-e az eszközhöz, vagy az eszköz leválasztva van-e. Az eseménytípus teljesülésekor végrehajtott művelet egy dokumentum létrehozása az Azure Cosmos DB-ben. Ez a feltétel a Logikai alkalmazás tervezőjében jön létre.
Válassza az + Új lépés lehetőséget, majd a Beépített fület, majd keresse meg és válassza ki a Feltétel nevű vezérlőt.
Az Ön állapotában módosítsa a And lehetőséget Or (Vagy)-ra, mivel a kapcsolati eseményeket vagy a leválasztási eseményeket egyetlen elemzésben szeretnénk rögzíteni.
Válassza ki az Érték kiválasztása mezőben, és megjelenik egy előugró ablak, amely megjeleníti a dinamikus tartalmat – a kijelölhető mezőket.
Válassza az eventType lehetőséget. Az előugró ablak bezárul, és a Szövegtörzs elem automatikusan megjelenik az Előző lépések kimenetének kiválasztása elemben. A feltételes utasítás újbóli megnyitásához válassza a Feltétel lehetőséget.
Tartsa meg az egyenlő értéket.
A sor utolsó értékeként írja be a Microsoft.Devices.DeviceConnected értéket.
Másik sor hozzáadásához válassza a + Hozzáadás lehetőséget.
Ez a második sor hasonló az első sorhoz, azzal a különbséggel, hogy a leválasztási eseményeket keressük.
Használja az eventType, egyenlő, és Microsoft.Devices.DeviceDisconnected kifejezéseket a sorértékekhez.
A Ha igaz párbeszédpanelen válassza a Művelet hozzáadása lehetőséget.
Keresse meg a Cosmos DB-t, és válassza az Azure Cosmos DB – Dokumentum létrehozása vagy frissítése (V3) lehetőséget
Megjelenik a Dokumentum létrehozása vagy frissítése (V3) panel. Adja meg az alábbi értékeket a mezőkhöz:
Azure Cosmos DB-fiók neve: {Fióknév hozzáadása}
Adatbázis-azonosító: ToDoList
Gyűjteményazonosító: Elemek
Dokumentum: Válasszon
Current itema dinamikus tartalomparaméter-listábólMentse a logikai alkalmazást.
Az HTTP URL-cím másolása
Mielőtt kilép a Logic Apps Designerből, másolja ki azt az URL-címet, amelyet a logikai alkalmazás a kiváltó események figyelésére használ. Erre az URL-címre az Event Grid konfigurálásához lesz szükség.
Bontsa ki a HTTP-kérés fogadása eseményindító konfigurációs mezőt úgy, hogy kijelöli azt.
Másolja ki a HTTP POST URL értékét a mellette lévő másolás gombra kattintva.
Mentse ezt az URL-címet, hogy a következő szakaszban használhassa.
Az IoT Hub eseményeire való előfizetés beállítása
Ebben a szakaszban konfiguráljuk az IoT-központot, hogy közzétegye a bekövetkező eseményeket.
Az Azure Portalon keresse meg az IoT-központot.
Válassza az Események elemet.
Válassza az + Esemény-előfizetés lehetőséget.
Adja meg az esemény-előfizetés adatait: adjon meg egy leíró nevet, és válassza az Event Grid-sémáteseménysémaként.
Hozzon létre egy rendszertémakör-nevet az IoT Hub-erőforráshoz.
Töltse ki az Eseménytípusok mezőket. A legördülő listában válassza ki csak a Csatlakoztatott eszköz és Leválasztott eszköz elemeket. A lista bezárásához és a kijelölt elemek mentéséhez válassza a képernyőn bárhol máshol.
A Végpont részleteinél válassza a Végpont típusa lehetőségnél a Webhook opciót, majd kattintson a végpont kiválasztására, illessze be a logikai alkalmazásból másolt URL-címet, és erősítse meg a kiválasztást.
Az űrlapnak most az alábbi példához hasonlóan kell kinéznie:
Az eseményfeliratkozás mentéséhez válassza a Létrehozás lehetőséget.
Fontos
Várjon néhány percet, amíg az esemény feldolgozva lesz az eszköz futtatása előtt. Az Azure-szolgáltatások létrehozásakor vagy módosításakor a folyamat következő lépésének túl korai kezdeményezése szükségtelen hibákat okozhat. Ha például az IoT Hub nem aktív állapotban van, akkor nem áll készen az események fogadására. Ellenőrizze az IoT Hub áttekintési oldalát, hogy az IoT Hub aktív állapotban van-e. Ha nem, figyelmeztetés jelenik meg az oldal tetején.
Eszköz futtatása és események megfigyelése
Most, hogy az esemény-előfizetés be van állítva, teszteljük az eszköz csatlakoztatásával.
Eszköz regisztrálása az IoT Hubban
Az IoT Hubon válassza az Eszközök lehetőséget.
Válassza az +Eszköz hozzáadása lehetőséget a panel tetején.
Az Eszközazonosító mezőbe írja be a következőt:
Demo-Device-1.Válassza az Mentésgombot.
Válassza ki ismét az eszközt; ekkor a kapcsolati sztringek és a kulcsok ki vannak töltve. Másolja és mentse az elsődleges kapcsolati sztringet későbbi használatra.
Raspberry Pi-szimulátor indítása
Használjuk a Raspberry Pi webszimulátort az eszközkapcsolat szimulálásához.
Raspberry Pi-szimulátor indítása
Mintaalkalmazás futtatása a Raspberry Pi webszimulátoron
Ez a mintaalkalmazás aktivál egy eszközhöz csatlakoztatott eseményt.
A kódolási területen cserélje le a 15. sorban lévő helyőrzőt az előző szakasz végén mentett Azure IoT Hub eszköz kapcsolati sztringjére.
Futtassa az alkalmazást a Futtatás gombra kattintva.
A következő kimenethez hasonló kimenet jelenik meg, amely az érzékelő adatait és az IoT Hubnak küldött üzeneteket jeleníti meg.
A logikai alkalmazás áttekintési lapján ellenőrizheti, hogy a logika aktiválva van-e. A következőt írják: Sikeres vagy Sikertelen. Itt ellenőrizheti a logikai alkalmazás állapotát, ha hibaelhárításra van szükség. Számítson arra, hogy a kioldó futása után 15–30 másodperces késés következik be. Ha a logikai alkalmazás hibaelhárítására van szüksége, tekintse meg ezt a hibaelhárítási cikket.
Válassza a Leállítás lehetőséget a szimulátor leállításához, amely egy eszközről leválasztott eseményt indít el. Ezt az eseményt a logikai alkalmazás áttekintési oldalán naplózza a rendszer, ahogyan az ott naplózott kapcsolati eseményt.
Most már lefuttatott egy mintaalkalmazást az eszközének kapcsolódási és leválasztási eseményeinek gyűjtéséhez, amelyek az IoT-központjába kerülnek.
Események megfigyelése az Azure Cosmos DB-ben
A végrehajtott logikai alkalmazás eredményeit a Cosmos DB-dokumentumban tekintheti meg. A dokumentum az Elemek gyűjteményben jelenik meg a lap frissítésekor. Minden kapcsolatállapot-esemény létrehoz egy új, egyedi iddokumentumot. Az alábbi képen az eszköz indításakor (csatlakoztatva) létrehozott dokumentum látható. A csatlakoztatott eseménytípus szerepel a JSON-kimenetben.
Az Azure CLI használata
Az Azure Portal használata helyett az IoT Hub lépéseit az Azure CLI használatával hajthatja végre. További részletekért tekintse meg az Azure CLI-lapokat egy esemény-előfizetés létrehozásához és egy IoT-eszköz létrehozásához.
Erőforrások tisztí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.
Logikai alkalmazás
Ha nem szeretné elveszteni a logikai alkalmazás munkáját, a törlés helyett csak tiltsa le.
Nyissa meg a logikai alkalmazást.
Az Áttekintés lapon válassza a Törlés vagy a Letiltás lehetőséget.
Mindegyik előfizetés egy ingyenes IoT-központtal rendelkezhet. Ha ingyenes központot hozott létre az oktatóanyaghoz, azt nem kell törölnie a költségek megelőzéséhez.
IoT Hub vagy Event Grid
Keresse meg az IoT-központot.
Az Áttekintés oldalon válassza a Törlés elemet.
Még ha megtartja is az IoT Hubot, érdemes lehet törölnie a létrehozott esemény-előfizetést. Az IoT-központban válassza az Event Grid lehetőséget.
Válassza ki az eltávolítani kívánt esemény-előfizetést, majd válassza a Törlés lehetőséget.
Cosmos DB
Ha el szeretne távolítani egy Azure Cosmos DB-fiókot az Azure Portalról, lépjen az erőforrásra, és válassza a Fiók törlése lehetőséget a felső menüsávon. Tekintse meg az Azure Cosmos DB-fiók törlésének részletes utasításait.
Következő lépések
További információ az IoT Hub-eseményekre való reagálásról az Event Grid használatával a műveletek aktiválásához
További információ az Event Grid használatával elvégezhető műveletekről
Ismerje meg, hogyan használhatja az Event Gridet és az Azure Monitort az IoT Hubhoz való eszközkapcsolat figyelésére , diagnosztizálására és hibaelhárítására