Tutorial: Mengirim pemberitahuan email tentang peristiwa Azure IoT Hub menggunakan Event Grid dan Logic Apps
Azure Event Grid memungkinkan Anda bereaksi terhadap peristiwa di Azure IoT Hub dengan memicu tindakan dalam aplikasi bisnis downstream Anda.
Artikel ini menelusuri konfigurasi sampel yang menggunakan Azure IoT Hub dan Azure Event Grid. Di akhir, Anda memiliki aplikasi logika Azure yang disiapkan untuk mengirim email pemberitahuan setiap kali perangkat terhubung atau terputus ke hub IoT Anda. Azure Event Grid dapat digunakan untuk mendapatkan pemberitahuan tepat waktu tentang pemutusan perangkat penting. Metrik dan Diagnostik dapat memakan waktu beberapa menit (seperti 20 menit atau lebih) untuk muncul di log/pemberitahuan. Waktu pemrosesan yang lebih lama mungkin tidak dapat diterima untuk infrastruktur penting.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Prasyarat
- Akun email dari penyedia email apa pun yang didukung oleh Azure Logic Apps, seperti Office 365 Outlook atau Outlook.com. Akun email ini digunakan untuk mengirim notifikasi peristiwa.
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
Membuat IoT Hub
Anda dapat dengan cepat membuat hub IoT baru menggunakan terminal Azure Cloud Shell di portal.
Masuk ke portal Azure.
Di kanan atas halaman, pilih tombol Cloud Shell.
Jalankan perintah berikut ini untuk membuat grup sumber daya:
az group create --name {your resource group name} --location westus
Jalankan perintah berikut untuk membuat hub IoT:
az iot hub create --name {your iot hub name} --resource-group {your resource group name} --sku S1
Meminimalkan terminal Cloud Shell. Anda akan kembali ke shell nanti dalam tutorial.
Membuat aplikasi logika
Selanjutnya, buat aplikasi logika dan tambahkan pemicu HTTP Event Grid yang memproses permintaan dari IoT hub.
Buat sumber daya aplikasi logika
Di portal Microsoft Azure, pilih Buat sumber daya, lalu ketik "aplikasi logika" di kotak pencarian dan pilih kembali. Pilih Aplikasi Logika dari hasil.
Pada layar berikutnya, pilih Buat.
Beri nama aplikasi logika yang unik di langganan Anda, lalu pilih langganan, grup sumber daya, dan lokasi yang sama dengan IoT hub Anda. Pilih jenis paket Konsumsi.
Pilih Tinjau + buat.
Verifikasi pengaturan Anda, lalu pilihBuat.
Setelah sumber daya dibuat, pilihBuka sumber daya.
Di Azure Logic Apps Designer, gulir ke bawah untuk melihat Templat. Pilih Aplikasi Logika Kosong sehingga Anda dapat membuat aplikasi logika dari awal.
Memilih pemicu
Pemicu merupakan peristiwa tertentu yang memulai aplikasi logika Anda. Untuk tutorial ini, pemicu yang memicu alur kerja menerima permintaan melalui HTTP.
Di konektor dan memicu bilah pencarian, ketikHTTP.
Gulir hasilnya dan pilihPermintaan - Saat permintaan HTTP diterima sebagai pemicunya.
Pilih Gunakan sampel payload untuk membuat skema.
Salin
json
di bawah dan ganti nilai tempat penampung<>
dengan milik Anda.Tempelskema peristiwa yang tersambung perangkat JSON ke dalam kotak teks, lalu pilihSelesai:
[{ "id": "f6bbf8f4-d365-520d-a878-17bf7238abd8", "topic": "/SUBSCRIPTIONS/<azure subscription ID>/RESOURCEGROUPS/<resource group name>/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/<hub name>", "subject": "devices/LogicAppTestDevice", "eventType": "Microsoft.Devices.DeviceConnected", "eventTime": "2018-06-02T19:17:44.4383997Z", "data": { "deviceConnectionStateEventInfo": { "sequenceNumber": "000000000000000001D4132452F67CE200000002000000000000000000000001" }, "hubName": "<hub name>", "deviceId": "LogicAppTestDevice", "moduleId" : "DeviceModuleID" }, "dataVersion": "1", "metadataVersion": "1" }]
Penting
Pastikan untuk menempelkan cuplikan JSON ke dalam kotak yang disediakan oleh tautan Gunakan payload sampel untuk menghasilkan skema dan tidak langsung ke kotak Minta Skema Isi JSON. Tautan payload sampel menyediakan cara untuk menghasilkan konten JSON berdasarkan cuplikan JSON. JSON akhir yang berakhir di isi permintaan berbeda dari cuplikan JSON.
Peristiwa ini dipublikasikan ketika perangkat terhubung ke hub IoT.
Catatan
Anda mungkin menerima pemberitahuan pop-up yang mengatakan, Ingatlah untuk menyertakan header Jenis-Konten yang diatur ke application/json dalam permintaan Anda. Anda dapat dengan aman mengabaikan saran ini, dan melanjutkan ke bagian berikutnya.
Buat tindakan
Tindakan adalah langkah apa pun yang terjadi setelah pemicu memulai alur kerja aplikasi logika. Untuk tutorial ini, tindakannya adalah mengirim pemberitahuan email dari penyedia email Anda.
Pilih Langkah baru. Jendela muncul, yang meminta Anda untuk Memilih tindakan.
CariOutlook.
Berdasarkan penyedia email Anda, temukan dan pilih konektor yang cocok. Tutorial ini menggunakanOutlook.com. Langkah-langkah untuk penyedia email lain serupa. Atau, gunakan Office 365 Outlook untuk melewati langkah masuk.
Pilih tindakan Kirim email (V2).
PilihMasukdan masuk ke akun email Anda. PilihYauntuk mengizinkan aplikasi mengakses info Anda.
Buat templat email Anda.
Kepada: Masukkan alamat email yang akan menerima email pemberitahuan. Untuk tutorial ini, gunakan akun email yang dapat Anda akses untuk pengujian.
Subjek: Isi teks untuk subjek. Saat Anda mengklik kotak teks Subjek, Anda bisa memilih konten dinamis untuk disertakan. Misalnya, tutorial ini menggunakan
IoT Hub alert: {eventType}
. Jika Anda tidak dapat melihat Konten dinamis, pilih hyperlink Tambahkan konten dinamis untuk mengaktifkan atau menonaktifkan tampilan Konten dinamis.
Setelah memilih
eventType
, Anda akan melihat output formulir email sejauh ini. Pilih Kirim dan email (V2) untuk mengedit isi email Anda.- Isi: Tulis teks untuk email Anda. Pilih properti JSON dari alat pemilih untuk menyertakan konten dinamis berdasarkan data peristiwa. Jika tidak bisa melihat konten Dinamis, pilih hyperlink tambahkankonten dinamisdi kotak teksIsi. Jika tidak memperlihatkan bidang yang Anda inginkan, kliklainnyadi layar Konten dinamis untuk menyertakan bidang dari tindakan sebelumnya.
Templat email Anda akan terlihat seperti contoh ini:
Pilih Simpan di Logic Apps Designer.
Salin URL HTTP
Sebelum meninggalkan Logic Apps Designer, salin URL yang didengarkan oleh aplikasi logika Anda untuk pemicu. Anda menggunakan URL ini untuk mengonfigurasi Azure Event Grid.
Perluas kotak konfigurasi pemicu Saat permintaan HTTP diterima dengan mengkliknya.
Salin nilai URL HTTP POST dengan memilih tombol salin di sampingnya.
Simpan URL ini sehingga Anda bisa merujuknya di bagian berikutnya.
Mengonfigurasi langganan untuk peristiwa IoT Hub
Di bagian ini, Anda mengonfigurasi IoT Hub untuk menerbitkan peristiwa saat terjadi.
Di portal Azure, navigasi ke hub IoT Anda. Anda dapat menemukan IoT hub dengan memilih IoT Hub dari dasbor Azure, lalu pilih instans IoT hub dari daftar sumber daya.
PilihPeristiwa.
PilihLangganan peristiwa.
Buat langganan peristiwa dengan nilai berikut ini:
Di bagianDETAIL LANGGANAN PERISTIWA:
- Masukkannamauntuk langganan peristiwa.
- PilihAzure Event Grid Schemauntuk Skema Peristiwa.
Di bagianDETAIL TOPIK:
- Konfirmasikan bahwaJenis Topik diatur ke Azure IoT Hub.
- Konfirmasikan bahwa nama hub IoT ditetapkan sebagai nilai untuk bidangSumber Daya.
- Masukkan nama untuktopik sistemyang akan dibuat untuk Anda. Untuk mempelajari tentang topik sistem, lihatGambaran umum topik sistem.
Di bagianJENIS PERISTIWA:
Pilih turun keFilter ke jenis Peristiwa.
Hapus centang dalam Perangkat Yang Dibuat dan Perangkat Dihapus, hanya centang Perangkat yang Tersambung dan Perangkat Terputus.
Di bagian DETAIL ENDPOINT:
- Pilih Jenis Titik Akhir sebagai Web Hook.
- Klik pilih titik akhir, tempelkan URL yang Anda salin dari aplikasi logika Anda, dan konfirmasikan pilihan.
Bila sudah selesai, panel akan terlihat seperti contoh berikut ini:
Pilih Buat.
Simulasikan perangkat baru yang menghubungkan dan mengirim telemetri
Uji aplikasi logika Anda dengan mensimulasikan koneksi perangkat dengan cepat menggunakan Azure CLI.
Pilih tombol Cloud Shell untuk membuka kembali terminal Anda.
Jalankan perintah berikut untuk membuat identitas perangkat yang disimulasikan:
az iot hub device-identity create --device-id simDevice --hub-name {YourIoTHubName}
Pemrosesan bisa memakan waktu satu menit. Anda akan melihat cetakan JSON di konsol Anda setelah dibuat.
Jalankan perintah berikut untuk mensimulasikan menyambungkan perangkat Anda ke Azure IoT Hub dan mengirim telemetri:
az iot device simulate -d simDevice -n {YourIoTHubName}
Saat perangkat yang disimulasikan terhubung ke IoT Hub, Anda akan menerima email yang memberi tahu Anda tentang peristiwa "DeviceConnected".
Ketika simulasi selesai, Anda akan menerima email yang memberi tahu Anda tentang peristiwa "DeviceDisconnected".
Membersihkan sumber daya
Tutorial ini menggunakan sumber daya yang dikenakan biaya pada langganan Azure Anda. Ketika Anda selesai mencoba tutorial dan menguji hasil Anda, nonaktifkan atau hapus sumber daya yang tidak ingin Anda simpan.
Hapus sumber daya Azure yang dibuat dalam tutorial ini dengan menghapus grup sumber daya.
PilihGrup sumber daya, lalu pilih grup sumber daya yang Anda buat untuk tutorial ini.
Pada halaman Grup sumber daya, pilihHapus grup sumber daya. Anda diminta untuk memasukkan nama grup sumber daya, lalu Anda dapat menghapusnya. Semua sumber daya yang terkandung di dalamnya juga dihapus.
Langkah berikutnya
- Pelajari selengkapnya tentangBereaksi terhadap peristiwa Azure IoT Hub dengan menggunakan Azure Event Grid untuk memicu tindakan.
- Pelajari cara mengurutkan kejadian yang tersambung dan terputus dari perangkat
- Pelajari tentang hal lain yang dapat Anda lakukan denganAzure Event Grid.
Untuk daftar lengkap konektor Logic App yang didukung, lihat