Aracılığıyla paylaş


Öğretici: Azure Logic Apps ile IoT cihazlarını izleme ve bildirim gönderme

IoT Hub'dan gelen cihaz telemetrisini izlemek ve uyarılar tetiklendiğinde bildirim göndermek için Azure Logic Apps'i kullanın.

End-to-end diagram

Azure Logic Apps , şirket içi ve bulut hizmetleri, birden çok kuruluş ve çeşitli protokollerde iş akışlarını düzenlemenize yardımcı olabilir. Mantıksal uygulama bir tetikleyiciyle başlar ve ardından koşullar ve yineleyiciler gibi yerleşik denetimler kullanılarak sıralanabilen bir veya daha fazla eylem izler. Bu esneklik Logic Apps'i IoT izleme senaryoları için ideal bir IoT çözümü haline getirir. Örneğin, ioT Hub uç noktasına bir cihazdan veri gelmesi, verileri Azure Depolama blobunda depolamak, veri anomalileri hakkında uyarı göndermek için e-posta uyarıları göndermek, cihaz hata bildiriyorsa teknisyen ziyaretini zamanlamak vb. için mantıksal uygulama iş akışları başlatabilir.

Bu öğreticide, aşağıdaki görevleri gerçekleştireceksiniz:

Service Bus kuyruğu oluşturun. IoT hub'ınızda, iletiler anormal sıcaklık okumaları içeriyorsa Service Bus kuyruğuna ileti gönderen bir yol oluşturun. Kuyruğa gelen mesajlaşmayı izleyen ve e-posta uyarısı gönderen bir mantıksal uygulama oluşturun.

Cihazınızda çalışan istemci kodu, temperatureAlertIoT hub'ınıza gönderdiği her telemetri iletisinde bir uygulama özelliği ayarlar. İstemci kodu belirli bir eşiğin üzerinde bir sıcaklık algıladığında, bu özelliği olarak trueayarlar; aksi takdirde özelliğini olarak falseayarlar.

IoT hub'ınıza gelen iletiler, gövdede bulunan telemetri verileri ve temperatureAlert uygulama özelliklerinde bulunan özelliğiyle (sistem özellikleri gösterilmez) aşağıdakine benzer:

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

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

Bu öğreticiye başlamadan önce aşağıdaki önkoşulları hazırlayın.

Service Bus ad alanı ve kuyruğu oluşturma

Service Bus ad alanı ve kuyruğu oluşturun. Bu makalenin ilerleyen bölümlerinde, sıcaklık uyarısı içeren iletileri Service Bus kuyruğuna yönlendirmek için IoT hub'ınızda bir yönlendirme kuralı oluşturacaksınız. Mantıksal uygulama, gelen iletiler için kuyruğu izler ve her uyarı için bir bildirim gönderir.

Service Bus ad alanı oluşturma

  1. Azure portalında, Service Bus'ı aramak ve seçmek için arama çubuğunu kullanın.

  2. Service Bus ad alanı oluşturmak için Oluştur'u seçin.

  3. Ad alanı oluştur bölmesinde aşağıdaki bilgileri sağlayın:

    Parametre Value
    Abonelik IoT hub'ınızı içeren aboneliği seçin.
    Kaynak grubu IoT hub'ınızı içeren kaynak grubunu seçin.
    Ad alanı adı Service Bus ad alanınız için bir ad belirtin. Ad alanı Azure genelinde benzersiz olmalıdır.
    Konum IoT hub'ınızın kullandığı konumu seçin.
    Fiyatlandırma katmanı Açılan listeden Temel'i seçin. Temel katman bu öğretici için yeterlidir.
  4. Gözden geçir ve oluştur’u seçin.

  5. Oluştur'u belirleyin.

  6. Dağıtımın tamamlanmasını bekleyin, ardından Kaynağa git'i seçin.

Ad alanına Service Bus kuyruğu ekleme

  1. Service Bus ad alanınızın Genel Bakış sayfasında Kuyruk'a tıklayın.

    Screenshot of the namespace overview page to add a queue.

  2. Ad alanında kuyruk için bir ad girin. Diğer alanlar için varsayılan değerleri kabul edin ve Oluştur'u seçin.

  3. Service Bus ad alanınızda, kaynak menüsünün Ayarlar bölümünde Paylaşılan erişim ilkeleri'ni seçin.

  4. Ayrıntılarını açmak için RootManageSharedAccessKey ilkesini seçin.

  5. Birincil bağlantı dizesi değerini kopyalayın ve mantıksal uygulamayı yapılandırırken bu öğreticinin devamında kullanmak üzere kaydedin.

IoT hub'ınıza özel uç nokta ve yönlendirme kuralı ekleme

