Leer transacciones

Leer transacciones

Uno de los primeros casos de uso cuando se interactúa con nodos en Matter es la lectura de un atributo desde otro nodo, como un valor de temperatura de un sensor. En tales interacciones, la primera acción que debe realizarse 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 -> Objetivo

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

  • Solicitudes de atributos: Una lista de cero o más atributos del objetivo Esta lista está compuesta por cero o más rutas de acceso a los atributos solicitados del destino.
  • Solicitudes de eventos: Lista de cero o más rutas de acceso a los eventos solicitados del destino.

Una vez que el destino reciba la acción de solicitud de lectura, organizará una acción de datos del informe con la información solicitada.

Acción de informes sobre datos

Dirección: Objetivo -> Iniciador

En esta acción, el objetivo responde con lo siguiente:

  • Informes de atributos: Una lista de cero o más de los atributos informados solicitados en la solicitud de acción de lectura
  • Informes de eventos: Una lista de cero o más eventos informados
  • Suprimir respuesta: Marca que determina si se debe suprimir la respuesta de estado a esta acción.
  • ID de suscripción: Si este informe es 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.

Acción de estado de respuesta

Dirección: Objetivo -> Iniciador o Iniciador -> Objetivo

Una vez que el iniciador recibe los datos solicitados, debe generar una acción de respuesta de estado de forma predeterminada. Esta acción se envía desde el iniciador confirmando la recepción de los datos informados. Si se establece la marca Suprimir estado de respuesta, 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 que el iniciador recibe una acción de datos de informe con la marca Suprimir respuesta habilitada, finaliza la consulta de lectura o de informe.

La acción de respuesta de estado simplemente contiene un campo status que confirmará que la operación se realizó correctamente o presentará un código de falla.

Leer restricciones

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 Unicast y no se puede generar como respuesta a una transmisión en grupo.

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 -> Objetivo

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 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 destino genera periódicamente acciones de datos de informes al iniciador. El iniciador es el suscriptor y el objetivo es el publicador.

Una acción de solicitud de suscripción contiene lo siguiente:

  • Precio mínimo de intervalo mínimo: El intervalo mínimo entre informes.
  • Límite de intervalo máximo: Es el intervalo máximo entre informes.
  • Informes de atributos: Una lista de cero o más de los atributos informados solicitados en la solicitud de acción de lectura
  • Informes de eventos: 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 informe que contiene el primer lote de datos informados: los datos publicados principales.

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

Posteriormente, el objetivo enviará una acción de datos del informe 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: Objetivo -> Iniciador

Esta es la última acción de la transacción de suscripción y concluye el proceso. En él se incluye lo siguiente:

  • ID de la 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: el intervalo máximo final y determinado entre los informes

Restricciones de suscripción

  • Las acciones de solicitud de suscripción y 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 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 del Informe con un código de estado INACTIVE_SUBSCRIPTION.