Topik ini menjelaskan cara menggunakan MQTT.fx pada komputer Windows untuk mensimulasikan perangkat gerbang cloud MQTT, menghubungkannya ke Platform IoT, dan melaporkan data.
Prasyarat
-
Beli instans Edisi Perusahaan. Tutorial ini menggunakan instans Edisi Perusahaan Eksklusif di wilayah China (Shanghai).
-
Unduh dan instal perangkat lunak MQTT.fx. Untuk petunjuknya, lihat MQTT.fx.
Karena perangkat lunak pihak ketiga diperbarui secara berkala, antarmuka pengguna Anda mungkin berbeda.
-
Buat sertifikat kustom.
Tutorial ini memerlukan sertifikat kustom yang mencakup sertifikat root (
root-ca.crt), kunci privat sisi server (server.key), dan sertifikat server (server.crt).Anda dapat menggunakan OpenSSL untuk membuat sertifikat tersebut. Untuk informasi selengkapnya, lihat Membuat sertifikat kustom.
Informasi latar belakang
MQTT.fx adalah klien MQTT berbasis Eclipse Paho yang ditulis dalam Java. MQTT.fx mendukung Windows, macOS, dan Linux. Anda dapat menggunakan MQTT.fx untuk memverifikasi bahwa perangkat dapat terhubung ke Platform IoT dan berkomunikasi melalui topik.
Perangkat dapat menggunakan salah satu metode dengan fitur seperti sertifikat kustom, autentikasi sisi server, dan topik kustom untuk terhubung dan berkomunikasi dengan Platform IoT.
Untuk informasi selengkapnya tentang autentikasi dan komunikasi perangkat untuk gerbang cloud MQTT, lihat Ikhtisar gerbang cloud MQTT.
Menghubungkan perangkat menggunakan MQTT.fx (verifikasi satu pihak)
Langkah 1: Buat gerbang cloud dan perangkat
-
Buat gerbang cloud MQTT. Saat mengonfigurasi gerbang, gunakan konten file
server.keyuntuk parameter Server-side Private Key dan konten fileserver.crtuntuk parameter Server Certificate.Konfigurasikan parameter lainnya sebagai berikut: pilih MQTT untuk Protocol, pertahankan nilai default 1883 untuk Custom Port Number, pilih one-party verification untuk Authentication Type, pilih No untuk Enable Data Parsing, pilih No untuk Enable Device X.509 Certificate Authentication, dan pilih Do not enable untuk Enable OCSP.
-
Pada daftar gerbang cloud, salin dan simpan Gateway URL.
Daftar gerbang cloud menampilkan informasi seperti nama gerbang, protokol, Gateway URL, dan status.
-
Tambahkan perangkat secara batch. Untuk tutorial ini, tambahkan satu perangkat. Atur MQTT Username menjadi
device_01dan MQTT Password menjadihello123.
Langkah 2: Konfigurasikan koneksi MQTT.fx
-
Buka perangkat lunak MQTT.fx. Pada bilah menu, klik Extras dan pilih Edit Connection Profiles.
-
Pada halaman Edit Connection Profiles, konfigurasikan parameter berikut.
-
Atur informasi dasar. Gunakan nilai default untuk parameter lainnya.
Parameter
Deskripsi
Profile Name
Masukkan nama kustom.
Profile Type
Untuk jenis koneksi, pilih MQTT Broker.
Broker Address
Masukkan nama domain dari Gateway URL yang telah Anda simpan.
Broker Port
Atur ke nomor port kustom. Nilai default-nya adalah
1883.Client ID
Opsional. Client ID kustom hingga 64 karakter. Untuk memudahkan identifikasi, gunakan alamat MAC atau nomor seri (SN) perangkat.
-
Klik User Credentials, centang kotak Use Username/Password, lalu atur User Name dan Password.
User Name dan Password harus sesuai dengan MQTT Username dan MQTT Password perangkat yang telah Anda tambahkan.
-
Klik SSL/TLS, centang kotak Enable SSL/TLS, lalu atur Protocol ke TLSv1.2.
-
Pilih CA certificate file, lalu pilih jalur ke file
root-ca.crtAnda.
-
-
Setelah mengonfigurasi parameter, klik OK.
-
Klik Connect.
Lampu hijau di sebelah kanan menunjukkan koneksi berhasil. Di Konsol Platform IoT, buka halaman Devices > Devices untuk instans Anda. Status perangkat
device_01adalah online.
Menghubungkan perangkat menggunakan MQTT.fx (verifikasi pihak ketiga)
Langkah 1: Buat fungsi autentikasi perangkat
Di bilah navigasi atas, pilih wilayah. Pada halaman Services, klik Create Service.
Pada panel Create Service, masukkan service name. Contoh: IoT_Service. Lalu, klik OK.
Pada halaman Functions, klik Create Function.
Pada halaman Create Function, konfigurasikan parameter dan klik Create, seperti yang ditunjukkan pada gambar berikut.

