Leer transacciones

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.

Secuencia de operaciones de una transacción de lectura
Figura 1: Transacción de lectura

Acción de solicitud de lectura

Dirección: Iniciador -> Destino

En esta acción, el iniciador consulta un objetivo y proporciona lo siguiente:

  • Solicitudes de atributos: Es una lista de cero o más atributos del objetivo. Esta lista se compone de cero o más rutas de acceso a los atributos solicitados del objetivo.
  • Solicitudes de eventos: Es una lista de cero o más rutas de acceso a los eventos solicitados del objetivo.

Después de que el destino reciba la acción de solicitud de lectura, compilará una acción de informe de datos con la información solicitada.

Acción de datos de informes

Dirección: Objetivo -> Iniciador

En esta acción, el objetivo 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 denunciados.
  • Suppress Response: 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 identificarla.

Acción de respuesta de estado

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 y confirma el recibo de los datos informados. Si se establece la marca Suprimir respuesta de estado, el iniciador no debe enviar la acción de respuesta de estado.

Una vez que el iniciador envía la acción de respuesta de estado o recibe una acción de informe de datos con la marca de supresión de respuesta habilitada, finaliza la consulta de lectura o informe.

La acción de respuesta de estado solo contiene un campo status que confirmará el éxito de la operación o presentará un código de error.

Restricciones de lectura

Las acciones de solicitud de lectura y de informe de datos solo están disponibles para Unicast. Además, es posible que las rutas de acceso de estas solicitudes no se orienten a un grupo de nodos.

La acción de respuesta de estado es solo para Unicast y no se puede generar como respuesta a un grupo de transmisión.

Transacción de suscripción

Secuencia de operaciones de una transacción de suscripción
Figura 2: 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 actualizaciones de datos periódicas 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 objetivo genera periódicamente acciones de datos de informes para el iniciador. El iniciador es el suscriptor y el objetivo 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.
  • Max Interval Ceiling: Es el intervalo máximo entre los 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 denunciados.

Después de la solicitud de suscripción, el destino responde al iniciador con una acción de informe de datos que contiene el primer lote de datos informados: los datos publicados activados.

Luego, el iniciador confirma la acción de informar datos con una acción de respuesta de estado que se envía al destino. Una vez que el objetivo recibe una acción de respuesta de estado que no informa errores, envía una acción de respuesta de suscripción.

Posteriormente, el objetivo enviará la acción de datos de informes periódicamente 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: Objetivo -> Iniciador

Esta es la última acción en la transacción de suscripción y concluye el proceso. It includes:

  • 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 solo 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 Informe de Datos dentro del intervalo máximo negociado entre Acciones, se rescindirá la suscripción.
  • Como consecuencia de la regla anterior, el publicador puede finalizar una interacción de suscripción simplemente deteniendo el envío de acciones de datos de informes periódicos.
  • El suscriptor puede finalizar la interacción de suscripción respondiendo a una acción de informe de datos con un código de estado INACTIVE_SUBSCRIPTION.