Transaksi Baca
Salah satu kasus penggunaan pertama saat berinteraksi dengan Node di Matter adalah pembacaan Atribut dari Node lain, seperti nilai suhu dari sensor. Dalam Interaksi tersebut, Tindakan pertama yang harus dilakukan adalah Tindakan Permintaan Baca.
Tindakan Permintaan Baca
Arah: Inisiator -> Target
Dalam Tindakan ini, Initiator mengkueri Target yang menyediakan:
- Permintaan Atribut: daftar nol atau beberapa Atribut Target. Daftar ini terdiri dari nol atau beberapa Jalur ke Atribut yang diminta Target.
- Permintaan Peristiwa: daftar nol atau beberapa Jalur ke Peristiwa yang diminta Target.
Setelah Tindakan Permintaan Baca diterima oleh Target, Target akan menyusun Tindakan Data Laporan dengan informasi yang diminta.
Tindakan Data Laporan
Arah: Target -> Inisiator
Dalam Action ini, Target merespons dengan:
- Laporan Atribut: daftar nol atau beberapa Atribut yang dilaporkan yang diminta dalam Permintaan Tindakan Baca.
- Laporan Peristiwa: daftar nol atau beberapa Peristiwa yang dilaporkan.
- Suppress Response: flag yang menentukan apakah respons status untuk tindakan ini harus disembunyikan.
- ID Langganan: jika laporan ini merupakan bagian dari transaksi berlangganan, laporan tersebut harus menyertakan bilangan bulat yang digunakan untuk mengidentifikasi transaksi langganan.
Tindakan Respons Status
Arah: Target -> Inisiator atau Inisiator -> Target
Setelah menerima data yang diminta, Inisiator harus membuat Tindakan Respons Status secara default. Tindakan ini dikirim dari Inisiator, yang mengonfirmasi penerimaan data yang dilaporkan. Jika tanda Suppress Status Response ditetapkan, Inisiator tidak boleh mengirim Status Response Action.
Setelah Tindakan Respons Status dikirim oleh Inisiator, atau Tindakan Data Laporan diterima oleh Inisiator dengan flag Suppress Response diaktifkan, kueri baca/laporan selesai.
Tindakan Respons Status hanya berisi kolom status yang akan mengonfirmasi keberhasilan operasi atau menampilkan kode kegagalan.
Batasan Baca
Tindakan Permintaan Baca dan Tindakan Data Laporan hanya tersedia untuk Unicast. Selain itu, Jalur permintaan ini mungkin tidak menargetkan Grup Node.
Tindakan Respons Status hanya Unicast dan tidak dapat dibuat sebagai respons terhadap siaran grup.
Transaksi Langganan
Tindakan Permintaan Berlangganan
Arah: Inisiator -> Target
Selain Tindakan Permintaan Baca tunggal, Initiator juga dapat berlangganan update berkala Atribut atau Peristiwa. Dengan demikian, Report Data Action yang sama dapat dibuat sebagai hasil dari pembaruan data berkala yang mengikuti Subscription Transaction.
Interaksi Langganan membuat hubungan antara dua Node, tempat Target secara berkala menghasilkan Tindakan Data Laporan ke Inisiator. Inisiator adalah Pelanggan dan Target adalah Penayang.
Tindakan Permintaan Berlangganan berisi:
- Min Interval Floor: interval minimum antar-laporan.
- Batas Interval Maksimum: interval maksimum antara laporan.
- Laporan Atribut: daftar nol atau beberapa Atribut yang dilaporkan yang diminta dalam Permintaan Tindakan Baca.
- Laporan Peristiwa: daftar nol atau beberapa Peristiwa yang dilaporkan.
Setelah Permintaan Berlangganan, Target merespons Inisiator dengan Tindakan Data Laporan yang berisi batch pertama data yang dilaporkan: Data Publikasi yang Disiapkan.
Inisiator kemudian mengonfirmasi Tindakan Data Laporan dengan Tindakan Respons Status yang dikirim ke Target. Setelah Target menerima Status Response Action yang melaporkan tidak ada error, Target akan mengirimkan Subscribe Response Action.
Target kemudian akan mengirimkan Tindakan Data Laporan secara berkala pada interval yang dinegosiasikan dan Inisiator akan merespons Tindakan tersebut hingga langganan hilang atau dibatalkan.
Tindakan Respons Berlangganan
Arah: Target -> Inisiator
Ini adalah Tindakan terakhir pada Transaksi Langganan dan mengakhiri prosesnya. Ini mencakup:
- ID Langganan: bilangan bulat yang mengidentifikasi langganan.
- Interval Min: interval minimum final yang ditentukan di antara laporan.
- Interval Maksimum: interval maksimum akhir yang ditentukan di antara laporan.
Batasan Berlangganan
- Tindakan Permintaan Berlangganan dan Tindakan Respons Berlangganan adalah tindakan khusus Unicast.
- Semua Tindakan Data Laporan dalam Interaksi Langganan harus memiliki ID Langganan yang sama.
- Jika Pelanggan tidak menerima Tindakan Data Laporan dalam interval maksimum yang dinegosiasikan di antara Tindakan, langganan akan dihentikan.
- Sebagai konsekuensi dari aturan sebelumnya, Penayang dapat menghentikan Interaksi Langganan hanya dengan berhenti mengirim Tindakan Data Laporan berkala.
- Pelanggan dapat menghentikan Interaksi Langganan dengan merespons
Tindakan Data Laporan dengan kode status
INACTIVE_SUBSCRIPTION.