-
Pada halaman Function Details, ganti kode contoh dengan kode berikut dan klik Deploy Code.
Fungsi autentikasi mengembalikan UserName sebagai deviceName.
# -*- coding: utf-8 -*- import logging import json import time import enum import random import string class Request: def __init__(self, json_str): self.clientId = None self.username = None self.password = None self.certificateCommonName = None for key, value in json.loads(json_str).items(): setattr(self, key, value) class Response: def __init__(self): self.deviceName = None self.result = 'true' self.message = 'success' def handler(self, request): # Verifikasi validitas username dan password berdasarkan kebutuhan bisnis Anda. self.deviceName = request.username return json.dumps(self.__dict__) def handler(event, context): request = Request(event) return Response().handler(request)
Langkah 2: Buat gerbang cloud MQTT
-
Buat gerbang cloud MQTT. Saat mengonfigurasi gerbang, gunakan konten file
server.keyuntuk parameter Server-side Private Key dan konten fileserver.crtuntuk parameter Server Certificate. Untuk layanan dan fungsi Function Compute (FC) autentikasi perangkat, pilih IoT_Service dan three_part_auth yang telah Anda buat.Konfigurasikan parameter lainnya sebagai berikut: atur Protocol ke MQTT, pertahankan nomor Custom Port Number default 1883, atur Authentication Type ke Third-party Verification, atur Enable Data Parsing ke No, atur Enable Device X.509 Certificate Authentication ke No, atur Enable OCSP ke Disabled, dan atur Authorization ke AliyunIOTAccessingFCRole.
-
Pada daftar gerbang cloud, salin dan simpan Gateway URL.
Daftar gerbang cloud menampilkan informasi seperti nama gerbang, protokol, Gateway URL, dan status.
Langkah 3: Konfigurasikan koneksi MQTT.fx
-
Buka perangkat lunak MQTT.fx. Pada bilah menu, klik Extras dan pilih Edit Connection Profiles.
-
Pada halaman Edit Connection Profiles, konfigurasikan parameter berikut.
-
Atur informasi dasar. Gunakan nilai default untuk parameter lainnya.
Parameter
Deskripsi
Profile Name
Masukkan nama kustom.
Profile Type
Untuk jenis koneksi, pilih MQTT Broker.
Broker Address
Masukkan nama domain dari Gateway URL yang telah Anda simpan.
Broker Port
Atur ke nomor port kustom. Nilai default-nya adalah
1883.Client ID
Opsional. Client ID kustom hingga 64 karakter. Untuk memudahkan identifikasi, gunakan alamat MAC atau nomor seri (SN) perangkat.
-
Klik User Credentials, centang kotak Use Username/Password, lalu atur User Name (misalnya,
threeParty_device_001) dan Password.Catatan-
User Name: Harus terdiri dari 4 hingga 32 karakter dan dapat berisi huruf, angka, tanda hubung (-), garis bawah (_), tanda @, titik (.), dan titik dua (:). User Name harus unik dalam produk tersebut.
-
Password: Harus terdiri dari 1 hingga 32 karakter dan dapat berisi huruf, angka, tanda hubung (-), garis bawah (_), tanda @, titik (.), dan titik dua (:).
-
-
Klik SSL/TLS, centang kotak Enable SSL/TLS, lalu atur Protocol ke TLSv1.2.
-
Pilih CA certificate file, lalu pilih jalur ke file
root-ca.crtAnda.
-
-
Setelah mengonfigurasi parameter, klik OK.
-
Klik Connect.
Lampu hijau di sebelah kanan menunjukkan koneksi berhasil. Platform IoT menggunakan deviceName yang dikembalikan oleh fungsi autentikasi FC, yaitu
threeParty_device_001, sebagai DeviceName perangkat. Platform kemudian secara otomatis membuat perangkat tersebut, yang muncul sebagai online pada halaman Devices > Devices di Konsol Platform IoT.
Melaporkan data menggunakan topik kustom
-
Pada editor muatan, masukkan konten pesan lalu klik Publish.
-
Masuk ke Konsol Platform IoT. Di instans Anda, buka halaman Maintenance > Log Service untuk melihat log Device-to-Cloud Messages. Untuk informasi selengkapnya, lihat Menanyakan log sisi cloud. Klik View untuk membuka detail pesan, yang menampilkan Topic, cap waktu, dan muatan.