全部产品
Search
文档中心

IoT Platform:Menggunakan Pustaka Paho MQTT untuk C untuk menghubungkan perangkat ke IoT Platform

更新时间:Jun 21, 2025

Topik ini menjelaskan cara menggunakan proyek open source Paho MQTT untuk C guna menghubungkan perangkat ke IoT Platform dan mengaktifkan pengiriman pesan.

Catatan Penggunaan

Dalam topik ini, izin pengguna biasa digunakan untuk semua operasi. Jika Anda memerlukan izin administrator untuk operasi tertentu, jalankan perintah sudo.

Prasyarat

Sebuah produk dan perangkat telah dibuat di dalam instans pada Konsol IoT Platform. Sertifikat perangkat dan titik akhir MQTT telah diperoleh. Informasi sertifikat mencakup ProductKey, DeviceName, dan DeviceSecret. Untuk informasi lebih lanjut, lihat topik-topik berikut:

Persiapkan lingkungan pengembangan

Dalam contoh ini, Ubuntu 16.04-LTS digunakan sebagai lingkungan pengembangan. Jalankan perintah berikut untuk menyiapkan lingkungan pengembangan:

sudo apt-get update
sudo apt-get install build-essential git sed cmake

Unduh pustaka Paho MQTT untuk C

  1. Jalankan perintah berikut untuk mengkloning pustaka Paho MQTT untuk C:

    git clone https://github.com/eclipse/paho.mqtt.c.git
    null

    Dalam topik ini, cabang master digunakan untuk mengembangkan kode sampel. ID commit adalah f7799da95e347bbc930b201b52a1173ebbad45a7.

  2. Jalankan perintah berikut untuk mengompilasi dan menginstal pustaka Paho MQTT untuk C:

    mkdir build
    cmake ..
    make -j
    sudo make install
    cd ..
    rm -rf build

Hubungkan perangkat ke IoT Platform

  1. Unduh paket demo dari Paket Demo dan dekompresi paket tersebut ke direktori. Tabel berikut menjelaskan file-file yang termasuk dalam direktori tersebut.

    File

    Deskripsi

    CMakeLists.txt

    File konfigurasi proyek.

    src/samples/MQTTAsync_publish.c

    File ini berisi kode logika yang digunakan untuk menghubungkan perangkat ke IoT Platform dan mengaktifkan komunikasi.

    src/samples/aiot_mqtt_sign.c

    File ini berisi kode yang digunakan untuk mendapatkan parameter koneksi MQTT. Saat Anda menjalankan file aiot_c_demo.c, fungsi aiotMqttSign() dipanggil untuk mendapatkan nilai parameter username, password, dan clientId.

    src/samples/CMakeLists.txt

    File konfigurasi proyek demo.

  2. Di dalam file src/samples/MQTTAsync_publish.c, ganti ProductKey, DeviceName, dan DeviceSecret dengan informasi sertifikat perangkat Anda.

    #define EXAMPLE_PRODUCT_KEY            "ProductKey dari produk" 
    #define EXAMPLE_DEVICE_NAME            "DeviceName dari perangkat" 
    #define EXAMPLE_DEVICE_SECRET          "DeviceSecret dari perangkat"
  3. Di dalam file src/samples/MQTTAsync_publish.c, tcp://iot-0***********l.mqtt.iothub.aliyuncs.com:443 menunjukkan titik akhir.

    null

    Untuk informasi lebih lanjut tentang titik akhir instans publik dan instans Enterprise Edition serta format titik akhir, lihat Lihat titik akhir sebuah instans.

    #define ADDRESS     "tcp://iot-0***********l.mqtt.iothub.aliyuncs.com:443"
  4. Gantikan file yang dijelaskan di bagian "Unduh pustaka Paho MQTT untuk C" dari topik ini dengan file yang dijelaskan di Langkah 1 berdasarkan direktori tempat file disimpan.

  5. Jalankan perintah berikut untuk mengompilasi proyek:

    mkdir build    // Jalankan perintah di direktori root proyek.
    cd build
    cmake ..
    make -j
  6. Setelah mengompilasi proyek, jalankan perintah berikut di direktori build untuk menjalankan file program:

    ./src/samples/MQTTAsync_publish

    Setelah menjalankan file program, log lokal berikut akan dihasilkan:

    clientid: ty***1&a1****kc|timestamp=2524608000000,_v=paho-c-standard-1.0.0,securemode=3,signmethod=hmacsha256,lan=C|
    username: ty***1&a1****kc
    password: 1BB**************************************************3621
    Menunggu publikasi Hello World!
    di topik /sys/a1*****kc/ty********1/thing/event/property/post untuk klien
    Koneksi berhasil
    Pesan dengan nilai token 1 dikonfirmasi pengirimannya
    Pemutusan koneksi berhasil