Platform IoT memproses dan mengirimkan data melalui penerusan data dan langganan sisi server berdasarkan format data topik. Topik terbagi menjadi tiga kategori: topik kustom, topik komunikasi dasar, dan topik komunikasi Thing Specification Language (TSL). Anda menentukan format data untuk topik kustom. Dokumen ini mencakup format data topik komunikasi dasar dan TSL setelah penerusan pesan.
Topik untuk penerusan pesan dan komunikasi perangkat mentah
Untuk definisi, penggunaan, dan klasifikasi topik komunikasi, lihat Apa itu topik?.
Saat mengembangkan perangkat, tentukan format data mentah. Perhatikan hal berikut:
-
Data topik komunikasi dasar dan TSL harus mematuhi Protokol Alink. Lihat dokumen terkait dalam direktori Protokol Alink.
Setelah data perangkat mentah diteruskan, format datanya dikonversi. Bagian berikut menjelaskan setiap format yang telah dikonversi.
-
Anda dapat menentukan format data untuk topik kustom.
Setelah data perangkat mentah diteruskan, format datanya tetap tidak berubah dan sesuai dengan format topik kustom.
Tabel berikut mencantumkan topik penerusan dan topik komunikasi perangkat mentah yang sesuai.
Tabel 1. Deskripsi topik
Topik | Deskripsi | Referensi |
Custom | Topik untuk meneruskan pesan dalam format data kustom mengikuti format yang sama dengan topik kustom: ${TopicShortName} menentukan kategori topik kustom, yaitu akhiran dari topik kustom. Nilainya dapat berisi karakter wildcard, termasuk tanda plus (+) dan tanda pagar (#).
| |
Device Status Change Notification | Topik yang digunakan untuk meneruskan notifikasi ketika status perangkat berubah antara online dan offline. Format: /as/mqtt/status/${productKey}/${deviceName}. | |
TSL Data Reporting | Mencakup:
| |
Topik berikut digunakan untuk mengirim data perangkat mentah:
| ||
Device Changes Throughout Lifecycle | Topik yang digunakan untuk meneruskan pesan ketika perangkat dibuat, dihapus, dinonaktifkan, atau diaktifkan. Format: | |
Sub-Device Data Report Detected by Gateway | Topik | |
Device Topological Relation Changes | Topik yang digunakan untuk meneruskan notifikasi ketika hubungan topologis antara sub-perangkat dan gateway dibuat atau dihapus. Topik ini khusus untuk gateway. Format: /${productKey}/${deviceName}/thing/topo/lifecycle. | |
Perangkat menggunakan topik | ||
Device tag change | Topik untuk meneruskan pembaruan tag perangkat adalah | |
Perangkat menggunakan topik berikut untuk melaporkan data mentah: | ||
TSL Historical Data Reporting | Mencakup:
| |
| Cara melaporkan data historis untuk model Thing Specification Language | |
Device Status Notification for OTA Updates | Mencakup:
| |
Perangkat melaporkan progres peningkatannya ke topik berikut: | ||
Submit a module version number | Topik untuk melaporkan versi modul Over-the-Air (OTA) yang diperbarui: | |
Perangkat menggunakan topik berikut untuk melaporkan versi modul OTA-nya: | ||
Batch status notification | Platform IoT menerbitkan notifikasi perubahan status untuk batch pembaruan OTA ke topik berikut: | |
Job Event | Mencakup topik berikut:
|
Status online dan offline perangkat
Topik: /as/mqtt/status/${productKey}/${deviceName}
Dapatkan status online atau offline perangkat melalui topik ini.
Format data ketika perangkat online:
{
"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 ketika perangkat offline:
{
"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:
|
Parameter |
Tipe |
Deskripsi |
|
status |
String |
Status perangkat.
|
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
offlineReasonCode |
Integer |
Kode kesalahan yang dikembalikan ketika perangkat offline. Lihat Kode kesalahan perilaku perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
lastTime |
String |
Usang. Tidak digunakan lagi. |
|
utcLastTime |
String |
|
|
time |
String |
Waktu ketika perangkat online atau offline. Pesan tidak diurutkan berdasarkan waktu online/offline. Urutkan berdasarkan nilai time. Sebagai contoh, Anda menerima tiga pesan berikut secara berurutan:
Tiga pesan ini menunjukkan bahwa perangkat offline, lalu online, lalu offline lagi. |
|
utcTime |
String |
Waktu UTC ketika perangkat online atau offline. |
|
clientIp |
String |
Alamat IP publik perangkat. |
Kirim properti perangkat
Topik: /${productKey}/${deviceName}/thing/event/property/post
Gunakan topik ini untuk mendapatkan properti yang dikirimkan oleh perangkat.
Format data:
{
"iotId":"4z819VQHk6VSLmmBJfrf00107e****",
"requestId":"2",
"productKey":"al12345****",
"deviceName":"deviceName1234",
"gmtCreate":1510799670074,
"deviceType":"Ammeter",
"items":{
"Power":{
"value":"on",
"time":1510799670074
},
"Position":{
"time":1510292697470,
"value":{
"latitude":39.9,
"longitude":116.38
}
}
},
"checkFailedData":{
"attribute_8":{
"time": 1510292697470,
"value": 715665571,
"code":6304,
"message":"tsl parse: params not exist -> attribute_8"
}
}
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
gmtCreate |
Long |
Waktu saat pesan penerusan data dihasilkan. |
|
deviceType |
String |
Kategori perangkat. Kategori yang dipilih saat membuat produk. Lihat Buat produk atau CreateProduct. |
|
items |
Object |
Data perangkat. |
|
Power |
String |
Pengidentifikasi properti. Untuk nama properti, lihat deskripsi TSL produk. Jika properti adalah properti modul kustom, pengidentifikasi properti berada dalam format
|
|
Position |
||
|
attribute_8 |
||
|
checkFailedData |
Object |
Data yang gagal validasi data model TSL. |
|
value |
Ditetapkan oleh TSL |
Nilai properti. |
|
time |
Long |
Waktu saat properti dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
|
code |
Integer |
Kode kesalahan yang dikembalikan ketika data gagal validasi model TSL. Lihat Kode kesalahan untuk perangkat. |
|
message |
String |
Pesan kesalahan yang dikembalikan ketika data gagal validasi model TSL, termasuk penyebab kegagalan dan parameter yang tidak valid. |
Kirim event perangkat
Topik: /${productKey}/${deviceName}/thing/event/${tsl.event.identifier}/post
Gunakan topik ini untuk mendapatkan informasi event yang dikirimkan oleh perangkat.
Format data:
{
"identifier":"BrokenInfo",
"name":"Damage Rate Submission",
"type":"info",
"iotId":"4z819VQHk6VSLmmBJfrf00107e****",
"requestId":"2",
"productKey":"X5eCzh6****",
"deviceName":"5gJtxDVeGAkaEztpisjX",
"gmtCreate":1510799670074,
"value":{
"Power":"on",
"Position":{
"latitude":39.9,
"longitude":116.38
}
},
"checkFailedData":{},
"time":1510799670074
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
identifier |
String |
Pengidentifikasi event. Jika event adalah event modul kustom, pengidentifikasi event berada dalam format
|
|
name |
String |
Nama event. |
|
type |
String |
Tipe event. Untuk tipe event, lihat deskripsi TSL produk. |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
gmtCreate |
Long |
Waktu saat pesan penerusan data dihasilkan. |
|
value |
Object |
Informasi parameter output event. Contoh menunjukkan informasi tentang dua parameter Power dan Position.
Penting
|
|
checkFailedData |
Object |
Data yang gagal validasi data model TSL. Jika parameter output event gagal validasi, parameter checkFailedData adalah:
Di mana:
|
|
time |
Long |
Waktu saat event dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
Kirim properti perangkat secara batch
Topik: /${productKey}/${deviceName}/thing/property/batch/post
Gunakan topik ini untuk mendapatkan properti yang dikirimkan oleh perangkat secara batch.
Format data:
{
"productKey": "al12345****",
"deviceName": "deviceName1234",
"instanceId": "iot-0***",
"requestId": "2",
"items": {
"Power": [
{
"value": "on",
"time": 1524448722000
},
{
"value": "off",
"time": 1524448722001
}
],
"WF": [
{
"value": 3,
"time": 1524448722000
},
{
"value": 4,
"time": 1524448722009
}
]
}
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
instanceId |
String |
ID instans tempat perangkat tersebut berada. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
items |
Object |
Data perangkat. |
|
Power |
String |
Pengidentifikasi properti. Untuk nama properti, lihat deskripsi TSL produk. Jika properti adalah properti modul kustom, pengidentifikasi properti berada dalam format
|
|
WF |
||
|
value |
Ditetapkan oleh TSL |
Nilai properti. |
|
time |
Long |
Waktu saat properti dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
Kirim event perangkat secara batch
Topik: /${productKey}/${deviceName}/thing/event/batch/post
Gunakan topik ini untuk mendapatkan event yang dikirimkan oleh perangkat secara batch.
Format data:
{
"productKey": "al12345****",
"deviceName": "deviceName1234",
"instanceId": "iot-0***",
"requestId": "2",
"items": {
"alarmEvent": [
{
"value": {
"Power": "on",
"WF": "2"
},
"time": 1524448722000
},
{
"value": {
"Power": "on",
"WF": "2"
},
"time": 1524448723000
}
]
}
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
instanceId |
String |
ID instans tempat perangkat tersebut berada. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
items |
Object |
Data perangkat. |
|
alarmEvent |
List |
Pengidentifikasi event. |
|
value |
Object |
Parameter event. Pada contoh sebelumnya, Power dan WF adalah nama parameter event. |
|
time |
Long |
Waktu saat event dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
Perubahan siklus hidup perangkat
Topik: /${productKey}/${deviceName}/thing/lifecycle
Gunakan topik ini untuk menerima pesan yang dihasilkan saat perangkat dibuat, dihapus, diaktifkan, atau dinonaktifkan.
Format data:
{
"action": "create|delete|enable|disable",
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"productKey": "al5eCzh****",
"deviceName": "5gJtxDVeGAkaEztpisjX",
"deviceSecret": "wsde***",
"messageCreateTime": 1510292739881
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
action |
String |
|
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
productKey |
String |
Pengidentifikasi unik produk. |
|
deviceName |
String |
Nama perangkat. |
|
deviceSecret |
String |
Rahasia perangkat. Parameter ini hanya disertakan jika parameter action diatur ke |
|
messageCreateTime |
Integer |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Perubahan topologi perangkat
Topik: /${productKey}/${deviceName}/thing/topo/lifecycle
Gunakan topik ini untuk menerima informasi tentang pembuatan dan penghapusan hubungan topologis antara sub-perangkat dan gateway.
Format data:
{
"action" : "create|delete|enable|disable",
"gwIotId": "dfaejVQHk6VSLmmBJfrf00107e****",
"gwProductKey": "al5eCzh****",
"gwDeviceName": "deviceName1234",
"devices": [
{
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"productKey": "ala4Czh****",
"deviceName": "deviceName1234"
}
],
"messageCreateTime": 1510292739881
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
action |
String |
|
|
gwIotId |
String |
Pengidentifikasi unik perangkat gateway di Platform IoT. |
|
gwProductKey |
String |
Pengidentifikasi unik produk gateway. |
|
gwDeviceName |
String |
Nama perangkat gateway. |
|
devices |
Object |
Daftar sub-perangkat yang berubah. |
|
iotId |
String |
Pengidentifikasi unik sub-perangkat di Platform IoT. |
|
productKey |
String |
Pengidentifikasi unik produk sub-perangkat. |
|
deviceName |
String |
Nama sub-perangkat. |
|
messageCreateTime |
Integer |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Gateway menemukan sub-perangkat
Topik: /${productKey}/${deviceName}/thing/list/found
Dalam beberapa skenario, gateway dapat mendeteksi sub-perangkat dan melaporkan informasinya. Anda dapat menggunakan topik ini untuk mendapatkan informasi yang dilaporkan.
Format data:
{
"gwIotId":"dfaew9VQHk6VSLmmBJfrf00107e****",
"gwProductKey":"al12345****",
"gwDeviceName":"deviceName1234",
"devices":[
{
"iotId":"4z819VQHk6VSLmmBJfrf00107e****",
"productKey":"alr56g9****",
"deviceName":"deviceName1234"
}
]
}
Deskripsi parameter:
|
Parameter |
Jenis |
Deskripsi |
|
gwIotId |
String |
Pengidentifikasi unik perangkat gateway di Platform IoT. |
|
gwProductKey |
String |
Pengidentifikasi unik produk gateway. |
|
gwDeviceName |
String |
Nama perangkat gateway. |
|
devices |
Object |
Daftar sub-perangkat yang ditemukan. |
|
iotId |
String |
Pengidentifikasi unik sub-perangkat di Platform IoT. |
|
productKey |
String |
Pengidentifikasi unik produk tempat sub-perangkat tersebut berada. |
|
deviceName |
String |
Nama sub-perangkat. |
Hasil perintah downstream
Topik: /${productKey}/${deviceName}/thing/downlink/reply/message
Dapatkan hasil yang dikembalikan setelah perangkat memproses perintah pengaturan properti asinkron dan pemanggilan layanan. Jika terjadi kesalahan saat mengirim perintah, topik ini juga mengembalikan pesan kesalahan.
Format data:
{
"gmtCreate":1510292739881,
"iotId":"4z819VQHk6VSLmmBJfrf00107e****",
"productKey":"al12355****",
"deviceName":"deviceName1234",
"requestId":"2",
"code":200,
"message":"success",
"topic":"/sys/al12355****/deviceName1234/thing/service/property/set",
"data":{},
"checkFailedData":{
"value": {
"PicID": "15194139"
},
"code":6304,
"message":"tsl parse: params not exist -> PicID"
}
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
gmtCreate |
Long |
Timestamp UTC. |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
code |
Integer |
Kode hasil yang dikembalikan oleh perangkat. Lihat tabel Kode hasil di bawah ini. |
|
message |
String |
Informasi kode hasil yang dikembalikan oleh perangkat. |
|
topic |
String |
Informasi tentang topik yang digunakan untuk mengirim perintah ke perangkat. |
|
data |
Object |
Hasil yang dikembalikan oleh perangkat. Untuk data format Alink, hasil pemrosesan perangkat dikembalikan langsung. Untuk data format transmisi langsung, data harus ditransformasi oleh skrip. |
|
checkFailedData |
Object |
Data yang gagal validasi data model TSL. |
|
value |
Ditetapkan oleh TSL |
Nilai properti atau nilai parameter layanan yang gagal validasi data model TSL. Pada contoh sebelumnya, PicID adalah nama parameter yang gagal validasi. |
|
code |
Integer |
Kode kesalahan yang dikembalikan ketika data gagal validasi model TSL. Lihat Kode kesalahan untuk perangkat. |
|
message |
String |
Pesan kesalahan yang dikembalikan ketika data gagal validasi model TSL, termasuk penyebab kegagalan dan parameter yang tidak valid. |
|
kode |
pesan |
Deskripsi |
|
200 |
success |
Permintaan berhasil. |
|
400 |
request error |
Terjadi kesalahan layanan internal selama pemrosesan. |
|
460 |
request parameter error |
Parameter permintaan tidak valid. Perangkat gagal memvalidasi parameter input. |
|
429 |
too many requests |
Permintaan terlalu sering. |
|
9200 |
device not actived |
Perangkat belum diaktifkan. |
|
9201 |
device offline |
Perangkat offline. |
|
403 |
request forbidden |
Permintaan dilarang karena pembayaran tertunda. |
Untuk mengatasi kesalahan ini, lihat Kode kesalahan untuk perangkat.
Kirim properti historis
Topik: /${productKey}/${deviceName}/thing/event/property/history/post
Gunakan topik ini untuk mendapatkan data properti model TSL historis yang dikirimkan oleh perangkat.
Format data:
{
"iotId":"4z819VQHk6VSLmmBJfrf00107e****",
"requestId":"2",
"productKey":"12345****",
"deviceName":"deviceName1234",
"gmtCreate":1510799670074,
"deviceType":"Ammeter",
"items":{
"Power":{
"value":"on",
"time":1510799670074
},
"Position":{
"time":1510292697470,
"value":{
"latitude":39.9,
"longitude":116.38
}
}
},
"checkFailedData":{
"attribute_8":{
"time": 1510292697470,
"value": 715665571,
"code":6304,
"message":"tsl parse: params not exist -> attribute_8"
}
}
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
gmtCreate |
Long |
Waktu saat pesan penerusan data dihasilkan. |
|
deviceType |
String |
Kategori perangkat. Kategori yang dipilih saat membuat produk. Lihat Buat produk atau CreateProduct. |
|
items |
Object |
Data perangkat. |
|
Power |
String |
Pengidentifikasi properti. Untuk nama properti, lihat deskripsi TSL produk. Jika properti adalah properti modul kustom, pengidentifikasi properti berada dalam format
|
|
Position |
||
|
attribute_8 |
||
|
checkFailedData |
Object |
Data yang gagal validasi data model TSL. |
|
value |
Ditetapkan oleh TSL |
Nilai properti. |
|
time |
Long |
Waktu saat properti dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
|
code |
Integer |
Kode kesalahan yang dikembalikan ketika data gagal validasi model TSL. Lihat Kode kesalahan untuk perangkat. |
|
message |
String |
Pesan kesalahan yang dikembalikan ketika data gagal validasi model TSL, termasuk penyebab kegagalan dan parameter yang tidak valid. |
Kirim event historis
Topik: /${productKey}/${deviceName}/thing/event/${tsl.event.identifier}/history/post
Gunakan topik ini untuk mendapatkan data event historis yang dikirimkan oleh perangkat.
Format data:
{
"identifier":"BrokenInfo",
"name":"Damage Rate Submission",
"type":"info",
"iotId":"4z819VQHk6VSLmmBJfrf00107e***",
"requestId":"2",
"productKey":"X5eCzh6***",
"deviceName":"5gJtxDVeGAkaEztpisjX",
"value":{
"Power":"on",
"Position":{
"latitude":39.9,
"longitude":116.38
}
},
"checkFailedData":{},
"time":1510799670074
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
identifier |
String |
Pengidentifikasi event. Jika event adalah event modul kustom, pengidentifikasi event berada dalam format
|
|
name |
String |
Nama event. |
|
type |
String |
Tipe event. Untuk tipe event, lihat deskripsi TSL produk. |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |
|
requestId |
String |
Id dari pesan perangkat mentah. String numerik dalam rentang 0 hingga 4294967295. Harus unik per perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
gmtCreate |
Long |
Waktu saat pesan penerusan data dihasilkan. |
|
value |
Object |
Informasi parameter output event. Contoh menunjukkan informasi tentang dua parameter Power dan Position.
Penting
|
|
checkFailedData |
Object |
Data yang gagal validasi data model TSL. Jika parameter output event gagal validasi, parameter checkFailedData adalah:
Di mana:
|
|
time |
Long |
Waktu saat event dilaporkan. Default ke waktu saat Platform IoT menghasilkan data jika tidak dilaporkan oleh perangkat. |
Notifikasi status pembaruan OTA
Topik: /${productKey}/${deviceName}/ota/upgrade
Terima pesan status pembaruan OTA yang menunjukkan apakah pembaruan perangkat berhasil atau gagal.
Jika perangkat memiliki tugas pembaruan yang belum selesai dan Anda memulai pembaruan batch, pembaruan batch tersebut gagal. Platform IoT tidak meneruskan pesan kegagalan dalam kasus ini.
Format data:
{
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"productKey": "X5eCzh6****",
"deviceName": "deviceName1234",
"moduleName": "default",
"status": "SUCCEEDED|FAILED|CANCELED",
"messageCreateTime": 1571323748000,
"srcVersion": "1.0.1",
"destVersion": "1.0.2",
"desc": "success",
"jobId": "wahVIzGkCMuAUE2gDERM02****",
"taskId": "y3tOmCDNgpR8F9jnVEzC01****"
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
iotId |
String |
Pengidentifikasi unik perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
moduleName |
String |
Nama modul OTA. |
|
status |
String |
Status pembaruan.
|
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
|
srcVersion |
String |
Versi sebelum pembaruan. |
|
destVersion |
String |
Versi tujuan pembaruan. |
|
desc |
String |
Deskripsi status pembaruan. |
|
jobId |
String |
ID batch pembaruan. Secara unik mengidentifikasi batch pembaruan. |
|
taskId |
String |
Pengidentifikasi unik catatan pembaruan perangkat. |
Notifikasi progres pembaruan OTA
Topik: /${productKey}/${deviceName}/ota/progress/post
Gunakan topik ini untuk mendapatkan pesan progres pembaruan OTA.
Format data:
{
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"productKey": "X5eCzh6****",
"deviceName": "deviceName1234",
"moduleName":"default",
"status":"IN_PROGRESS",
"step": "90",
"messageCreateTime": 1571323748000,
"srcVersion":"1.0.1",
"destVersion":"1.0.2",
"desc": "success",
"jobId": "wahVIzGkCMuAUE2gDERM02****",
"taskId": "y3tOmCDNgpR8F9jnVEzC01****"
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
iotId |
String |
Pengidentifikasi unik perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
moduleName |
String |
Nama modul OTA. |
|
status |
String |
Status pembaruan. Nilainya tetap |
|
step |
Integer |
Progres pembaruan yang dilaporkan oleh perangkat. |
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
|
srcVersion |
String |
Versi sebelum pembaruan. |
|
destVersion |
String |
Versi tujuan pembaruan. |
|
desc |
String |
Deskripsi status pembaruan. |
|
jobId |
String |
ID batch pembaruan. Secara unik mengidentifikasi batch pembaruan. |
|
taskId |
String |
Pengidentifikasi unik catatan pembaruan perangkat. |
Notifikasi perubahan versi modul OTA
Topik: /${productKey}/${deviceName}/ota/version/post
Gunakan topik ini untuk mendapatkan nomor versi modul OTA yang dilaporkan oleh perangkat. Pesan diteruskan ketika perangkat melaporkan nomor versi modul OTA baru.
Format data:
{
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"deviceName": "deviceName1234",
"productKey": "X5eCzh6****",
"moduleName": "BarcodeScanner",
"moduleVersion": "1.0.3",
"messageCreateTime": 1571323748000
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
iotId |
String |
Pengidentifikasi unik perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
moduleName |
String |
Nama modul. |
|
moduleVersion |
String |
Nomor versi modul. |
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Notifikasi status batch pembaruan OTA
Topik: /${productKey}/${packageId}/${jobId}/ota/job/status
Gunakan topik ini untuk mendapatkan pesan perubahan status batch pembaruan OTA.
Format data:
{
"productKey": "X5eCzh6****",
"moduleName": "BarcodeScanner",
"packageId": "wahVIzGkCMuAUE2***",
"jobId": "wahVIzGkCMuAUE2gDERM02****",
"state": "IN_PROGRESS",
"messageCreateTime": 1571323748000
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
moduleName |
String |
Nama modul. |
|
packageId |
String |
ID paket pembaruan. Nilai parameter ini sama dengan nilai parameter FirmwareId yang dikembalikan saat Anda memanggil operasi CreateOTAFirmware untuk membuat paket pembaruan. |
|
jobId |
String |
ID batch pembaruan. Secara unik mengidentifikasi batch pembaruan. |
|
state |
String |
Status batch pembaruan. Nilai yang valid:
|
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Perubahan tag perangkat
Topik: /${productKey}/${deviceName}/thing/deviceinfo/update
Gunakan topik ini untuk mendapatkan informasi tentang perubahan tag perangkat.
Format data:
{
"action": "UPDATE|DELETE|DELETEALL"
"iotId": "4z819VQHk6VSLmmBJfrf00107e****",
"productKey": "X5eCzh6****",
"deviceName": "deviceName1234",
"deletedAttrKeyList": ["abc", "def", "rng"],
"value": [
{
"attrKey": "tagKey",
"attrValue": "tagValue"
}
],
"messageCreateTime": 1510799670074
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
action |
String |
Jenis perubahan tag. Nilai yang valid:
|
|
iotId |
String |
Pengidentifikasi unik perangkat. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
deletedAttrKeyList |
List |
Daftar kunci tag yang dihapus. Parameter ini ditampilkan hanya ketika parameter action diatur ke DELETE. |
|
value |
List |
Data tag. |
|
attrKey |
String |
Kunci tag. |
|
attrValue |
String |
Nilai tag. |
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Notifikasi status tugas perangkat
Topik: /sys/uid/${uid}/job/${jobId}/lifecycle
Gunakan topik ini untuk menerima pesan perubahan status tugas perangkat. Tugas perangkat mencakup tugas pengaturan properti batch, tugas pemanggilan layanan batch, dan tugas kustom.
Dalam topik, ${uid} adalah ID akun Alibaba Cloud Anda. Untuk melihat ID tersebut, login ke Konsol Platform IoT, klik gambar profil Anda, lalu navigasi ke halaman Security Settings.
Format data:
{
"jobId": "4z819VQHk6VSLmm***ee200",
"jobType": "CUSTOM_JOB",
"status": "INITIALIZING",
"messageCreateTime": 1510292739881
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
jobId |
String |
ID tugas. Pengidentifikasi unik global tugas. |
|
jobType |
String |
Jenis tugas.
|
|
status |
String |
Status tugas. Nilai yang valid:
|
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
Notifikasi status tugas migrasi instans
Topik: /sys/uid/{uid}/distribution/{jobId}/lifecycle
Gunakan topik ini untuk mendapatkan pesan perubahan status tugas migrasi instans.
Dalam topik, ${uid} adalah ID akun Alibaba Cloud Anda. Untuk menemukan ID akun Anda, login ke Konsol Platform IoT, arahkan kursor mouse ke gambar profil Anda, lalu lihat Account ID.
Format data:
{
"jobId": "4z819VQHk6VSLmmxxxxxxxxxxee200",
"status": "GRAY_EXECUTING",
"messageCreateTime": 1510292739881,
"type":"INSTANCE_UPGRADE",
"sourceInstance":"iotx-oxssharez200",
"targetInstance":"iot-es5v4***",
"successDevices":[
{
"productKey":"al12***",
"deviceName":"deviceName1",
"iotId":"4z81frf00107e***"
}
]
}
Deskripsi parameter:
|
Parameter |
Tipe |
Deskripsi |
|
jobId |
String |
ID tugas. Pengidentifikasi unik global tugas. |
|
status |
String |
Status tugas. Nilai yang valid:
|
|
messageCreateTime |
Long |
Timestamp saat pesan dihasilkan. Satuan: milidetik. |
|
type |
String |
Jenis tugas. Nilainya tetap |
|
sourceInstance |
String |
ID instans publik sumber untuk migrasi instans. ID instans publik versi sebelumnya adalah Untuk detail tentang instans, lihat Ikhtisar instans. |
|
targetInstance |
String |
ID instans Perusahaan tujuan untuk migrasi instans. |
|
successDevices |
List |
Informasi tentang perangkat yang berhasil dimigrasikan:
Parameter successDevices mungkin kosong selama proses migrasi. Ini menunjukkan bahwa status tugas telah berubah dan tugas telah dimulai, tetapi belum ada perangkat yang dimigrasikan. |
|
productKey |
String |
Pengidentifikasi unik produk tempat perangkat tersebut berada. |
|
deviceName |
String |
Nama perangkat. |
|
iotId |
String |
Pengidentifikasi unik perangkat di Platform IoT. |