Meta Database Schema
Kai Kramer edited this page Nov 24, 2017
·
5 revisions
{
"id": "object-id", // id corresponds directly to the topic(s) on which the object publishes/subscribes
"type": "...", // a generic object type defined by mqtt-smarthome, e.g. "device", "datapoint", "enumeration" or smth
"name": "...",
"parent": "..." // object relation - an object can have childs/parents,
// tbd: parent sufficient? or better have a child array instead of a single parent attribute?
"common": { // consensus?
// common data specified by mqtt-smarthome with some mandatory and perhaps also some optional attributes
// consensus: the xy2mqtt interfaces have to create/transform this data?
},
"native": { // consensus?
// data as taken 1:1 from the interfaced system
},
"homekit": {
// transformed metadata for use in homekit2mqtt (optional) (tbd: where does transformation take place?)
},
"alexa": {
// transformed metadata for use with amazon alexa... (optional) (tbd: where does transformation take place?)
},
// .... more transformed sub-objects (tbd: where does transformation take place?)
}
- id (mandatory)
- name (mandatory?)
- type (mandatory)
- ...?
- ...
- device?
- channel? (child of device? tbd: necessary?)
- datapoint (describes a specific topic. tdb: naming? better call it
topic
?) - enumeration (could be a e.g. a room that contains devices/channels/datapoints...)
- ...?
- ...
- ...?
- ...
- one more (test)