Afficher une transaction
L'un des premiers cas d'utilisation lors de l'interaction avec des nœuds dans Matter consiste à lire un attribut à partir d'un autre nœud, tel qu'une valeur de température provenant d'un capteur. Dans de telles interactions, la première action à effectuer est l'action de demande de lecture.

Action de requête de lecture
Direction : Initiateur -> Cible
Dans cette action, l'initiateur interroge une cible en fournissant :
- Demandes d'attributs : liste de zéro ou plusieurs attributs de la cible. Cette liste est composée de zéro ou plusieurs chemins d'accès aux attributs demandés de la cible.
- Event Requests : liste de zéro ou plusieurs chemins d'accès aux événements demandés par la cible.
Une fois que la cible a reçu l'action de demande de lecture, elle assemble une action de données de rapport avec les informations demandées.
Action de données de rapport
Direction : cible -> initiateur
Dans cette action, la cible répond avec :
- Attribute Reports : liste de zéro ou plusieurs attributs signalés demandés dans la requête d'action de lecture.
- EventReports : liste de zéro ou plusieurs événements signalés.
- Supprimer la réponse : indicateur qui détermine si la réponse d'état à cette action doit être supprimée.
- ID de l'abonnement : si ce rapport fait partie d'une transaction d'abonnement, il doit inclure un nombre entier utilisé pour identifier la transaction d'abonnement.
Action de réponse à l'état
Direction : "Target -> Initiator" ou "Initiator -> Target"
Une fois que l'initiateur a reçu les données demandées, il doit générer une action de réponse d'état par défaut. Cette action est envoyée par l'initiateur pour confirmer la réception des données signalées. Si l'indicateur "Suppress Status Response" (Supprimer la réponse d'état) est défini, l'initiateur ne doit pas envoyer l'action de réponse d'état.
Une fois que l'action de réponse à l'état est envoyée par l'initiateur ou qu'une action de données de rapport est reçue par l'initiateur avec l'indicateur "Supprimer la réponse" activé, la requête de lecture/rapport est terminée.
L'action de réponse d'état contient simplement un champ status qui confirme la réussite de l'opération ou présente un code d'échec.
Restrictions de lecture
Les actions "Read Request Action" et "Report Data Action" sont réservées à Unicast. De plus, les chemins de ces requêtes ne doivent pas cibler un groupe de nœuds.
L'action de réponse à l'état est Unicast uniquement et ne peut pas être générée en réponse à une diffusion de groupe.
Transaction d'abonnement

Action de demande d'abonnement
Direction : Initiateur -> Cible
En plus d'une action de demande de lecture unique, un initiateur peut également s'abonner aux mises à jour périodiques d'un attribut ou d'un événement. Ainsi, la même action de données de rapport peut être générée à la suite de mises à jour périodiques des données qui suivent une transaction d'abonnement.
Une interaction d'abonnement crée une relation entre deux nœuds, dans laquelle la cible génère périodiquement des actions de données de rapport à l'initiateur. L'initiateur est l'abonné et la cible est l'éditeur.
Une action de demande d'abonnement contient les éléments suivants :
- Intervalle minimal : intervalle minimal entre les rapports.
- Plafond de l'intervalle maximal : intervalle maximal entre les rapports.
- Rapports sur les attributs : liste de zéro ou plusieurs attributs signalés demandés dans la requête d'action de lecture.
- Rapports sur les événements : liste de zéro ou plusieurs événements signalés.
Après la demande d'abonnement, la cible répond à l'initiateur avec une action de données de rapport contenant le premier lot de données signalées : les données publiées amorcées.
L'initiateur accuse ensuite réception de l'action "Report Data" (Signaler des données) en envoyant une action "Status Response" (Réponse d'état) à la cible. Une fois que la cible a reçu une action de réponse d'état indiquant qu'il n'y a pas d'erreur, elle envoie une action de réponse d'abonnement.
La cible enverra ensuite périodiquement l'action de données de rapport à l'intervalle négocié, et l'initiateur répondra à ces actions jusqu'à ce que l'abonnement soit perdu ou résilié.
Action de réponse à l'abonnement
Direction : cible -> initiateur
Il s'agit de la dernière action sur la transaction d'abonnement, qui conclut le processus. Il inclut les éléments suivants :
- ID d'abonnement : entier qui identifie l'abonnement.
- Intervalle min. : intervalle minimal final et déterminé entre les rapports.
- Intervalle max. : intervalle maximal final et déterminé entre les rapports.
Restrictions concernant les abonnements
- Les actions "Demande d'abonnement" et "Réponse d'abonnement" sont des actions Unicast uniquement.
- Toutes les actions sur les données de rapport dans une interaction d'abonnement doivent avoir le même ID d'abonnement.
- Si l'Abonné ne reçoit pas d'Action de données de rapport dans l'intervalle maximal négocié entre les Actions, l'abonnement sera résilié.
- En conséquence de la règle précédente, l'Éditeur peut mettre fin à une Interaction d'abonnement en cessant simplement d'envoyer des Actions de données de rapport périodiques.
- L'Abonné peut mettre fin à l'Interaction d'abonnement en répondant à une Action de données de rapport avec un code d'état
INACTIVE_SUBSCRIPTION
.