-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmatterbridge-shelly.schema.json
211 lines (211 loc) · 7.54 KB
/
matterbridge-shelly.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
{
"title": "Matterbridge shelly plugin",
"description": "matterbridge-shelly v. 0.0.1 by https://github.com/Luligu",
"type": "object",
"properties": {
"name": {
"description": "Plugin name",
"type": "string",
"readOnly": true,
"ui:widget": "hidden"
},
"type": {
"description": "Plugin type",
"type": "string",
"readOnly": true,
"ui:widget": "hidden"
},
"username": {
"description": "Username for password protected shelly devices (used only for gen 1 devices).",
"type": "string"
},
"password": {
"description": "Password for password protected shelly devices (must be unique for all the devices).",
"type": "string",
"ui:widget": "password"
},
"switchList": {
"description": "The devices in the list will be exposed as switches (don't use it for Alexa).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"lightList": {
"description": "The devices in the list will be exposed as lights.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"inputContactList": {
"description": "The devices in the list will expose the Input component as a contact sensor.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"inputMomentaryList": {
"description": "The devices in the list will expose the Input component as a momentary switch.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"inputLatchingList": {
"description": "The devices in the list will expose the Input component as a latching switch.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"nocacheList": {
"description": "The devices in the list will not be loaded from the cache. Use the device id (e.g. shellyplus2pm-5443B23D81F8). If the list is empty, all the devices will be loaded from the cache.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"whiteList": {
"description": "Only the devices in the list will be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or BLU addr (i.e. 7c:c6:b6:65:2d:87). If the list is empty, all the devices will be exposed.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"blackList": {
"description": "The devices in the list will not be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or BLU addr (i.e. 7c:c6:b6:65:2d:87). If the list is empty, no devices will be excluded.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"entityBlackList": {
"description": "The components in the list will not be exposed for all devices. Use the component name (i.e. Temperature).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectEntityFrom": "name"
},
"deviceEntityBlackList": {
"description": "List of components not to be exposed for a single device. Enter in the first field the device id (e.g. shellyplus2pm-5443B23D81F8) and in the list add all the component names (i.e. Temperature) or component ids (i.e. temperature:0) you want to exclude for that device.",
"type": "object",
"uniqueItems": true,
"selectFrom": "serial",
"additionalProperties": {
"description": "List of components not to be exposed for this device. Enter the component name (i.e. Temperature) to exlude all components of that type or the component id (i.e. temperature:0) to exclude only that component.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectDeviceEntityFrom": "name"
}
},
"enableMdnsDiscover": {
"description": "Enable the mdns discovery for shelly devices. Once all the devices are discovered and stored, it is possible to disable this setting to reduce the network traffic.",
"type": "boolean",
"default": true
},
"enableStorageDiscover": {
"description": "Enable storage discovery for shelly devices (it will load from the storage the devices already discovered).",
"type": "boolean",
"default": true
},
"resetStorageDiscover": {
"description": "Reset the storage on the next restart (it will clear the storage and the cache files).",
"type": "boolean",
"default": false
},
"enableBleDiscover": {
"description": "Enable ble discovery for shelly BLU devices (it will register the BLU devices paired in each ble gateway, see the readme for more info).",
"type": "boolean",
"default": true
},
"failsafeCount": {
"description": "Enable the failsafe count of the devices registered. If the plugin registers less devices then the configured number, the plugin will go in error mode. This is to avoid to loose the controller configuration in case of network issues (default 0 = disabled).",
"type": "number",
"default": 0
},
"postfix": {
"description": "Add this unique postfix (3 characters max) to each device serial to avoid collision with other instances (you may loose the configuration of the devices in your controller when changing this value or you may need to pair again the controller).",
"type": "string",
"default": ""
},
"expertMode": {
"description": "Enable the expert mode for the plugin configuration (restart required)",
"type": "boolean",
"default": false
},
"addDevice": {
"description": "Manually add a device that has not been discovered with mdns:",
"type": "boolean",
"buttonField": "ADD",
"buttonClose": false,
"buttonSave": false,
"textPlaceholder": "Enter the device IP address",
"default": false
},
"removeDevice": {
"description": "Remove a device and its cache file from the storage:",
"type": "boolean",
"buttonField": "REMOVE",
"buttonClose": false,
"buttonSave": false,
"textPlaceholder": "Enter the device id",
"default": false
},
"scanNetwork": {
"description": "Scan the network with mdns for new devices:",
"type": "boolean",
"buttonText": "SCAN",
"buttonClose": false,
"buttonSave": false,
"default": false
},
"debug": {
"description": "Enable the debug for the plugin (development only)",
"type": "boolean",
"default": false
},
"debugMdns": {
"description": "Enable the debug for the shelly mdnsScanner (development only)",
"type": "boolean",
"default": false
},
"debugCoap": {
"description": "Enable the debug for the shelly coapServer (development only)",
"type": "boolean",
"default": false
},
"debugWs": {
"description": "Enable the debug for the shelly WsClient and WsServer (development only)",
"type": "boolean",
"default": false
},
"unregisterOnShutdown": {
"description": "Unregister all devices on shutdown (development only)",
"type": "boolean",
"default": false,
"ui:widget": "hidden"
}
}
}