Berlangganan dan Bertindak atas Perintah
Nyalakan atau matikan relay saat pesan tiba.
Berlangganan dan Bertindak atas Perintah adalah pelajaran Arduino & IoT Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Arduino & IoT Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Arduino & IoT Academy mencakup 4 pelajaran total.
Mendengarkan Pesan
Publishing mengirimkan data keluar; subscribing memungkinkan perangkat Anda menerimanya. Inilah cara awan mengirim perintah kembali ke perangkat keras.
Berlangganan ke Topik
Beri tahu broker topik yang Anda inginkan dengan subscribe. Sejak saat itu, pesan yang cocok akan dikirim langsung ke perangkat Anda.
client.subscribe("home/livingroom/light");Pesan Tiba dalam Callback
Pesan masuk memicu fungsi callback yang Anda tulis. Broker memanggilnya setiap kali topik yang Anda langgani menerima pesan.
Bentuk Callback
Callback Anda menerima topik, byte payload, dan panjangnya. Anda mendaftarkannya sekali selama penyiapan.
void onMessage(char* topic, byte* payload, unsigned int len) {
}Daftarkan Callback
Hubungkan fungsi Anda menggunakan setCallback sebelum tersambung. Pustaka kemudian mengarahkan setiap pesan kepadanya.
client.setCallback(onMessage);Baca Payload dengan Aman
Payload berupa byte mentah, bukan string yang sudah jadi. Buat String dengan melakukan perulangan sepanjang ukurannya agar Anda tidak pernah membaca melewati akhir data.
String msg;
for (int i = 0; i < len; i++)
msg += (char)payload[i];Tentukan Maknanya
Bandingkan pesan dengan perintah yang sudah dikenal. Pemeriksaan if sederhana pada teks sudah cukup untuk memetakan ON dan OFF ke tindakan.
if (msg == "ON") digitalWrite(RELAY, HIGH);Jalankan Perintah
Sekarang lakukan sesuatu yang nyata: ubah keadaan relay, gerakkan servo, atau ubah lampu. Ini menutup alur dari awan ke dunia fisik.
Periksa Topiknya Juga
Jika Anda berlangganan beberapa topik, periksa argumen topic terlebih dahulu. Argumen itu memberi tahu perangkat mana yang menjadi sasaran perintah.
Berlangganan Kembali Setelah Tersambung Ulang
Koneksi yang terputus membuat langganan Anda hilang. Setelah setiap reconnect, panggil subscribe lagi atau Anda tidak akan menerima pesan apa pun.
Buat Callback Tetap Singkat
Lakukan pekerjaan singkat di dalam callback lalu segera kembalikan kendali. Pekerjaan panjang di sana dapat menghentikan loop MQTT dan membuat pesan baru terlewat.
Pemeriksaan Singkat
Setelah WiFi terputus, perangkat Anda tersambung kembali tetapi berhenti merespons perintah. Apa yang rusak akibat penyambungan kembali itu?
Rangkuman
Anda telah mempelajari cara subscribe, menangani pesan dalam callback, membaca payload, menjalankan perintah, dan berlangganan kembali setelah koneksi tersambung ulang. 🎉
Belajar C++ dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Berlangganan dan Bertindak atas Perintah” gratis?
Ya — teks lengkap “Berlangganan dan Bertindak atas Perintah” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Arduino & IoT Academy, upgrade ke CoddyKit PRO. Kursus Arduino & IoT Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Berlangganan dan Bertindak atas Perintah”?
Nyalakan atau matikan relay saat pesan tiba. Kamu berlatih Arduino & IoT Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Arduino & IoT Academy?
Tidak diperlukan pengalaman sebelumnya. Arduino & IoT Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Berlangganan dan Bertindak atas Perintah” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Arduino & IoT Academy ini?
Ya. Setiap pelajaran Arduino & IoT Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengapa MQTT Cocok untuk IoT
- Hubungkan ke Broker
- Publikasikan Topik Sensor
- Berlangganan dan Bertindak atas Perintah