Dela via


Självstudie: Övervaka IoT-enheter och skicka meddelanden med Azure Logic Apps

Använd Azure Logic Apps för att övervaka inkommande enhetstelemetri från IoT Hub och skicka meddelanden när aviseringar utlöses.

Helhetsdiagram

Azure Logic Apps kan hjälpa dig att samordna arbetsflöden mellan lokala tjänster och molntjänster, flera företag och olika protokoll. En logikapp börjar med en utlösare som sedan följs av en eller flera åtgärder som kan sekvenseras med hjälp av inbyggda kontroller, till exempel villkor och iteratorer. Den här flexibiliteten gör Logic Apps till en idealisk IoT-lösning för IoT-övervakningsscenarier. Till exempel kan ankomsten av data från en enhet till en IoT Hub-slutpunkt initiera logikapparbetsflöden för att lagra data i en Azure Storage-blob, skicka e-postaviseringar för att varna för dataavvikelser, schemalägga ett teknikerbesök om en enhet rapporterar ett fel och så vidare.

I den här självstudien utför du följande uppgifter:

Skapa en Service Bus-kö. Skapa en väg i din IoT-hubb som skickar meddelanden till Service Bus-kön om meddelandena innehåller avvikande temperaturavläsningar. Skapa en logikapp som bevakar meddelanden som anländer till kön och skickar en e-postavisering.

Klientkoden som körs på enheten anger en programegenskap, temperatureAlert, på varje telemetrimeddelande som skickas till din IoT-hubb. När klientkoden identifierar en temperatur över ett visst tröskelvärde anger den den här egenskapen till true, annars anger den egenskapen till false.

Meddelanden som kommer till din IoT-hubb ser ut ungefär så här, med telemetridata i brödtexten temperatureAlert och egenskapen som finns i programegenskaperna (systemegenskaper visas inte):

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

Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.

Förutsättningar

Förbered följande förutsättningar innan du påbörjar den här självstudien.

Skapa Service Bus-namnområde och kö

Skapa ett namnområde och en kö för Service Bus. Senare i den här artikeln skapar du en routningsregel i din IoT-hubb för att dirigera meddelanden som innehåller en temperaturavisering till Service Bus-kön. En logikapp övervakar kön för inkommande meddelanden och skickar ett meddelande för varje avisering.

Skapa ett Service Bus-namnområde

  1. I Azure-portalen använder du sökfältet för att söka efter och välja Service Bus.

  2. Välj Skapa för att skapa ett Service Bus-namnområde.

  3. Ange följande information i fönstret Skapa namnområde :

    Parameter Värde
    Subscription Välj samma prenumeration som innehåller din IoT-hubb.
    resursgrupp Välj samma resursgrupp som innehåller din IoT-hubb.
    Namn på namnrymd Ange ett namn för service bus-namnområdet. Namnområdet måste vara unikt i Hela Azure.
    Läge Välj samma plats som din IoT-hubb använder.
    Prisnivå Välj Grundläggande i listrutan. Basic-nivån räcker för den här självstudien.
  4. Välj Förhandsgranska + skapa.

  5. Välj Skapa.

  6. Vänta tills distributionen har slutförts och välj sedan Gå till resurs.

Lägga till en Service Bus-kö i namnområdet

  1. På sidan Översikt i Service Bus-namnområdet väljer du .

    Skärmbild av översiktssidan för namnområdet för att lägga till en kö.

  2. Ange ett namn för kön i fältet Namn . Acceptera standardvärdena för de andra fälten och välj Skapa.

  3. I Service Bus-namnområdet väljer du Principer för delad åtkomst i avsnittet Inställningar på resursmenyn.

  4. Välj principen RootManageSharedAccessKey för att öppna dess information.

  5. Kopiera värdet för Primär anslutningssträng och spara den för att använda den senare i den här självstudien när du konfigurerar logikappen.

Lägga till en anpassad slutpunkt och routningsregel i din IoT-hubb

Lägg till en anpassad slutpunkt för Service Bus-kön till din IoT-hubb. Skapa sedan en regel för meddelanderoutning för att dirigera meddelanden som innehåller en temperaturavisering till slutpunkten, där de hämtas av logikappen. Routningsregeln använder en routningsfråga, , temperatureAlert = "true"för att vidarebefordra meddelanden baserat på värdet temperatureAlert för den programegenskap som angetts av klientkoden som körs på enheten. Mer information finns i Meddelanderoutningsfråga baserat på meddelandeegenskaper.

Lägga till en anpassad slutpunkt och väg

  1. Gå till din IoT-hubb i Azure-portalen.

  2. På resursmenyn under Hubbinställningar väljer du Meddelanderoutning och sedan Lägg till.

    Skärmbild som visar platsen för knappen Lägg till för att lägga till en ny väg i din IoT-hubb.

  3. På fliken Slutpunkt skapar du en slutpunkt för Service Bus-kön genom att ange följande information:

    Parameter Värde
    Slutpunktstyp Välj Service Bus-kö.
    Slutpunktsnamn Ange ett namn för den nya slutpunkten som mappar till Service Bus-kön.
    Service Bus-namnområde Använd den nedrullningsbara menyn för att välja det Service Bus-namnområde som du skapade i föregående avsnitt.
    Service Bus-kö Använd den nedrullningsbara menyn för att välja den Service Bus-kö som du skapade i namnområdet.

    Skärmbild som visar hur du skapar en service bus-köslutpunkt för din väg.

  4. Välj Skapa + nästa.

  5. På fliken Väg anger du följande information för att skapa en väg som pekar på service bus-köns slutpunkt:

    Parameter Värde
    Namn Ange ett unikt namn för vägen.
    Datakälla Behåll standarddatakällan för enhetstelemetrimeddelande .
    Routningsfråga Ange temperatureAlert = "true" som frågesträng.

    Skärmbild som visar hur du lägger till en väg med en fråga.

  6. Välj Skapa + hoppa över förbättringar.

Konfigurera Logic Apps för meddelanden

I föregående avsnitt konfigurerar du din IoT-hubb för att dirigera meddelanden som innehåller en temperaturavisering till Service Bus-kön. Nu konfigurerar du en logikapp för att övervaka Service Bus-kön och skicka ett e-postmeddelande när ett meddelande läggs till i kön.

Skapa en logikapp

  1. I Azure-portalen söker du efter och väljer Logic Apps.

  2. Välj Lägg till för att skapa en ny logikapp.

  3. Ange följande information på fliken Grundläggande i Skapa logikapp:

    Parameter Värde
    resursgrupp Välj samma resursgrupp som innehåller din IoT-hubb.
    Namn Ange ett namn för logikappen.
    Region Välj en plats nära dig.
    Typ av plan Välj Förbrukning, vilket räcker för den här självstudien.

    Skärmbild som visar hur du skapar en logikapp i Azure-portalen.

  4. Välj Förhandsgranska + skapa.

  5. Välj Skapa.

  6. När distributionen är klar väljer du Gå till resurs för att öppna logikappen.

Konfigurera logikappens utlösare

  1. På resurssidan för logikappen i Azure-portalen öppnar du Logikappdesignern från avsnittet Utvecklingsverktyg på resursmenyn.

  2. Rulla ned till Mallar i designern och välj Tom logikapp.

    Skärmbild som visar hur du väljer mallen för Tom Logic App.

  3. Välj fliken Alla för att visa alla anslutningsappar och utlösare och välj sedan Service Bus.

    Välj Service Bus för att börja skapa logikappen i Azure-portalen.

  4. Under Utlösare väljer du När ett eller flera meddelanden anländer till en kö (automatiskt slutförande).

    Välj utlösaren för logikappen i Azure-portalen.

  5. Skapa en Service Bus-anslutning.

    1. Ange ett anslutningsnamn och klistra sedan in anslutningssträngen som du kopierade från Service Bus-namnområdet.

    2. Välj Skapa.

    3. På nästa skärm använder du den nedrullningsbara menyn för att välja den kö som du skapade i Service Bus-namnområdet. Ange 175 sedan för Maximalt antal meddelanden.

      Skärmbild som visar hur du konfigurerar köinställningar i Logikappdesignern.

  6. Spara ändringarna genom att välja Spara på logikappens designermeny.

Konfigurera logikappens åtgärd

  1. Välj Nytt steg i logikappdesignern.

  2. Skapa en SMTP-tjänstanslutning.

    1. Sök efter och välj SMTP.

      Skärmbild som visar hur du väljer en SMTP-anslutning i logikappdesignern.

    2. Välj Skicka e-post (V3) som åtgärd för det här steget.

    3. Ange ett anslutningsnamn och fyll sedan i resten av fälten med SMTP-informationen för det e-postkonto som du vill använda för att skicka meddelandena.

      Använd följande länkar för att hitta din SMTP-information, beroende på din e-postleverantör:

      Anmärkning

      Du kan behöva inaktivera TLS/SSL för att upprätta anslutningen. Om så är fallet och du vill återaktivera TLS när anslutningen har upprättats läser du det valfria steget i slutet av det här avsnittet.

      Skärmbild som visar hur du konfigurerar SMTP-anslutningsinställningarna i logikappdesignern.

    4. Välj Skapa.

  3. Konfigurera åtgärden Skicka e-post .

    1. I listrutan Lägg till ny parameter i steget Skicka e-post väljer du följande parametrar:

      • från
      • till
      • Subjekt
      • Kropp

      Klicka eller tryck var som helst på skärmen för att stänga markeringsrutan.

      Välj e-postfält för SMTP-anslutning som ska inkluderas i e-post.

    2. Ange följande information för de e-postparametrar som du valde i föregående steg:

      Parameter Värde
      från Den e-postadress som du konfigurerade för SMTP-anslutningen.
      till E-postadressen eller adresserna där du vill skicka e-postaviseringar.
      Subjekt High temperature detected.
      Kropp High temperature detected.

      Om dialogrutan Lägg till dynamiskt innehåll öppnas väljer du Dölj för att stänga den. Du använder inte dynamiskt innehåll i den här handledningen.

      Ange information om e-postfält för SMTP-anslutning.

  4. Välj Spara för att spara SMTP-anslutningen.

  5. (Valfritt) Om du var tvungen att inaktivera TLS för att upprätta en anslutning till din e-postleverantör och vill återaktivera den följer du dessa steg:

    1. I fönstret Logikapp går du till Utvecklingsverktyg och väljer API-anslutningar.

    2. I listan över API-anslutningar väljer du SMTP-anslutningen.

    3. I fönstret smtp API-anslutning går du till Allmänt och väljer Redigera API-anslutning.

    4. I fönstret Redigera API-anslutning väljer du Aktivera SSL?, anger lösenordet för ditt e-postkonto igen och väljer Spara.

      Redigera SMTP API-anslutning i logikappen i Azure-portalen.

Logikappen är nu redo att bearbeta temperaturaviseringar från Service Bus-kön och skicka meddelanden till ditt e-postkonto.

Testa logikappen

Börja skicka temperaturmeddelanden från din IoT-enhet för att testa övervaknings- och meddelandepipelinen.

  1. Starta klientprogrammet på enheten. Klientkoden matar slumpmässigt ut telemetrimeddelanden och anger temperatureAlert egenskapen till true när temperaturen överstiger 30 C.

  2. Du bör börja ta emot e-postaviseringar som skickas av logikappen.

    Anmärkning

    Din e-posttjänstleverantör kan behöva verifiera avsändarens identitet för att se till att det är du som skickar e-postmeddelandet.

Rensa resurser

Om du inte längre behöver de resurser som du skapade i den här självstudien tar du bort den och resursgruppen i portalen. Om du vill göra det väljer du den resursgrupp som innehåller din IoT-hubb och väljer Ta bort.

Du kan också använda CLI:

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

Nästa steg

I den här självstudien skapade du en logikapp som ansluter din IoT-hubb och din postlåda för temperaturövervakning och aviseringar.

Om du vill fortsätta att komma igång med Azure IoT Hub och utforska alla utökade IoT-scenarier kan du läsa följande: