Topik ini menjelaskan cara memverifikasi dan menghubungkan perangkat ke IoT Platform menggunakan gateway JT/T 808 dengan verifikasi satu pihak.
Prasyarat
Sebuah instance Exclusive Enterprise Edition telah dibeli. Dalam contoh ini, instance tersebut dibeli di wilayah China (Shanghai). Untuk informasi lebih lanjut, lihat Membeli Instance Enterprise Edition.
Informasi latar belakang
Anda dapat menggunakan gateway JT/T 808 untuk menghubungkan perangkat ke IoT Platform melalui Transmission Control Protocol (TCP) atau Transport Layer Security (TLS). Kami merekomendasikan penggunaan TLS karena koneksi berbasis TCP kurang aman. Jika Anda menghubungkan perangkat ke IoT Platform melalui TLS, Anda dapat mengaktifkan verifikasi satu arah di sisi server, Online Certificate Status Protocol (OCSP) untuk perangkat, koneksi aman dua arah antara perangkat dan server, serta fitur lainnya. Topik ini menjelaskan cara melakukan verifikasi satu pihak pada perangkat dan kemudian menghubungkan perangkat tersebut ke IoT Platform melalui TLS atau TCP menggunakan gateway JT/T 808.
Persiapan
Dalam contoh ini, sistem operasi Ubuntu 22.04 digunakan sebagai lingkungan pengembangan untuk perangkat.
Menghubungkan perangkat ke IoT Platform melalui TLS (direkomendasikan)
Sertifikat kustom
Dalam contoh ini, sertifikat kustom mencakup file sertifikat root bernama root-ca.crt, file kunci privat sisi server bernama server.key, dan file sertifikat sisi server bernama server.crt.
Anda dapat menggunakan OpenSSL untuk menghasilkan sertifikat kustom. Untuk informasi lebih lanjut tentang cara menghasilkan sertifikat, lihat Hasilkan Sertifikat Kustom.
Buat gateway
Masuk ke Konsol IoT Platform.
Di pojok kiri atas Konsol IoT Platform, pilih wilayah tempat IoT Platform diaktifkan.
Di halaman Overview, klik kartu instance Exclusive Enterprise Edition.
Di panel navigasi sisi kiri, pilih Devices>Gateway. Kemudian, klik Add Gateway.
Di kotak dialog Tambah Gateway, konfigurasikan parameter seperti yang ditunjukkan pada gambar berikut. Atur parameter Private Key of Server Certificate menjadi konten file
server.key, atur parameter Server Certificate menjadi konten fileserver.crt, lalu klik OK.Untuk informasi lebih lanjut, lihat Buat Gateway JT/T 808.

Di halaman Gateway, temukan gateway yang Anda buat dan salin titik akhir dan nomor port di kolom Gateway URL dari gateway tersebut.

Tambahkan perangkat ke gateway
Di panel navigasi sisi kiri, pilih Devices > Products. Temukan gateway yang Anda buat dan klik Manage Devices di kolom Actions.
Di halaman Devices, klik Batch Add.
Di kotak dialog Tambah Perangkat Massal, klik Download .csv Template untuk mengunduh file template dalam format CSV.

Masukkan informasi identitas tentang perangkat yang ingin Anda tambahkan di kolom Manufacturer ID, Terminal Model, dan Terminal ID dari template, seperti yang ditunjukkan pada gambar berikut, lalu simpan file tersebut.
Untuk informasi lebih lanjut, lihat Buat Gateway JT/T 808.

Kembali ke kotak dialog Tambah Perangkat Massal, klik Upload File, unggah file yang disimpan ke Konsol IoT Platform, lalu klik OK.

