AWS implementazione del modello di dati Matter - Integrazioni gestite per AWS IoT Device Management

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS implementazione del modello di dati Matter

L' AWS implementazione del Matter Data Model gestisce tutte le comunicazioni tra le integrazioni gestite e i provider cloud di terze parti.

Per ulteriori informazioni, consulta Matter Data Model: Developer Resources.

Gerarchia dei dispositivi

Esistono due elementi di dati utilizzati per descrivere un dispositivo: endpoint ecluster.

endpoint

endpointRappresenta le interfacce o i servizi logici offerti dalla funzionalità.

{ "id": { "type":"string"}, "clusters": Cluster[] }

cluster

clusterRappresenta le funzionalità del dispositivo.

{ "id": "hexadecimalString", "revision": "string" // optional "attributes": AttributeMap<String attributeId, JSONNode>, "commands": CommandMap<String commandId, JSONNode>, "events": EventMap<String eventId, JsonNode> }

Per l'elemento cluster dati, ci sono tre elementi che lo compongono: attributecommand, eevent. Possono essere utilizzati per interagire e monitorare il dispositivo.

  • Attributo: stati mantenuti dal dispositivo, ad esempio l'attributo del livello di luminosità corrente di una luce dimmerabile.

    • { "id" (hexadecimalString): (JsonNode) value }
  • Comando: attività che possono essere eseguite, come bloccare una porta su una serratura. I comandi possono generare risposte e risultati.

    • "id": { "fieldId": "fieldValue", ... "responseCode": HTTPResponseCode, "errors": { "code": "string", "message": "string" } }
  • Evento: essenzialmente una registrazione delle transizioni di stato passate. Sebbene attributes rappresentino gli stati attuali, gli eventi sono un diario del passato e includono un contatore che aumenta in modo monotono, un timestamp e una priorità. Consentono di catturare le transizioni di stato e la modellazione dei dati che non è facilmente realizzabile. attributes

    • "id": { "fieldId": "fieldValue", ... }