IoT hub'ınıza Service Bus kuyruğu için özel bir uç nokta ekleyin. Ardından, sıcaklık uyarısı içeren iletileri mantıksal uygulamanız tarafından alındığı bu uç noktaya yönlendirmek için bir ileti yönlendirme kuralı oluşturun. Yönlendirme kuralı, temperatureAlert = "true"cihazda çalışan istemci kodu tarafından ayarlanan uygulama özelliğinin temperatureAlert değerine göre iletileri iletmek için yönlendirme sorgusu kullanır. Daha fazla bilgi edinmek için bkz . İleti özelliklerine göre ileti yönlendirme sorgusu.

Özel uç nokta ve yol ekleme

  1. Azure portalında IoT hub'ınıza gidin.

  2. Hub ayarları'nın altındaki kaynak menüsünde İleti yönlendirme'yi ve ardından Ekle'yi seçin.

    Screenshot that shows location of the Add button, to add a new route in your IoT hub.

  3. Uç Nokta sekmesinde, aşağıdaki bilgileri sağlayarak Service Bus kuyruğunuz için bir uç nokta oluşturun:

    Parametre Value
    Uç nokta türü Service Bus kuyruğu'mu seçin.
    Uç nokta adı Service Bus kuyruğunuza eşleyen yeni uç nokta için bir ad sağlayın.
    Service Bus ad alanı Önceki bölümde oluşturduğunuz Service Bus ad alanını seçmek için açılan menüyü kullanın.
    Service Bus kuyruğu Ad alanınızda oluşturduğunuz Service Bus kuyruğunu seçmek için açılan menüyü kullanın.

    Screenshot that shows how to create a service bus queue endpoint for your route.

  4. Oluştur + İleri'yi seçin.

  5. Yol sekmesinde, Service Bus kuyruğu uç noktanızı işaret eden bir yol oluşturmak için aşağıdaki bilgileri girin:

    Parametre Value
    Ad Yol için benzersiz bir ad sağlayın.
    Veri kaynağı Varsayılan Cihaz Telemetri İletisi veri kaynağını koruyun.
    Yönlendirme sorgusu Sorgu dizesi olarak girin temperatureAlert = "true" .

    Screenshot that shows adding a route with a query.

  6. Oluştur + zenginleştirmeleri atla'yı seçin.

Bildirimler için Logic Apps'i yapılandırma

Önceki bölümde, Sıcaklık uyarısı içeren iletileri Service Bus kuyruğunuza yönlendirmek için IoT hub'ınızı ayarlarsınız. Şimdi, Service Bus kuyruğunun izlenmesi için bir mantıksal uygulama ayarlarsınız ve kuyruğa her ileti eklendiğinde bir e-posta bildirimi gönderirsiniz.

Mantıksal uygulama oluşturma

  1. Azure portalında Logic Apps'i arayın ve seçin.

  2. Yeni bir mantıksal uygulama oluşturmak için Ekle'yi seçin.

  3. Mantıksal Uygulama Oluşturma'nın Temel Bilgiler sekmesine aşağıdaki bilgileri girin:

    Parametre Value
    Kaynak grubu IoT hub'ınızı içeren kaynak grubunu seçin.
    Ad Mantıksal uygulamanız için bir ad belirtin.
    Bölge Size yakın bir konum seçin.
    Plan türü Bu öğretici için yeterli olan Tüketim'i seçin.

    Screenshot that shows creating a logic app in the Azure portal.

  4. Gözden geçir ve oluştur’u seçin.

  5. Oluştur'u belirleyin.

  6. Dağıtım tamamlandıktan sonra, mantıksal uygulamanızı açmak için Kaynağa git'i seçin.

Mantıksal uygulama tetikleyicisini yapılandırma

  1. Azure portalındaki mantıksal uygulama kaynak sayfanızda, kaynak menüsünün Geliştirme Araçları bölümünden Mantıksal uygulama tasarımcısını açın.

  2. Tasarımcıda, aşağı kaydırarak Şablonlar'a gelin ve Boş Mantıksal Uygulama'yı seçin.

    Screenshot that shows selecting the Blank Logic App template.

  3. Tüm bağlayıcıları ve tetikleyicileri göstermek için Tümü sekmesini ve ardından Service Bus'ı seçin.

    Select Service Bus to start creating your logic app in the Azure portal.

  4. Tetikleyiciler'in altında Bir veya daha fazla ileti kuyruğa ulaştığında (otomatik tamamlama) öğesini seçin.

    Select the trigger for your logic app in the Azure portal.

  5. Service Bus bağlantısı oluşturun.

    1. bir Bağlan ion adı sağlayın ve ardından Service Bus ad alanınızdan kopyaladığınız Bağlan ion dizesini yapıştırın.

    2. Oluştur'u belirleyin.

    3. Sonraki ekranda, Service Bus ad alanınızda oluşturduğunuz kuyruğu seçmek için açılan menüyü kullanın. Ardından, En fazla ileti sayısı için girin175.

      Screenshot that shows configuring queue settings in the Logic app designer.

  6. Yaptığınız değişiklikleri kaydetmek için mantıksal uygulama tasarımcısı menüsünde Kaydet'i seçin.

