Ler transações

Ler transação

Um dos primeiros casos de uso ao interagir com nós em Matter é a leitura de um atributo de outro nó, como um valor de temperatura de um sensor. Nessas interações, a primeira ação que precisa ser realizada é a ação de solicitação de leitura.

Sequência de operações de uma transação de leitura
Figura 1: transação de leitura

Ler ação da solicitação

Direção: Iniciador -> Objetivo

Nesta ação, o iniciador consulta um alvo que fornece:

  • Solicitações de atributo: uma lista de zero ou mais atributos do destino. Essa lista é composta por zero ou mais caminhos para os atributos solicitados do destino.
  • Solicitações de evento: lista de zero ou mais caminhos para os eventos solicitados do destino.

Depois que a ação de solicitação de leitura for recebida pelo destino, ela vai criar uma ação de dados do relatório com as informações solicitadas.

Ação de dados do relatório

Direção: Objetivo -> Iniciador

Nesta ação, o Destino responde com:

  • Relatórios de atributos: uma lista de zero ou mais dos atributos informados solicitados na solicitação de ação de leitura.
  • Relatórios de eventos: uma lista de zero ou mais eventos informados.
  • Suppress Response: uma sinalização que determina se a resposta de status a essa ação precisa ser suprimida.
  • ID da assinatura: se esse relatório fizer parte de uma transação de assinatura, ele precisa incluir um número inteiro usado para identificar a transação.

Ação de resposta de status

Direção: Alvo -> Iniciador ou Iniciador -> Alvo

Depois que o iniciador recebe os dados solicitados, por padrão, ele precisa gerar uma ação de resposta de status. Esta ação é enviada pelo iniciador, reconhecendo o recebimento dos dados informados. Se a sinalização "Suppress Status Response" estiver definida, o iniciador não poderá enviar a ação de resposta de status.

Depois que a ação de resposta de status é enviada pelo iniciador ou uma ação de dados do relatório é recebida pelo iniciador com a sinalização de supressão de resposta ativada, a consulta de leitura/relatório é concluída.

A ação de resposta de status contém um campo de status que confirma o sucesso da operação ou apresenta um código de falha.

Ler restrições

As ações de solicitação de leitura e de dados do relatório são apenas para Unicast. Além disso, os caminhos dessas solicitações não podem segmentar um grupo de nós.

A ação de resposta de status é somente do Unicast e não pode ser gerada como uma resposta a um groupcast.

Transação de assinatura

Sequência de operações de uma transação de assinatura
Figura 2: transação de assinatura

Ação de solicitação de inscrição

Direção: Iniciador -> Objetivo

Além de uma única ação de solicitação de leitura, um iniciador também pode se inscrever para receber atualizações periódicas de um atributo ou evento. Assim, a mesma Ação de dados de relatório pode ser gerada como resultado de atualizações periódicas de dados que seguem uma transação de assinatura.

Uma interação de assinatura cria uma relação entre dois nós, em que o destino gera periodicamente ações de dados do relatório para o iniciador. O iniciador é o assinante, e o destino é o editor.

Uma ação de solicitação de inscrição contém:

  • Valor mínimo do intervalo: o intervalo mínimo entre os relatórios.
  • Limite máximo do intervalo: o intervalo máximo entre os relatórios.
  • Relatórios de atributos: uma lista de zero ou mais dos atributos informados solicitados na solicitação de ação de leitura.
  • Relatórios de eventos: uma lista de zero ou mais eventos informados.

Após a solicitação de assinatura, o destino responde ao iniciador com uma ação de dados do relatório contendo o primeiro lote de dados relatados: os dados publicados com Primed.

O iniciador confirma a ação de dados do relatório com uma ação de resposta de status enviada ao destino. Quando o destino recebe uma ação de resposta de status que não informa erros, ele envia uma ação de resposta de assinatura.

Depois, a Meta vai enviar a Ação de Dados do Relatório periodicamente no intervalo negociado, e o Iniciador responderá a essas Ações até que a assinatura seja perdida ou cancelada.

Ação de resposta à inscrição

Direção: Objetivo -> Iniciador

Esta é a última ação na transação de assinatura e conclui o processo. Saiba o que ele inclui:

  • ID da assinatura: um número inteiro que identifica a assinatura.
  • Intervalo mínimo: o intervalo mínimo final e determinado entre os relatórios.
  • Intervalo máximo: o intervalo máximo final e determinado entre os relatórios.

Restrições de inscrição

  • As ações de solicitação de inscrição e de resposta de inscrição são somente para Unicast.
  • Todas as ações de dados do relatório em uma interação de assinatura precisam ter o mesmo ID de assinatura.
  • Se o assinante não receber uma ação de dados do relatório no intervalo máximo negociado entre as ações, a assinatura será encerrada.
  • Como consequência da regra anterior, o Editor pode encerrar uma Interação de Assinatura simplesmente interrompendo o envio de Ações periódicas de Dados de Relatório.
  • O assinante pode encerrar a interação da assinatura respondendo a uma ação de dados do relatório com um código de status INACTIVE_SUBSCRIPTION.