全部产品
Search
文档中心

IoT Platform:Akses IoT Platform dengan menggunakan koneksi WebSocket melalui protokol MQTT

更新时间:Jun 21, 2025

Topik ini menjelaskan cara menghubungkan perangkat ke IoT Platform menggunakan protokol Message Queuing Telemetry Transport (MQTT) melalui koneksi WebSocket. Topik ini juga menyediakan contoh kode untuk Node.js.

Prasyarat

Produk dan perangkat telah dibuat di Konsol IoT Platform. Sertifikat perangkat, termasuk ProductKey, DeviceName, dan DeviceSecret, telah diperoleh. Dalam contoh ini, sebuah perangkat bernama device2 telah dibuat. Untuk informasi lebih lanjut, lihat topik-topik berikut:

Informasi latar belakang

Untuk informasi tentang cara menghubungkan perangkat ke IoT Platform menggunakan protokol WebSocket, lihat Membuat Koneksi MQTT melalui WebSocket.

Topik ini menjelaskan cara menggunakan device Link SDK yang disediakan oleh IoT Platform untuk menghubungkan perangkat serta melakukan komunikasi upstream dan downstream.

null Device Link SDK terintegrasi dengan fitur enkripsi Transport Layer Security (TLS). Tidak diperlukan konfigurasi manual.

Prosedur

  1. Buat file JavaScript, seperti iot_device.js, di komputer Anda untuk menyimpan contoh kode Node.js.
    Berikut adalah contoh kode Node.js yang digunakan:
    const iot = require('alibabacloud-iot-device-sdk');
    
    // Tentukan informasi sertifikat perangkat.
    const productKey = 'a1W***';
    const deviceName = 'device2';
    const deviceSecret = 'ff01e59d1a***';
    
    // Tentukan ID instance dari instance publik versi baru atau instance Enterprise Edition. Jika Anda menggunakan instance publik versi lama, Anda tidak perlu menentukan ID instance.
    const instanceId = '';
    
    // Tentukan ID wilayah tempat produk dan perangkat berada.
    const region = 'cn-shanghai';
    
    const brokerUrl = instanceId
      ? `wss://${instanceId}.mqtt.iothub.aliyuncs.com:443`
      : `wss://${productKey}.iot-as-mqtt.${region}.aliyuncs.com:443`;
    
    const device = iot.device({
      productKey: `${productKey}`,
      deviceName: `${deviceName}`,
      deviceSecret: `${deviceSecret}`,
      brokerUrl,
      tls: true,
    });
    
    // Dengarkan acara koneksi: Hubungkan perangkat ke IoT Platform melalui koneksi MQTT, aktifkan perangkat untuk berlangganan topik khusus, dan gunakan topik khusus tersebut untuk mengirim pesan ke IoT Platform.
    device.on('connect', () => {
      device.subscribe(`/${productKey}/${deviceName}/user/get`);
      console.log('terhubung dengan sukses!');
      device.publish(`/${productKey}/${deviceName}/user/update`, 'hello world!');
    });
    
    // Dengarkan acara pesan.
    device.on('message', (topic, payload) => {
      console.log(topic, payload.toString());
    });
    
    // Dengarkan acara kesalahan.
    device.on('error', (error) => {
      console.error(error);
    });
    
    // Untuk memutuskan perangkat dari IoT Platform, hapus dua garis miring (//) di awal kode berikut dan panggil fungsi end.
    //device.end();

    Anda harus mengonfigurasi parameter yang dijelaskan dalam tabel berikut sesuai dengan kasus penggunaan aktual, seperti informasi perangkat.

    ParameterContohDeskripsi
    productKeya1W***Sertifikat perangkat yang tersisa setelah Anda menambahkan perangkat. Untuk informasi lebih lanjut, lihat Buat perangkat.

    Anda bisa mendapatkan informasi sertifikat device2 di halaman Device Details di Konsol IoT Platform.

    deviceNamedevice2
    deviceSecretff01e59d1a***
    instanceId''ID instance. Anda dapat melihat ID instance di halaman Overview di IoT Platform console.
    • Jika ID instance ditampilkan, Anda harus mengonfigurasi parameter ini.
    • Jika halaman Overview atau ID instance tidak ditampilkan di konsol IoT Platform, tentukan string kosong (iotInstanceId = "") untuk parameter ini.

    Untuk informasi tentang instance IoT Platform, lihat Ikhtisar.

    region cn-shanghaiID wilayah tempat instance IoT Platform Anda berada. Untuk informasi lebih lanjut tentang ID wilayah, lihat Wilayah.
  2. Buka Command Prompt dan jalankan perintah cd untuk masuk ke direktori tempat file iot_device.js disimpan. Di direktori tersebut, jalankan perintah npm untuk mengunduh pustaka device Link SDK. Gambar berikut menunjukkan pustaka yang diunduh.
    npm install alibabacloud-iot-device-sdk --savealibabacloud-iot-device-sdk
  3. Di Command Prompt, masukkan perintah berikut untuk menjalankan file iot_device.js dan memulai perangkat.
    node iot_device.js
    Tanggapan berikut menunjukkan bahwa perangkat terhubung ke IoT Platform dan pesan dipublikasikan.Connect the device to IoT Platform

Lihat log dan uji pesan downstream

  1. Masuk ke Konsol IoT Platform.
  2. Di sudut kiri atas konsol, pilih wilayah tempat IoT Platform berada. Di halaman Ikhtisar, klik instance that you want to manage.
    null Jika halaman Overview tidak ditampilkan, Anda akan dialihkan ke halaman Produk.
  3. Di panel navigasi di sebelah kiri, pilih Devices > Devices.
    device2 ditampilkan di tab Device List, dan perangkat berada dalam status Online.The device is connected.
  4. Di kolom Aksi device2, klik View. Di halaman Device Details, klik tab Device Log lalu klik View.
    Lihat log perangkat di tab Cloud run log pada halaman Log Perangkat.Device Log
  5. Di daftar log, temukan pesan yang Jenis Beban Kerjanya adalah Device-to-cloud Messages dan klik View untuk melihat isi pesan.
    Submitted message
  6. Uji pesan downstream dengan mengirim pesan dari IoT Platform ke perangkat.
    1. Pilih Devices > Devices. Di tab Device List pada halaman Perangkat, temukan device2 dan klik View di kolom Aksi.
    2. Di halaman Device Details, klik tab Topic List, temukan topik /a1W***/device2/user/get di bagian Topik Berlangganan, dan klik Publish.
    3. Masukkan pesan dan klik OK.
      Send a message
    4. Kembali ke Command Prompt dan periksa apakah perangkat menerima pesan. Jika pesan downstream bekerja dengan benar, pesan akan diterima.
      Receive a message

      Anda juga bisa kembali ke tab Cloud run log untuk melihat log pesan.

      Messaging logs