Sdílet prostřednictvím


Kurz: Monitorování zařízení IoT a odesílání oznámení pomocí Azure Logic Apps

Pomocí Azure Logic Apps můžete monitorovat příchozí telemetrii zařízení ze služby IoT Hub a odesílat oznámení při aktivaci upozornění.

Kompletní diagram

Azure Logic Apps vám může pomoct orchestrovat pracovní postupy napříč místními a cloudovými službami, několika podniky a různými protokoly. Aplikace logiky začíná triggerem, za kterým následuje jedna nebo více akcí, které se dají sekvencovat pomocí předdefinovaných ovládacích prvků, jako jsou podmínky a iterátory. Díky této flexibilitě je Logic Apps ideálním řešením IoT pro scénáře monitorování IoT. Například přijetí dat ze zařízení v koncovém bodu ioT Hubu může iniciovat pracovní postupy aplikace logiky, které budou ukládat data do objektu blob služby Azure Storage, odesílat e-mailová upozornění, která varují před datovými anomáliemi, naplánovat návštěvu technika, pokud zařízení hlásí selhání atd.

V tomto kurzu provedete následující úlohy:

Vytvořte frontu služby Service Bus. Vytvořte trasu ve službě IoT Hub, která odesílá zprávy do fronty služby Service Bus, pokud zprávy obsahují neobvyklé čtení teploty. Vytvořte logickou aplikaci, která monitoruje zprávy přicházející do fronty a odesílá e-mailové upozornění.

Klientský kód spuštěný na vašem zařízení nastaví vlastnost aplikace, a to při každé zprávě telemetrie, temperatureAlertkterou odesílá do centra IoT. Když kód klienta zjistí teplotu nad danou prahovou hodnotou, nastaví tuto vlastnost na true; jinak nastaví vlastnost na false.

Zprávy přicházející do vašeho IoT uzlu vypadají podobně jako následující, s telemetrickými daty obsaženými v těle a s vlastností temperatureAlert obsaženou ve vlastnostech aplikace (systémové vlastnosti nejsou zobrazeny):

{
  "body": {
    "messageId": 18,
    "deviceId": "Raspberry Pi Web Client",
    "temperature": 27.796111770668457,
    "humidity": 66.77637926438427
  },
  "applicationProperties": {
    "temperatureAlert": "false"
  }
}

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Před zahájením tohoto kurzu připravte následující požadavky.

Vytvořte obor názvů a frontu pro službu Service Bus

Vytvořte oboru názvů a frontu Service Bus. Později v tomto článku vytvoříte ve službě IoT Hub pravidlo směrování, které bude směrovat zprávy, které obsahují upozornění na teplotu ve frontě služby Service Bus. Aplikace logiky monitoruje frontu příchozích zpráv a odesílá oznámení pro každou výstrahu.

Vytvořte obor názvů služby Service Bus

  1. Na webu Azure Portal pomocí vyhledávacího panelu vyhledejte a vyberte Service Bus.

  2. Vyberte Vytvořit a vytvořte obor názvů služby Service Bus.

  3. V podokně Vytvořit obor názvů zadejte následující informace:

    Parameter Hodnota
    Subscription Zvolte stejné předplatné, které obsahuje vaše centrum IoT.
    Skupina zdrojů Zvolte stejnou skupinu prostředků, která obsahuje vaše centrum IoT.
    Název oboru názvů Zadejte název oboru názvů Service Bus. Obor názvů musí být jedinečný v rámci Azure.
    Location Zvolte stejné umístění, které používá vaše centrum IoT.
    Cenová úroveň V rozevíracím seznamu vyberte Základní . Pro účely tohoto kurzu stačí úroveň Basic.
  4. Vyberte možnost Zkontrolovat a vytvořit.

  5. Vyberte Vytvořit.

  6. Počkejte, až se deployment dokončí, a pak klikněte na Přejít k prostředku.

Přidejte frontu služby Service Bus do oboru názvů

  1. Na stránce Přehled vašeho oboru názvů služby Service Bus vyberte Fronta.

    Snímek obrazovky přehledu oboru názvů pro přidání fronty.

  2. Do pole Název zadejte název fronty. Přijměte výchozí hodnoty pro ostatní pole a vyberte Vytvořit.

  3. V oboru názvů služby Service Bus vyberte zásady sdíleného přístupu v části Nastavení nabídky prostředků.

  4. Vyberte zásadu RootManageSharedAccessKey a otevřete její podrobnosti.

  5. Zkopírujte hodnotu primárního připojovacího řetězce a uložte ji pro pozdější použití v tomto kurzu při konfiguraci aplikace logiky.

Přidání vlastního koncového bodu a pravidla směrování v rámci IoT centra

Přidejte do centra IoT vlastní koncový bod pro frontu Service Bus. Pak vytvořte pravidlo směrování zpráv, které nasměruje zprávy obsahující upozornění na teplotu na tento koncový bod, kde je zpracovává vaše logická aplikace. Pravidlo směrování používá směrovací dotaz k temperatureAlert = "true"předávání zpráv na základě hodnoty temperatureAlert vlastnosti aplikace nastavené klientským kódem spuštěným na zařízení. Další informace najdete v tématu Dotaz směrování zpráv na základě vlastností zprávy.

Přidání vlastního koncového bodu a trasy

  1. Na webu Azure Portal přejděte do centra IoT.

  2. V nabídce prostředků v části Nastavení centra vyberte Směrování zpráv a pak vyberte Přidat.

    Snímek obrazovky znázorňující umístění tlačítka Přidat pro přidání nové trasy do centra IoT

  3. Na kartě Koncový bod vytvořte koncový bod pro frontu služby Service Bus zadáním následujících informací:

    Parameter Hodnota
    Typ koncového bodu Vyberte frontu služby Service Bus.
    Název koncového bodu Zadejte název nového koncového bodu, který se mapuje na frontu služby Service Bus.
    Jmenový prostor služby Service Bus Pomocí rozbalovací nabídky vyberte namespace služby Service Bus, který jste vytvořili v předchozí části.
    fronty služby Service Bus Pomocí rozevírací nabídky vyberte frontu Service Bus, kterou jste vytvořili ve svém oboru názvů.

    Snímek obrazovky, který ukazuje, jak vytvořit koncový bod fronty služby Service Bus pro trasu

  4. Vyberte Vytvořit + další.

  5. Na kartě Trasa zadejte následující informace a vytvořte trasu, která odkazuje na koncový bod fronty služby Service Bus:

    Parameter Hodnota
    název Zadejte jedinečný název trasy.
    Zdroj dat Ponechte výchozí zdroj dat Device Telemetry Message.
    Dotaz směrování Zadejte temperatureAlert = "true" jako řetězec dotazu.

    Snímek obrazovky znázorňující přidání trasy s dotazem

  6. Vyberte Vytvořit a přeskočit rozšiřování.

Konfigurace Logic Apps pro oznámení

V předchozí části jste nastavili centrum IoT tak, aby směroval zprávy obsahující upozornění na teplotu do fronty služby Service Bus. Teď nastavíte aplikaci logiky pro monitorování fronty služby Service Bus a odeslání e-mailového oznámení při každém přidání zprávy do fronty.

Vytvoření aplikace logiky

  1. Na webu Azure Portal vyhledejte a vyberte Logic Apps.

  2. Vyberte Přidat a vytvořte novou aplikaci logiky.

  3. Na kartě ZákladyVytvořit Logic App zadejte následující informace:

    Parameter Hodnota
    Skupina zdrojů Vyberte stejnou skupinu prostředků, která obsahuje vaše centrum IoT.
    název Zadejte název aplikace logiky.
    Oblast Vyberte umístění blízko vás.
    Typ plánu Vyberte Consumption, což je dostačující pro účely tohoto kurzu.

    Snímek obrazovky znázorňující vytvoření aplikace logiky na webu Azure Portal

  4. Vyberte možnost Zkontrolovat a vytvořit.

  5. Vyberte Vytvořit.

  6. Po dokončení nasazení vyberte Přejít k prostředku a otevřete aplikaci logiky.

Konfigurujte spouštěč logické aplikace

  1. Na stránce prostředku aplikace logiky v Azure portálu otevřete Návrhář aplikace logiky v části Vývojové nástroje v nabídce prostředku.

  2. V návrháři posuňte zobrazení dolů k Šablonám a vyberte Prázdnou logickou aplikaci.

    Snímek obrazovky znázorňující výběr šablony Prázdná logická aplikace

  3. Výběrem karty Vše zobrazíte všechny konektory a triggery, potom vyberte Service Bus.

    Vyberte Service Bus a začněte vytvářet aplikaci logiky na webu Azure Portal.

  4. V části Triggery vyberte Při doručení jedné nebo více zpráv do fronty (automatické dokončování).

    Na webu Azure Portal vyberte trigger vaší aplikace logiky.

  5. Vytvořte připojení ke službě Service Bus.

    1. Zadejte název připojení a vložte připojovací řetězec , který jste zkopírovali z oboru názvů služby Service Bus.

    2. Vyberte Vytvořit.

    3. Na další obrazovce pomocí rozevírací nabídky vyberte frontu, kterou jste vytvořili v názvovém prostoru služby Service Bus. Potom zadejte 175maximální počet zpráv.

      Snímek obrazovky, který znázorňuje, jak konfigurovat nastavení fronty v návrháři aplikací Logic

  6. Výběrem možnosti Uložit v nabídce návrháře aplikace logiky uložte provedené změny.

Nakonfigurujte akci aplikace logiky

  1. V návrháři aplikace logiky vyberte Nový krok .

  2. Vytvořte připojení služby SMTP.

    1. Vyhledejte a vyberte SMTP.

      Snímek obrazovky znázorňující výběr připojení SMTP v návrháři aplikace logiky

    2. Jako akci pro tento krok vyberte Odeslat e-mail (V3 ).

    3. Zadejte název připojení a potom vyplňte zbývající pole informacemi SMTP pro e-mailový účet, který chcete použít k odesílání zpráv s oznámením.

      Pomocí následujících odkazů vyhledejte informace SMTP v závislosti na poskytovateli pošty:

      Poznámka:

      K navázání připojení možná budete muset zakázat protokol TLS/SSL. Pokud se jedná o tento případ a po navázání připojení chcete protokol TLS znovu povolit, podívejte se na volitelný krok na konci této části.

      Snímek obrazovky znázorňující konfiguraci nastavení připojení SMTP v návrháři aplikace logiky

    4. Vyberte Vytvořit.

  3. Nakonfigurujte akci Odeslat e-mail .

    1. V rozevíracím seznamu Přidat nový parametr v kroku Odeslat e-mail vyberte následující parametry:

      • Od
      • do
      • Předmět
      • Tělo

      Kliknutím nebo klepnutím na libovolné místo na obrazovce zavřete okno výběru.

      Vyberte pole připojení SMTP, která chcete zahrnout do e-mailu.

    2. Zadejte následující informace pro parametry e-mailu, které jste vybrali v předchozím kroku:

      Parameter Hodnota
      Od E-mailová adresa, kterou jste nakonfigurovali pro připojení SMTP.
      do E-mailová adresa nebo adresy, na které chcete odesílat e-maily s oznámením.
      Předmět High temperature detected.
      Tělo High temperature detected.

      Pokud se otevře dialogové okno Přidat dynamický obsah , zavřete ho výběrem možnosti Skrýt . V tomto kurzu nepoužíváte dynamický obsah.

      Zadejte podrobnosti pro e-mailová pole připojení SMTP.

  4. Výběrem možnosti Uložit uložte připojení SMTP.

  5. (Volitelné) Pokud jste museli protokol TLS zakázat, abyste vytvořili připojení ke svému poskytovateli e-mailu a chcete ho znovu povolit, postupujte takto:

    1. V podokně aplikace logiky v části Vývojové nástroje vyberte připojení rozhraní API.

    2. V seznamu připojení rozhraní API vyberte připojení SMTP.

    3. V podokně Připojení k rozhraní SMTP v části Obecné vyberte Upravit připojení rozhraní API.

    4. V podokně Upravit připojení rozhraní API vyberte Povolit SSL?, zadejte znovu heslo pro váš e-mailový účet a vyberte Uložit.

      Upravte připojení rozhraní SMTP API v aplikaci logiky na webu Azure Portal.

Aplikace logiky je teď připravená zpracovávat upozornění na teplotu z fronty služby Service Bus a odesílat oznámení do vašeho e-mailového účtu.

Testování aplikace logiky

Začněte odesílat zprávy o teplotě ze zařízení IoT a otestujte kanál monitorování a oznámení.

  1. Spusťte na svém zařízení klientskou aplikaci. Kód klienta náhodně vypisuje telemetrické zprávy a nastaví vlastnost temperatureAlert na true, když teplota překročí 30 C.

  2. Měli byste začít přijímat e-mailová oznámení odesílaná aplikací logiky.

    Poznámka:

    Váš poskytovatel e-mailových služeb možná bude muset ověřit identitu odesílatele, abyste měli jistotu, že e-mail odesíláte vy.

Vyčistěte zdroje

Pokud už nepotřebujete prostředky, které jste vytvořili v tomto kurzu, odstraňte je a skupinu prostředků na portálu. Uděláte to tak, že vyberete skupinu prostředků, která obsahuje centrum IoT, a vyberete Odstranit.

Případně použijte rozhraní příkazového řádku:

# Delete your resource group and its contents
az group delete --name <RESOURCE_GROUP_NAME>

Další kroky

V tomto kurzu jste vytvořili aplikaci logiky, která propojuje centrum IoT a vaši poštovní schránku pro monitorování teploty a oznámení.

Pokud chcete pokračovat v začátcích se službou Azure IoT Hub a prozkoumat všechny rozšířené scénáře IoT, projděte si následující: