Odczytywanie transakcji
Jednym z pierwszych przypadków użycia podczas interakcji z węzłami w Matter jest odczytywanie atrybutu z innego węzła, np. wartości temperatury z czujnika. W takich interakcjach pierwszym działaniem, które należy wykonać, jest działanie żądania odczytu.

Działanie żądania odczytu
Kierunek: inicjator –> cel
W ramach tej czynności inicjator wysyła zapytanie do miejsca docelowego, podając:
- Żądania atrybutów: lista atrybutów miejsca docelowego (może być pusta). Lista ta zawiera 0 lub więcej ścieżek do atrybutów żądanych przez element docelowy.
- Event Requests: lista zawierająca 0 lub więcej ścieżek do żądanych zdarzeń w przypadku miejsca docelowego.
Po otrzymaniu działania Read Request Action urządzenie docelowe utworzy działanie Report Data Action z żądanymi informacjami.
Działanie na danych raportu
Kierunek: cel – inicjator
W tym działaniu usługa docelowa odpowiada:
- Attribute Reports: lista z co najmniej 1 zgłoszonym atrybutem wymaganym w żądaniu działania odczytu.
- Raporty o zdarzeniach: lista zgłoszonych zdarzeń (może być pusta).
- Suppress Response: flaga określająca, czy odpowiedź status na to działanie powinna być pomijana.
- Identyfikator subskrypcji: jeśli ten raport jest częścią transakcji subskrypcji, musi zawierać liczbę całkowitą służącą do identyfikacji transakcji subskrypcji.
Działanie odpowiedzi na stan
Kierunek: Target -> Initiator lub Initiator -> Target
Gdy inicjator otrzyma żądane dane, domyślnie musi wygenerować działanie odpowiedzi o stanie. To działanie jest wysyłane przez inicjatora w celu potwierdzenia otrzymania zgłoszonych danych. Jeśli flaga Suppress Status Response jest ustawiona, inicjator nie może wysyłać działania Status Response.
Gdy inicjator wyśle działanie Status Response Action lub gdy otrzyma działanie Report Data z włączoną flagą Suppress Response, zapytanie odczytu/raportu zostanie zakończone.
Działanie odpowiedzi o stanie zawiera tylko pole status, które potwierdza powodzenie operacji lub przedstawia kod błędu.
Ograniczenia dotyczące odczytu
Działania Read Request Action i Report Data Action są dostępne tylko w przypadku Unicast. Ponadto ścieżki tych żądań nie mogą być kierowane na grupę węzłów.
Działanie odpowiedzi na stan jest dostępne tylko w przypadku Unicast i nie może być generowane jako odpowiedź na transmisję grupową.
Transakcja zakupu subskrypcji

Działanie związane z prośbą o subskrypcję
Kierunek: inicjator –> cel
Oprócz pojedynczego działania Read Request Action inicjator może też subskrybować okresowe aktualizacje atrybutu lub zdarzenia. W ten sposób to samo działanie dotyczące danych raportu może być generowane w wyniku okresowych aktualizacji danych, które następują po transakcji subskrypcji.
Interakcja subskrypcji tworzy relację między 2 węzłami, w której węzeł docelowy okresowo generuje działania danych raportu dla węzła inicjującego. Inicjatorem jest subskrybent, a miejscem docelowym jest wydawca.
Działanie związane z prośbą o subskrypcję zawiera:
- Min Interval Floor (Minimalny odstęp czasu): minimalny odstęp czasu między raportami.
- Max Interval Ceiling (Maksymalny przedział): maksymalny przedział między raportami.
- Raporty o atrybutach: lista 0 lub większej liczby zgłoszonych atrybutów wymaganych w żądaniu działania odczytu.
- Raporty dotyczące zdarzeń: lista zgłoszonych zdarzeń (może być pusta).
Po wysłaniu żądania subskrypcji usługa docelowa odpowiada usłudze inicjującej, wysyłając działanie Report Data Action zawierające pierwszą partię zgłoszonych danych: Primed Published Data.
Następnie inicjator potwierdza działanie Report Data Action za pomocą odpowiedzi o stanie Działanie wysłane do miejsca docelowego. Gdy urządzenie docelowe otrzyma działanie Status Response Action informujące o braku błędów, wysyła działanie Subscribe Response Action.
Miejsce docelowe będzie następnie okresowo wysyłać działanie Report Data Action w uzgodnionym odstępie czasu, a inicjator będzie odpowiadać na te działania, dopóki subskrypcja nie zostanie utracona lub anulowana.
Działanie odpowiedzi na subskrypcję
Kierunek: cel – inicjator
To ostatnie działanie w transakcji subskrypcji, które kończy proces. Usługa ta obejmuje:
- Identyfikator subskrypcji: liczba całkowita identyfikująca subskrypcję.
- Min Interval (Minimalny odstęp czasu): ostateczny, określony minimalny odstęp czasu między raportami.
- Maksymalny odstęp: ostateczny, określony maksymalny odstęp między raportami.
Ograniczenia dotyczące subskrypcji
- Akcja żądania subskrypcji i akcja odpowiedzi na subskrypcję to akcje tylko do odczytu.Unicast
- Wszystkie działania dotyczące danych raportu w interakcji subskrypcji muszą mieć ten sam identyfikator subskrypcji.
- Jeśli Subskrybent nie otrzyma działania dotyczącego danych raportu w maksymalnym wynegocjowanym odstępie między działaniami, subskrypcja zostanie zakończona.
- W konsekwencji poprzedniej reguły Wydawca może zakończyć interakcję z subskrypcją, po prostu przestając wysyłać okresowe działania związane z danymi raportu.
- Subskrybent może zakończyć interakcję subskrypcji, odpowiadając na działanie raportowania danych kodem stanu
INACTIVE_SUBSCRIPTION
.