Setelah informasi identitas perangkat diimpor, IoT Platform membuat perangkat dan menggabungkan nilai yang diunggah dari parameter Manufacturer ID, Terminal Model, dan Terminal ID sebagai DeviceNames. DeviceName berada dalam format
${Manufacturer ID}_${Terminal Model}_${Terminal ID}. Informasi tentang perangkat ditampilkan di halaman Perangkat.
Kembangkan program sisi perangkat
Setelah perangkat dibuat di Konsol IoT Platform, Anda harus mengembangkan program sisi perangkat untuk menghubungkan perangkat ke IoT Platform. IoT Platform menyediakan SDK untuk C yang mendukung protokol JT/T 808. Dalam contoh ini, SDK untuk C digunakan untuk mengembangkan perangkat bernama AliyunIoT_TestModel_device1 dan menghubungkan perangkat tersebut ke IoT Platform.
Unduh paket SDK untuk C yang mendukung JT/T 808, dan ekstrak paket tersebut ke folder
jt808-c-sdk.Buka file
jt808_tls_demo.cdi direktori jt808-c-sdk, lalu modifikasi informasi akses dan autentikasi perangkat.CatatanFile
jt808_tls_demo.cdigunakan untuk menghubungkan perangkat ke IoT Platform melalui TLS....... /* Tentukan informasi perangkat sebenarnya, termasuk provinsi, kota, produsen, model, ID terminal, warna pelat nomor, dan nomor pelat nomor. */ static jt808_register_t info = { .province = 0x1234, .city = 0x4567, .manufacturer = "AliyunIoT", .model = "TestModel", .terminal = "device1", .colour = 1, .lisence = "Zhejiang C*****", }; /* Tentukan nomor telepon seluler yang terikat dengan perangkat. * / static char *moible_num = "1*********8"; /* Tentukan titik akhir dan nomor port gateway. * / static char *host = "iot-0******.igw.iothub.aliyuncs.com"; static uint16_t port = 7999; /* Tentukan sertifikat root kustom. * / const char *jt808_ca_cert = \ { \ "-----BEGIN CERTIFICATE-----\r\n" "MIIDR*************************************************ZIhvcNAQEL\r\n" "BQAwM*************************************************ANBgNVBAMM\r\n" "BklvV*************************************************MxCzAJBgNV\r\n" "BAYTA*************************************************QgQ0EwggEi\r\n" "MA0GC*************************************************S8fWxBF+lw\r\n" "8GKH7*************************************************3Xco/COMjP\r\n" "Q69QH*************************************************wuYc0WMjlS\r\n" "cNO7G*************************************************BABPEIJeLR\r\n" "c6rJ7*************************************************F8nDOm0kUd\r\n" "kvAdK*************************************************t6BEh9AgMB\r\n" "AAGjU*************************************************NVHSMEGDAW\r\n" "gBT4S*************************************************0GCSqGSIb3\r\n" "DQEBC*************************************************+I42UNjbJa\r\n" "ZP9bn*************************************************G+S/Tv6BEn\r\n" "2v1/V*************************************************zNWlwapdvp\r\n" "DRMmf*************************************************Vh/FVBa7gn\r\n" "9DWlU*************************************************AGz0HkVQq6\r\n" "Ks4UI***************************Vzd+\r\n" "-----END CERTIFICATE-----\r\n" }; ......Parameter
Deskripsi
province
Provinsi dan kota tempat perangkat berada. Nilainya harus memenuhi persyaratan dalam JT/T 808-2019.
city
manufacturer
Nilai parameter Manufacturer ID, Terminal Model, dan Terminal ID yang Anda tentukan untuk perangkat saat menambahkan perangkat ke gateway di Konsol IoT Platform.
model
terminal
colour
Warna pelat nomor, nomor pelat nomor, dan nomor telepon seluler pengguna yang memiliki perangkat. Warna pelat nomor dan nomor pelat nomor harus memenuhi persyaratan dalam JT/T 808-2019.
lisence
moible_num
host
Titik akhir gateway JT/T 808, yaitu titik akhir di kolom Gateway URL dari gateway yang Anda buat.
port
Nomor port kustom. Nilai default:
7999.jt808_ca_cert
Konten file
root-ca.crt.Masuk ke Ubuntu dan unggah folder
jt808-c-sdkyang telah dimodifikasi.
Di direktori root
/jt808-c-sdk, jalankan perintahmakeuntuk mengkompilasi program sampel.make clean makeProgram sampel yang dihasilkan
jt808-tls-demodisimpan di direktori./output.Jalankan program sampel.
./output/jt808-tls-demoSetelah program berhasil dijalankan, perangkat terhubung dan mulai mengirimkan data, seperti yang ditunjukkan pada gambar berikut:

Kembali ke halaman Detail Instance dari instance yang ingin Anda kelola di Konsol IoT Platform. Di panel navigasi sisi kiri, pilih Devices > Devices. Di halaman Perangkat, temukan perangkat yang ingin Anda hubungkan ke IoT Platform, dan lihat status perangkat. Jika nilai di kolom Status Perangkat adalah Online, perangkat terhubung ke IoT Platform.

Di panel navigasi sisi kiri, pilih Maintenance > Device Log. Pilih produk dan lihat semua pesan tipe Device-to-cloud Messages.

Menghubungkan perangkat ke IoT Platform melalui TCP (tidak direkomendasikan)
Buat gateway dan tambahkan perangkat
Buat Gateway JT/T 808: Konfigurasikan parameter yang diperlukan, seperti yang ditunjukkan pada gambar berikut.

Di halaman Gateway, temukan gateway yang Anda buat dan salin titik akhir dan nomor port di kolom Gateway URL dari gateway tersebut.

Tambahkan Perangkat ke Gateway JT/T 808: Tentukan informasi perangkat untuk menambahkan perangkat, seperti yang ditunjukkan pada gambar berikut.

Kembangkan program sisi perangkat
IoT Platform menyediakan SDK untuk C yang mendukung protokol JT/T 808. Dalam contoh ini, SDK untuk C digunakan untuk mengembangkan perangkat bernama AliyunIoT_TestModel_device1 dan menghubungkan perangkat tersebut ke IoT Platform.
Unduh paket SDK untuk C yang mendukung JT/T 808, dan ekstrak paket tersebut ke folder
jt808-c-sdk.Buka file
jt808_basic_demo.cdi direktori jt808-c-sdk, lalu modifikasi informasi akses dan autentikasi perangkat.CatatanFile
jt808_basic_demo.cdigunakan untuk menghubungkan perangkat ke IoT Platform melalui TCP....... /* Tentukan informasi perangkat sebenarnya, termasuk provinsi, kota, produsen, model, ID terminal, warna pelat nomor, dan nomor pelat nomor. * / static jt808_register_t info = { .province = 0x1234, .city = 0x4567, .manufacturer = "AliyunIoT", .model = "TestModel", .terminal = "device1", .colour = 1, .lisence = "Zhejiang A*****", }; /* Tentukan nomor telepon seluler yang terikat dengan perangkat. * / static char *moible_num = "1**********"; /* Tentukan titik akhir dan nomor port gateway. * / static char *host = "iot-0******v-0****0.igw.iothub.aliyuncs.com"; static uint16_t port = 7999; ......Masuk ke Ubuntu dan unggah folder
jt808-c-sdkyang telah dimodifikasi.Di direktori root
/jt808-c-sdk, jalankan perintahmakeuntuk mengkompilasi program sampel.make clean makeProgram sampel yang dihasilkan
jt808-basic-demodisimpan di direktori./output.Jalankan program sampel.
./output/jt808-basic-demoSetelah program berhasil dijalankan, perangkat terhubung dan mulai mengirimkan data, seperti yang ditunjukkan pada gambar berikut:

Anda dapat kembali ke halaman Detail Instance dari instance yang ingin Anda kelola di Konsol IoT Platform. Anda kemudian dapat melihat status perangkat dan log pesan di konsol.