Jika Anda menggunakan perangkat gateway cloud GB/T 32960, Anda dapat meneruskan pesan dari perangkat tersebut ke server yang dikelola pengguna dengan memanfaatkan fitur penerusan data. Pesan-pesan ini mencakup logon dan verifikasi perangkat, pelepasan perangkat, serta pengiriman data perangkat. Anda juga dapat mendorong pesan yang dikirim oleh perangkat ke server menggunakan langganan Protokol Antrian Pesan Lanjutan (AMQP). Topik ini menjelaskan cara menggunakan fitur penerusan data untuk meneruskan pesan, serta memberikan panduan terkait topik dan tipe data yang diperlukan.
Catatan Penggunaan
Saat meneruskan pesan, perhatikan hal-hal berikut:
Anda hanya dapat menggunakan versi baru fitur penerusan data untuk mengonfigurasi aturan penerusan data bagi perangkat gateway cloud. Untuk informasi lebih lanjut, lihat Konfigurasikan parser penerusan data.
Anda tidak dapat berlangganan topik untuk perangkat gateway cloud GB/T 32960. Oleh karena itu, Anda tidak dapat meneruskan data perangkat gateway cloud GB/T 32960 dari satu topik ke topik lainnya.
Jika ingin meneruskan pesan dari perangkat gateway cloud GB/T 32960, Anda dapat menambahkan jenis topik berikut sebagai sumber data: Custom, Device Status Change Notification, dan Device Changes Throughout Lifecycle. Jika Anda ingin menambahkan topik kustom sebagai sumber data, Anda harus menentukan Vehicle Identification Number (VIN) kendaraan dalam nama topik. Untuk informasi lebih lanjut, lihat Buat sumber data.
Anda dapat menggunakan langganan sisi server untuk mendorong jenis data berikut: Device Upstream Notification, Device Status Change Notification, dan Device Changes Throughout Lifecycle. Untuk informasi lebih lanjut, lihat Konfigurasikan langganan sisi server AMQP.
Parameter pesan perangkat harus sesuai dengan protokol GB/T 32960. Untuk informasi lebih lanjut, lihat GB/T 32960-2016.
Logon Perangkat
Topik: /sys/${productKey}/${deviceName}/device/message/uplink.
{
"header": {
"command": 1,
"responseFlag": 254,
"vin": "onepart1234567891"
},
"body": {
"iccid": "12345678901234567890",
"month": 3,
"hour": 16,
"year": 23,
"subSystemNumber": 2,
"systemEncode": [
"12345678",
"87654321"
],
"systemEncodeLength": 8,
"day": 21,
"serialNo": 1,
"minute": 20,
"second": 12
}
}Parameter | Tipe | Deskripsi |
header | Objek | Data header pesan. |
command | Integer | ID perintah. |
responseFlag | Integer | ID respons. |
vin | String | VIN kendaraan. |
body | Objek | Data body pesan. |
iccid | String | ICCID kendaraan. |
year | Integer | Tahun saat kendaraan masuk ke sistem. |
month | Integer | Bulan saat kendaraan masuk ke sistem. |
day | Integer | Hari saat kendaraan masuk ke sistem. |
hour | Integer | Jam saat kendaraan masuk ke sistem. |
minute | Integer | Menit saat kendaraan masuk ke sistem. |
second | Integer | Detik saat kendaraan masuk ke sistem. |
subSystemNumber | Integer | Jumlah sub-sistem yang dapat diisi daya dan menyimpan listrik. |
systemEncode | Daftar | Kode sub-sistem. |
systemEncodeLength | Integer | Panjang kode. |
serialNo | Integer | Nomor rekaman logon kendaraan. |
Kirim status perangkat
Topik: /sys/${productKey}/${deviceName}/device/status/notify.
Format data yang dikirim oleh perangkat saat perangkat online:
{ "protocol": "gb32960", "status":"online", "iotId":"4z819VQHk6VSLmmBJfrf00107e****", "productKey":"al12345****", "deviceName":"deviceName1234", "time":"2018-08-31 15:32:28.205", "utcTime":"2018-08-31T07:32:28.205Z", "lastTime":"2018-08-31 15:32:28.195", "utcLastTime":"2018-08-31T07:32:28.195Z", "clientIp":"192.0.2.1" }Format data yang dikirim oleh perangkat saat perangkat offline:
{ "protocol": "gb32960", "status":"offline", "iotId":"4z819VQHk6VSLmmBJfrf00107e****", "offlineReasonCode":427, "productKey":"al12345****", "deviceName":"deviceName1234", "time":"2018-08-31 15:32:28.205", "utcTime":"2018-08-31T07:32:28.205Z", "lastTime":"2018-08-31 15:32:28.195", "utcLastTime":"2018-08-31T07:32:28.195Z", "clientIp":"192.0.2.1" }
Deskripsi parameter
Bidang | Kategori | Deskripsi |
protocol | String | Jika Anda menggunakan gateway cloud GB/T 32960, atur nilainya menjadi |
status | String | Status perangkat. Nilai valid:
|
iotId | String | Pengenal unik perangkat di IoT Platform. |
offlineReasonCode | Integer | Kode kesalahan yang dikembalikan saat perangkat offline. Untuk informasi lebih lanjut, lihat Kode kesalahan terkait perilaku perangkat. |
productKey | String | Pengenal unik produk tempat perangkat berasal. |
deviceName | String | Nama Perangkat dari perangkat. |
lastTime | String | Parameter ini tidak lagi valid. |
utcLastTime | String | |
time | String | Waktu saat perangkat online atau offline. Pesan yang dikembalikan tidak disortir berdasarkan waktu. Anda perlu secara manual mengurutkan pesan. Sebagai contoh, Anda menerima pesan berikut secara berurutan:
Pesan sebelumnya menunjukkan bahwa perangkat terputus, tersambung kembali, lalu terputus lagi. |
utcTime | String | Waktu saat perangkat online atau offline. Waktu dalam format UTC. |
clientIp | String | Alamat IP publik perangkat. |
Pengiriman data perangkat
Topik: /sys/${productKey}/${deviceName}/device/message/uplink.
{
"header": {
"command": 123,
"responseFlag":1,
"vin":""
},
"body": {
"data":""
}
}Nama Parameter | Tipe Data | Deskripsi |
header | Objek | Data header pesan. |
command | Integer | ID perintah. |
responseFlag | Integer | ID respons. |
vin | String | VIN kendaraan. |
body | Objek | Data body pesan. data dienkripsi dalam Base64. |
Pelepasan perangkat
Topik: /sys/${productKey}/${deviceName}/device/message/uplink.
{
"header": {
"command": 4,
"responseFlag": 254,
"vin": "onepart1234567891"
},
"body": {
"month": 3,
"hour": 16,
"year": 23,
"day": 21,
"minute": 20,
"second": 12,
"serialNo": 1
}
} Nama Parameter | Tipe Data | Deskripsi |
header | Objek | Data header pesan. |
command | Integer | ID perintah. |
responseFlag | Integer | ID respons. |
vin | String | VIN kendaraan. |
body | Objek | Data body pesan. |
year | Integer | Tahun saat kendaraan dilepas. |
month | Integer | Tahun saat kendaraan dilepas. |
day | Integer | Bulan saat kendaraan dilepas. |
hour | Integer | Jam saat kendaraan dilepas. |
minute | Integer | Menit saat kendaraan dilepas. |
second | Integer | Detik saat kendaraan dilepas. |
serialNo | Integer | Nomor rekaman pelepasan kendaraan. |