Lewati ke konten

Device Types

Device Type mendefinisikan atribut yang harus dimiliki sekelompok device (misalnya kapasitas, lokasi pemasangan, model). Tipe ini memvalidasi atribut device, bukan pesan yang dikirim device. Menu: Manajemen Device → Device Types.

Daftar device type dengan status Active dan Deprecated.
  • Tipe punya Key (slug unik, tidak bisa diubah) dan status Active atau Deprecated.
  • Tiap tipe punya versi (v1, v2, …). Versi bersifat immutable: setelah dibuat tidak bisa diubah.
  • Device terikat ke satu pasangan (tipe, versi) dan menyimpan nilai atributnya. Versi baru tidak membatalkan device yang masih memakai versi lama.
  • Tipe tidak bisa dihapus, hanya di-deprecate.

Tiap atribut punya Nama (^[A-Za-z][A-Za-z0-9_]{0,39}$) dan satu dari delapan tipe:

Tipe Keterangan
string Teks. Minimum/maksimum berarti panjang.
number Bilangan desimal dengan rentang.
integer Bilangan bulat dengan rentang.
boolean Benar/salah.
enum Salah satu dari Allowed values.
date YYYY-MM-DD atau RFC 3339.
json Objek atau array JSON.
location {lat, lng}.

Opsi lain: Label, Placeholder, Help text, Required. Maksimal 50 atribut per versi, dan total nilai atribut satu device maksimal 16 KB. Nilai null berarti tidak diisi, dan kunci yang tidak dikenal ditolak.

  1. Pilih Buat device type: isi Nama, Key, dan atribut versi pertama.
  2. Di tab Versi, pilih Versi baru untuk menambah v2 dan seterusnya.
  3. Pada form Buat device, pilih tipe dan versi; bila versi dikosongkan, dipakai versi aktif terbaru. Tipe atau versi deprecated tidak bisa dipasang ke device baru.

Pilih Migrasi device ke vN pada tab Versi. Celestian menampilkan pratinjau: device yang atributnya tidak lolos di versi tujuan (atau yang tidak boleh Anda ubah) dilewati dan dilaporkan, sisanya dimigrasi dalam satu transaksi. Device bermasalah bisa diperbaiki belakangan.

Tombol Buat contoh bawaan membuat Energy Meter, Pressure Sensor, Pump Controller, dan Water Meter (aman diulang).

Device Type memakai izin scope device tingkat workspace (baca = device.read, ubah = device.write), ditambah scope device_type untuk pengaturan akses per objek (Katalog izin).