Transazioni di lettura

Lettura transazione

Uno dei primi casi d'uso di interazione con i nodi in Matter è la lettura di un attributo di un altro nodo, come un valore di temperatura da un sensore. In queste interazioni, la prima L'azione che deve essere eseguita è l'azione di richiesta di lettura.

Sequenza di operazioni di una transazione di lettura
. Figura 1: lettura della transazione

Azione richiesta di lettura

Direzione: iniziatore -> Destinazione

In questa azione l'iniziatore interroga un target che fornisce:

  • Richieste di attributi: un elenco di zero o più attributi del target. Questo elenco è composto da zero o più percorsi verso la destinazione richiesta Attributi.
  • Richieste di evento: elenco di zero o più percorsi verso le richieste del target. Eventi.

Dopo aver ricevuto l'azione di richiesta di lettura da parte del target, quest'ultimo assembla una Segnala l'azione dati con le informazioni richieste.

Segnala azione sui dati

Direzione: target -> Iniziatore

In questa azione il bersaglio risponde con:

  • Report sugli attributi: un elenco di zero o più attributi segnalati. richiesta nella richiesta di azione di lettura.
  • Report sugli eventi: un elenco di zero o più eventi segnalati.
  • Suppress Response (Ignora risposta): un flag che determina se lo stato a questa azione.
  • ID abbonamento: se questo report fa parte di una transazione di abbonamento, deve includere un numero intero utilizzato per identificare la transazione di abbonamento.

Azione di risposta dello stato

Direzione: target -> Iniziatore o iniziatore -> Destinazione

Una volta che l'iniziatore riceve i dati richiesti, per impostazione predefinita deve generare una Azione di risposta dello stato. Questa azione viene inviata dall'iniziatore, confermando la ricezione dei dati segnalati. Se è impostato il flag Suppress Status Response, l'iniziatore non deve inviare l'Azione di risposta allo stato.

Dopo che l'Iniziatore ha inviato l'Azione di risposta dello stato, oppure i dati L'azione viene ricevuta dall'iniziatore con il flag Suppress Response abilitato, query di lettura o segnalazione completata.

L'azione di risposta dello stato contiene semplicemente un campo stato che conferma l'esito positivo dell'operazione o presenta un codice di errore.

Limitazioni in lettura

L'azione richiesta di lettura e l'azione dati report sono Solo Unicast. Inoltre, i Percorsi di queste richieste potrebbero non un gruppo di nodi come target.

L'azione di risposta dello stato è solo Unicast e non può essere generate come risposta a un groupcast.

Transazione di abbonamento

Sequenza di operazioni di una transazione di abbonamento
. Figura 2: transazione di abbonamento

Azione richiesta di iscrizione

Direzione: iniziatore -> Destinazione

Oltre a una singola azione di richiesta di lettura, un iniziatore può anche sottoscrivere un abbonamento agli aggiornamenti periodici di un Attributo o di un Evento. Di conseguenza, la stessa azione sui dati del report possono essere generate come risultato di aggiornamenti periodici dei dati che seguono Transazione di abbonamento.

Un'interazione di sottoscrizione crea una relazione tra due Nodi, in cui il Target genera periodicamente Azioni sui dati del Report per l'Iniziatore. L'iniziatore è il sottoscrittore e il target è il publisher.

Un'azione di richiesta di iscrizione contiene:

  • Minimo intervallo minimo: l'intervallo minimo tra i report.
  • Limite massimo intervallo: l'intervallo massimo tra i report.
  • Report sugli attributi: un elenco di zero o più attributi segnalati richiesta nella richiesta di azione di lettura.
  • Report sugli eventi: un elenco di zero o più eventi segnalati.

Dopo la Richiesta di sottoscrizione, il Target risponde all’Iniziatore con una Azione dati del report contenente il primo batch di dati inclusi nel report: Primed Dati pubblicati.

L'iniziatore conferma quindi l'azione dati del report con una risposta sullo stato Azione inviata al target. Quando il bersaglio riceve un'azione di risposta allo stato se non segnali alcun errore, viene inviata un'azione di risposta all'iscrizione.

Successivamente, il Target invierà periodicamente l'Azione sui dati del Report all'indirizzo l'intervallo negoziato e l'iniziatore risponderà a queste azioni finché l'abbonamento è stato perso o annullato.

Azione di risposta all'iscrizione

Direzione: target -> Iniziatore

Questa è l'ultima azione relativa alla Transazione di abbonamento e conclude il e il processo di sviluppo. Comprende:

  • Subscription ID: un numero intero che identifica l'abbonamento.
  • Intervallo minimo: l'intervallo minimo finale, determinato tra report.
  • Intervallo massimo: l'intervallo massimo finale, determinato tra report.

Limitazioni di abbonamento

  • L'azione di richiesta di iscrizione e l'azione di risposta di sottoscrizione vengono Azioni solo per Unicast.
  • Tutte le azioni sui dati del report in un'interazione tra abbonamenti devono avere lo stesso ID abbonamento.
  • Se il sottoscrittore non riceve un'azione sui dati del report entro il limite massimo tra un'azione e l'altra, la sottoscrizione verrà terminata.
  • Come conseguenza della regola precedente, l'Editore potrà risolvere un Interazione con l'abbonamento semplicemente interrompendo l'invio di Dati del report periodici Azioni.
  • Il sottoscrittore può interrompere l'interazione con l'abbonamento rispondendo a un Segnala l'azione dati con un codice di stato INACTIVE_SUBSCRIPTION.