Mantıksal uygulama eylemini yapılandırma

  1. Mantıksal uygulama tasarımcısında Yeni adım'ı seçin.

  2. SMTP hizmet bağlantısı oluşturun.

    1. SMTP'yi arayın ve seçin.

      Screenshot that shows selecting an SMTP connection in the logic app designer.

    2. Bu adım için eylem olarak E-posta Gönder (V3) seçeneğini belirleyin.

    3. bir Bağlan adı girin, ardından geri kalan alanları bildirim iletilerini göndermek için kullanmak istediğiniz e-posta hesabının SMTP bilgileriyle doldurun.

      Posta sağlayıcınıza bağlı olarak SMTP bilgilerinizi bulmak için aşağıdaki bağlantıları kullanın:

      Not

      Bağlantıyı kurmak için TLS/SSL'yi devre dışı bırakmanız gerekebilir. Böyle bir durum söz konusuysa ve bağlantı kurulduktan sonra TLS'yi yeniden etkinleştirmek istiyorsanız, bu bölümün sonundaki isteğe bağlı adıma bakın.

      Screenshot that shows configuring the SMTP connection settings in the logic app designer.

    4. Oluştur'u belirleyin.

  3. E-posta Gönder eylemini yapılandırın.

    1. E-posta Gönder adımındaki Yeni parametre ekle açılan listesinden aşağıdaki parametreleri seçin:

      • Başlangıç
      • İşlem
      • Konu
      • Gövde

      Seçim kutusunu kapatmak için ekranda herhangi bir yere tıklayın veya dokunun.

      Choose SMTP connection email fields to include in email.

    2. Önceki adımda seçtiğiniz e-posta parametreleri için aşağıdaki bilgileri girin:

      Parametre Value
      Başlangıç SMTP bağlantısı için yapılandırdığınız e-posta adresi.
      İşlem Bildirim e-postaları göndermek istediğiniz e-posta adresi veya adresler.
      Konu High temperature detected.
      Gövde High temperature detected.

      Dinamik içerik ekle iletişim kutusu açılırsa gizlemek için Gizle'yi seçin. Bu öğreticide dinamik içerik kullanmazsınız.

      Provide details for SMTP connection email fields.

  4. SMTP bağlantısını kaydetmek için Kaydet'i seçin.

  5. (İsteğe bağlı) E-posta sağlayıcınızla bağlantı kurmak için TLS'yi devre dışı bırakmak zorunda kaldıysanız ve yeniden etkinleştirmek istiyorsanız şu adımları izleyin:

    1. Mantıksal uygulama bölmesindeki Geliştirme Araçları'nın altında API bağlantıları'nı seçin.

    2. API bağlantıları listesinden SMTP bağlantısını seçin.

    3. Smtp API Bağlan ion bölmesindeki Genel'in altında API bağlantısını düzenle'yi seçin.

    4. API Bağlan düzenleme bölmesinde SSL'yi etkinleştir? öğesini seçin, e-posta hesabınızın parolasını yeniden girin ve Kaydet'i seçin.

      Edit SMTP API connection in your logic app in the Azure portal.

Mantıksal uygulamanız artık Service Bus kuyruğundan sıcaklık uyarılarını işlemeye ve e-posta hesabınıza bildirim göndermeye hazırdır.

Mantıksal uygulamayı test etme

İzleme ve bildirim işlem hattını test etmek için IoT cihazınızdan sıcaklık iletileri göndermeye başlayın.

  1. Cihazınızda istemci uygulamasını başlatın. İstemci kodu rastgele telemetri iletileri verir ve sıcaklık 30 C'yi aştığında özelliğini true olarak ayarlartemperatureAlert.

  2. Mantıksal uygulama tarafından gönderilen e-posta bildirimlerini almaya başlamalısınız.

    Not

    E-postayı gönderenin siz olduğunuzdan emin olmak için e-posta hizmet sağlayıcınızın gönderen kimliğini doğrulaması gerekebilir.

Kaynakları temizleme

Bu öğreticide oluşturduğunuz kaynaklara artık ihtiyacınız yoksa portalda kaynakları ve kaynak grubunu silin. Bunu yapmak için IoT hub'ınızı içeren kaynak grubunu seçin ve Sil'i seçin.

Alternatif olarak, CLI kullanın:

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

Sonraki adımlar

Bu öğreticide, sıcaklık izleme ve bildirimler için IoT hub'ınızı ve posta kutunuzu bağlayan bir mantıksal uygulama oluşturdunuz.

Azure IoT Hub'ı kullanmaya devam etmek ve tüm genişletilmiş IoT senaryolarını keşfetmek için aşağıdakilere bakın: