Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure Logic Apps umożliwia monitorowanie danych telemetrycznych przychodzących urządzeń z usługi IoT Hub i wysyłanie powiadomień po wyzwoleniu alertów.
Usługa Azure Logic Apps ułatwia organizowanie przepływów pracy między usługami lokalnymi i w chmurze, wieloma przedsiębiorstwami i różnymi protokołami. Aplikacja logiki zaczyna się od wyzwalacza, po którym następuje co najmniej jedna akcja, którą można sekwencjonować przy użyciu wbudowanych kontrolek, takich jak warunki i iteratory. Ta elastyczność sprawia, że usługa Logic Apps jest idealnym rozwiązaniem IoT dla scenariuszy monitorowania IoT. Na przykład przybycie danych z urządzenia w punkcie końcowym usługi IoT Hub może zainicjować przepływy pracy aplikacji logicznych do przechowywania danych w blob Azure Storage, wysyłanie alertów e-mail ostrzegających o anomaliach w danych, zaplanowanie wizyty technika, jeśli urządzenie zgłosi usterkę, itd.
W tym samouczku wykonasz następujące zadania:
Utwórz kolejkę usługi Service Bus. Utwórz trasę w centrum IoT, która wysyła komunikaty do kolejki usługi Service Bus, jeśli komunikaty zawierają nietypowe odczyty temperatury. Utwórz aplikację logiczną, która nadzoruje wiadomości przychodzące do kolejki i wysyła alert e-mail.
Kod klienta uruchomiony na urządzeniu ustawia właściwość aplikacji temperatureAlert, w każdej wiadomości telemetrii wysyłanej do centrum IoT. Gdy kod klienta wykryje temperaturę powyżej danego progu, ustawia tę właściwość na true; w przeciwnym razie ustawia właściwość na false.
Komunikaty przychodzące do centrum IoT Hub przypominają poniższe, z danymi telemetrycznymi zawartymi w treści i właściwością temperatureAlert zawartą we właściwościach aplikacji (właściwości systemowe nie są wyświetlane):
{
"body": {
"messageId": 18,
"deviceId": "Raspberry Pi Web Client",
"temperature": 27.796111770668457,
"humidity": 66.77637926438427
},
"applicationProperties": {
"temperatureAlert": "false"
}
}
Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
Wymagania wstępne
Przed rozpoczęciem tego samouczka przygotuj następujące wymagania wstępne.
Aktywna subskrypcja platformy Azure.
Centrum IoT w ramach subskrypcji.
Aplikacja kliencka, która wysyła dane temperatury do centrum Azure IoT Hub. Ten samouczek filtruje wiadomości między urządzeniem a chmurą na podstawie właściwości wiadomości zwanej
temperatureAlert. Oto niektóre przykłady, które generują komunikaty z tą właściwością:- .NET SDK: SimulatedDevice
- Zestaw Java SDK: send-event
- Zestaw SDK Node.js: simple_sample_device
- Zestaw SDK języka C: iothub_II_client_shared_sample
- Bez kodu: symulator online urządzenia Raspberry Pi
Utwórz przestrzeń nazw usługi Service Bus i kolejkę
Utwórz przestrzeń nazw i kolejkę usługi Service Bus. W dalszej części tego artykułu utworzysz regułę routingu w centrum IoT, aby kierować komunikaty zawierające alert temperatury do kolejki usługi Service Bus. Aplikacja logiczna monitoruje kolejkę nadchodzących komunikatów i wysyła powiadomienie dla każdego alarmu.
Tworzenie przestrzeni nazw usługi Service Bus
W witrynie Azure Portal użyj paska wyszukiwania, aby wyszukać i wybrać usługę Service Bus.
Wybierz pozycję Utwórz , aby utworzyć przestrzeń nazw usługi Service Bus.
W okienku Tworzenie przestrzeni nazw podaj następujące informacje:
Parameter Wartość Subscription Wybierz tę samą subskrypcję, która zawiera centrum IoT. Grupa zasobów Wybierz tę samą grupę zasobów, która zawiera centrum IoT Hub. Nazwa przestrzeni nazw Podaj nazwę przestrzeni nazw usługi Service Bus. Przestrzeń nazw musi być unikatowa na platformie Azure. Lokalizacja Wybierz tę samą lokalizację, która jest używana przez centrum IoT. Poziom cenowy Z listy rozwijanej wybierz pozycję Podstawowa . Podstawowy poziom jest wystarczający na potrzeby tego samouczka. Wybierz opcję Recenzja i utwórz.
Wybierz Utwórz.
Poczekaj na zakończenie wdrożenia, a następnie wybierz pozycję Przejdź do zasobu.
Dodaj kolejkę usługi Service Bus do przestrzeni nazw
Na stronie Przegląd w przestrzeni nazw Service Bus wybierz pozycję Kolejka.
Podaj nazwę kolejki w polu Nazwa. Zaakceptuj wartości domyślne dla innych pól i wybierz pozycję Utwórz.
W przestrzeni nazw usługi Service Bus wybierz pozycję Zasady dostępu współdzielonego w sekcji Ustawienia menu zasobów.
Wybierz politykę RootManageSharedAccessKey, aby otworzyć jej szczegóły.
Skopiuj wartość Podstawowe parametry połączenia i zapisz je w celu użycia w dalszej części tego samouczka podczas konfigurowania aplikacji logiki.
Dodaj niestandardowy punkt końcowy i regułę routingu do IoT Hub
Dodaj niestandardowy punkt końcowy kolejki usługi Service Bus do centrum IoT. Następnie utwórz regułę rozsyłania komunikatów, aby kierować komunikaty zawierające alert temperatury do tego punktu końcowego, w którym są pobierane przez aplikację logiki. Reguła routingu używa zapytania routingu , temperatureAlert = "true"do przekazywania komunikatów na podstawie wartości temperatureAlert właściwości aplikacji ustawionej przez kod klienta uruchomiony na urządzeniu. Aby dowiedzieć się więcej, zobacz Zapytanie dotyczące routingu komunikatów na podstawie właściwości komunikatów.
Dodawanie niestandardowego punktu końcowego i trasy
W portalu Azure przejdź do centrum IoT.
W menu zasobów w obszarze Ustawienia centrum wybierz pozycję Routing komunikatów , a następnie wybierz pozycję Dodaj.
Na karcie Punkt końcowy utwórz punkt końcowy dla kolejki usługi Service Bus, podając następujące informacje:
Parameter Wartość Typ punktu końcowego Wybierz kolejkę usługi Service Bus. Nazwa punktu końcowego Podaj nazwę nowego punktu końcowego odwołującym się do kolejki Service Bus. Przestrzeń nazw usługi Service Bus Użyj menu rozwijanego, aby wybrać przestrzeń nazw usługi Service Bus utworzoną w poprzedniej sekcji. kolejki Service Bus Użyj menu rozwijanego, aby wybrać kolejkę usługi Service Bus utworzoną w przestrzeni nazw.
Wybierz pozycję Utwórz i dalej.
Na karcie Trasa wprowadź następujące informacje, aby utworzyć trasę wskazującą punkt końcowy kolejki usługi Service Bus:
Parameter Wartość Nazwa Podaj unikatową nazwę trasy. Źródło danych Zachowaj domyślne źródło danych komunikatu telemetrycznego urządzenia . Zapytanie dotyczące routingu Wprowadź temperatureAlert = "true"jako ciąg zapytania.
Wybierz Utwórz + pomiń wzbogacenia.
Konfigurowanie usługi Logic Apps na potrzeby powiadomień
W poprzedniej sekcji skonfigurujesz centrum IoT w celu kierowania komunikatów zawierających alert temperatury do kolejki usługi Service Bus. Teraz skonfigurujesz aplikację logiki do monitorowania kolejki usługi Service Bus i wysyłasz powiadomienie e-mail za każdym razem, gdy wiadomość zostanie dodana do kolejki.
Tworzenie aplikacji logiki
W witrynie Azure Portal wyszukaj i wybierz pozycję Logic Apps.
Wybierz pozycję Dodaj , aby utworzyć nową aplikację logiki.
Wprowadź następujące informacje na karcie Podstawy zakładki Tworzenie Logic App:
Parameter Wartość Grupa zasobów Wybierz tę samą grupę zasobów, która zawiera centrum IoT Hub. Nazwa Podaj nazwę aplikacji logiki. Region Wybierz blisko siebie lokalizację. Typ planu Wybierz pozycję Zużycie, które jest wystarczające na potrzeby tego samouczka.
Wybierz opcję Recenzja i utwórz.
Wybierz Utwórz.
Po zakończeniu wdrażania wybierz opcję Przejdź do zasobu, aby otworzyć Logic App.
Skonfiguruj wyzwalacz aplikacji logiki
Na stronie zasobu aplikacji logiki w witrynie Azure Portal otwórz projektanta aplikacji logiki w sekcji Narzędzia programistyczne w menu zasobów.
W edytorze przewiń w dół do sekcji Szablony i wybierz Pusta aplikacja logiczna.
Wybierz kartę Wszystkie , aby wyświetlić wszystkie łączniki i wyzwalacze, a następnie wybierz pozycję Service Bus.
W obszarze Wyzwalacze wybierz Gdy co najmniej jeden komunikat dociera do kolejki (automatyczne uzupełnianie).
Utwórz połączenie z usługi Service Bus.
Podaj nazwę połączenia , a następnie wklej parametry połączenia skopiowane z przestrzeni nazw usługi Service Bus.
Wybierz Utwórz.
Na następnym ekranie użyj menu rozwijanego, aby wybrać kolejkę utworzoną w przestrzeni nazw usługi Service Bus. Następnie wprowadź wartość w polu
175Maksymalna liczba komunikatów.
Wybierz pozycję Zapisz w menu projektanta aplikacji logiki, aby zapisać zmiany.
Konfigurowanie akcji aplikacji logiki
Wybierz pozycję Nowy krok w projektancie aplikacji logiki.
Utwórz połączenie usługi SMTP.
Wyszukaj i wybierz pozycję SMTP.
Wybierz pozycję Wyślij wiadomość e-mail (wersja 3) jako akcję dla tego kroku.
Podaj nazwę połączenia, a następnie wypełnij pozostałe pola informacjami SMTP dla konta e-mail, którego chcesz użyć do wysyłania wiadomości z powiadomieniami.
Skorzystaj z poniższych linków, aby znaleźć informacje SMTP w zależności od dostawcy poczty:
Uwaga / Notatka
Może być konieczne wyłączenie protokołu TLS/SSL w celu nawiązania połączenia. Jeśli tak jest i chcesz ponownie włączyć protokół TLS po nawiązaniu połączenia, zobacz opcjonalny krok na końcu tej sekcji.
Wybierz Utwórz.
Skonfiguruj akcję Wyślij wiadomość e-mail .
Z listy rozwijanej Dodaj nowy parametr w kroku Wyślij wiadomość e-mail wybierz następujące parametry:
- Od
- do
- Temat
- Treść
Kliknij lub naciśnij dowolne miejsce na ekranie, aby zamknąć pole wyboru.
Wprowadź następujące informacje dotyczące parametrów poczty e-mail wybranych w poprzednim kroku:
Parameter Wartość Od Adres e-mail skonfigurowany dla połączenia SMTP. do Adres e-mail lub adresy, na których chcesz wysyłać wiadomości e-mail z powiadomieniami. Temat High temperature detected.Treść High temperature detected.Jeśli zostanie otwarte okno dialogowe Dodawanie zawartości dynamicznej , wybierz pozycję Ukryj , aby go zamknąć. W tym samouczku nie używasz dynamicznej zawartości.
Wybierz pozycję Zapisz , aby zapisać połączenie SMTP.
(Opcjonalnie) Jeśli konieczne było wyłączenie protokołu TLS w celu nawiązania połączenia z dostawcą poczty e-mail i ponowne włączenie go, wykonaj następujące kroki:
W okienku Aplikacja logiki w obszarze Narzędzia programistyczne wybierz pozycję Połączenia interfejsu API.
Z listy połączeń interfejsu API wybierz połączenie SMTP.
W okienku Połączenie z interfejsem API smtp w obszarze Ogólne wybierz pozycję Edytuj połączenie interfejsu API.
W okienku Edytowanie połączenia interfejsu API wybierz pozycję Włącz protokół SSL?, wprowadź ponownie hasło dla konta e-mail, a następnie wybierz pozycję Zapisz.
Aplikacja logiczna jest teraz gotowa do przetwarzania alertów dotyczących temperatury z kolejki w usłudze Service Bus i wysyłania powiadomień do twojego konta e-mail.
Testowanie aplikacji logiki
Rozpocznij wysyłanie komunikatów o temperaturze z urządzenia IoT, aby przetestować potok monitorowania i powiadomień.
Uruchom aplikację kliencą na urządzeniu. Kod klienta losowo generuje komunikaty telemetryczne i ustawia
temperatureAlertwłaściwość natruewartość, gdy temperatura przekracza 30 C.Należy zacząć otrzymywać powiadomienia e-mail wysyłane przez aplikację logiki.
Uwaga / Notatka
Dostawca usługi poczty e-mail może wymagać zweryfikowania tożsamości nadawcy, aby upewnić się, że jest to użytkownik, który wysyła wiadomość e-mail.
Uprzątnij zasoby
Jeśli nie potrzebujesz już zasobów utworzonych w tym samouczku, usuń je i grupę zasobów w portalu zarządzania. W tym celu wybierz grupę zasobów zawierającą centrum IoT, a następnie wybierz pozycję Usuń.
Alternatywnie, użyj CLI:
# Delete your resource group and its contents
az group delete --name <RESOURCE_GROUP_NAME>
Dalsze kroki
W tym samouczku utworzono aplikację logiczną, która łączy hub IoT i skrzynkę pocztową w celu monitorowania temperatury i wysyłania powiadomień.
Aby kontynuować pracę z usługą Azure IoT Hub i zapoznać się ze wszystkimi rozszerzonymi scenariuszami IoT, zobacz następujące tematy:
Zarządzanie urządzeniami za pomocą rozszerzenia usługi Azure IoT Hub dla programu Visual Studio Code
Wizualizowanie danych czujników czasu rzeczywistego z centrum IoT Za pomocą usługi Power BI
Wizualizowanie danych czujników w czasie rzeczywistym z centrum IoT Za pomocą aplikacji internetowej
Używanie usługi Logic Apps do zdalnego monitorowania i powiadomień