Transacción de lectura
Uno de los primeros casos de uso cuando se interactúa con nodos en Matter es la lectura de un atributo de otro nodo, como un valor de temperatura de un sensor. En esas interacciones, la primera acción que se debe realizar es la acción de solicitud de lectura.
Acción de solicitud de lectura
Dirección: Iniciador -> Destino
En esta acción, el iniciador consulta un destino y proporciona lo siguiente:
- Solicitudes de atributos: Es una lista de cero o más atributos del destino. Esta lista se compone de cero o más rutas de acceso a los atributos solicitados del destino.
- Solicitudes de eventos: Es una lista de cero o más rutas de acceso a los eventos solicitados del destino.
Una vez que el destino recibe la acción de solicitud de lectura, ensamblará una acción de datos de informes con la información solicitada.
Acción de datos de informes
Dirección: Destino -> Iniciador
En esta acción, el destino responde con lo siguiente:
- Informes de atributos: Es una lista de cero o más de los atributos informados que se solicitaron en la solicitud de acción de lectura.
- Informes de eventos: Es una lista de cero o más eventos informados.
- Suprimir respuesta: Es una marca que determina si se debe suprimir la respuesta de estado a esta acción.
- ID de suscripción: Si este informe forma parte de una transacción de suscripción, debe incluir un número entero que se use para identificar la transacción de suscripción.
Estado de la acción de respuesta
Dirección: Objetivo -> Iniciador o Iniciador -> Objetivo
Una vez que el iniciador recibe los datos solicitados, de forma predeterminada, debe generar una acción de respuesta de estado. Esta acción se envía desde el iniciador, que confirma la recepción de los datos informados. Si se establece la marca Suppress Status Response, el iniciador no debe enviar la acción Status Response.
Una vez que el iniciador envía la acción de respuesta de estado o recibe una acción de datos de informe con la marca de supresión de respuesta habilitada, finaliza la consulta de lectura o informe.
La acción de respuesta de estado simplemente contiene un campo status que confirmará el éxito de la operación o presentará un código de error.
Restricciones de lectura
La acción de solicitud de lectura y la acción de datos de informes son solo de Unicast. Además, las rutas de acceso de estas solicitudes no pueden orientarse a un grupo de nodos.
La acción de respuesta de estado es solo para Unicast y no se puede generar como respuesta a una transmisión de grupo.
Transacción de suscripción
Acción de solicitud de suscripción
Dirección: Iniciador -> Destino
Además de una acción de solicitud de lectura única, un iniciador también puede suscribirse a actualizaciones periódicas de un atributo o evento. Por lo tanto, se puede generar la misma acción de datos de informes como resultado de las actualizaciones periódicas de datos que siguen a una transacción de suscripción.
Una interacción de suscripción crea una relación entre dos nodos, en la que el destino genera periódicamente acciones de datos de informes para el iniciador. El iniciador es el suscriptor y el destino es el publicador.
Una acción de solicitud de suscripción contiene lo siguiente:
- Min Interval Floor: Es el intervalo mínimo entre los informes.
- Límite máximo de intervalo: Es el intervalo máximo entre informes.
- Informes de atributos: Es una lista de cero o más de los atributos informados que se solicitaron en la solicitud de acción de lectura.
- Informes de eventos: Es una lista de cero o más eventos informados.
Después de la solicitud de suscripción, el destino responde al iniciador con una acción de datos de informes que contiene el primer lote de datos informados: los datos publicados preparados.
Luego, el iniciador confirma la acción de datos de informe con una acción de respuesta de estado enviada al destino. Una vez que el destino recibe una acción de respuesta de estado que no informa errores, envía una acción de respuesta de suscripción.
Posteriormente, el destino enviará la acción de datos de informes de forma periódica en el intervalo negociado, y el iniciador responderá a esas acciones hasta que se pierda o cancele la suscripción.
Acción de respuesta de suscripción
Dirección: Destino -> Iniciador
Esta es la última acción de la transacción de suscripción y concluye el proceso. Incluye lo siguiente:
- ID de suscripción: Es un número entero que identifica la suscripción.
- Intervalo mínimo: Es el intervalo mínimo final y determinado entre los informes.
- Intervalo máximo: Es el intervalo máximo final y determinado entre los informes.
Restricciones de suscripción
- La acción de solicitud de suscripción y la acción de respuesta de suscripción son acciones exclusivas de Unicast.
- Todas las acciones de datos de informes en una interacción de suscripción deben tener el mismo ID de suscripción.
- Si el suscriptor no recibe una acción de datos de informes dentro del intervalo máximo negociado entre acciones, se cancelará la suscripción.
- Como consecuencia de la regla anterior, el Publicador puede finalizar una Interacción de Suscripción simplemente dejando de enviar Acciones de Datos de Informes periódicas.
- El Suscriptor puede finalizar la Interacción de Suscripción respondiendo a una
Acción de Datos de Informes con un código de estado
INACTIVE_SUBSCRIPTION.