-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmatterbridge-shelly.schema.json
236 lines (236 loc) · 9.11 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
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
{
"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
},
"type": {
"description": "Plugin type",
"type": "string",
"readOnly": true
},
"username": {
"description": "Username (used only for gen 1 devices)",
"type": "string"
},
"password": {
"description": "Password (must be unique for all the devices)",
"type": "string"
},
"exposeSwitch": {
"description": "Choose how to expose the shelly switches: as a switch (don't use it for Alexa), light or outlet",
"type": "string",
"enum": ["switch", "light", "outlet"],
"default": "outlet"
},
"switchList": {
"description": "The devices in the list will be exposed as switches, regardless of the main option.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"lightList": {
"description": "The devices in the list will be exposed as lights, regardless of the main option.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"outletList": {
"description": "The devices in the list will be exposed as outlets, regardless of the main option.",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"exposeInput": {
"description": "Choose how to expose the shelly inputs: disabled, contact, momentary or latching switch (you may need to pair again the controller when changed)",
"type": "string",
"enum": ["disabled", "contact", "momentary", "latching"],
"default": "disabled"
},
"inputContactList": {
"description": "The devices in the list will expose the Input event component as a contact sensor, regardless of the main option (you can disable the Input component globally and enable it only for single devices).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"inputMomentaryList": {
"description": "The devices in the list will expose the Input event component as a momentary switch, regardless of the main option (you can disable the Input component globally and enable it only for single devices).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"inputLatchingList": {
"description": "The devices in the list will expose the Input event component as a latching switch, regardless of the main option (you can disable the Input component globally and enable it only for single devices).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"exposeInputEvent": {
"description": "Choose weather to expose the shelly input events: momentary or disabled (you may need to pair again the controller when changed)",
"type": "string",
"enum": ["momentary", "disabled"],
"default": "disabled"
},
"inputEventList": {
"description": "The devices in the list will expose the Input event component as a momentary switch, regardless of the main option (you can disable the Input event component globally and enable it only for single devices).",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"exposePowerMeter": {
"description": "Choose how to expose the shelly power meters: disabled, matter13 (will use Matter 1.3 electricalSensor)",
"type": "string",
"enum": ["disabled", "matter13"],
"default": "disabled"
},
"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)",
"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 you add a BLU device in the white list, you need to put also its BLU gateway on the list.",
"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"
}
},
"nocacheList": {
"description": "The devices in the list will not be loaded from the cache. Use the device id (e.g. shellyplus2pm-5443B23D81F8)",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"selectFrom": "serial"
},
"deviceIp": {
"description": "Set the IP address for each device. Enter in the first field the shelly ID of the device and in the second field the IP address. (e.g. shelly1minig3-543204547478: 192.168.1.221). Enable enableConfigDiscover to load the devices from this setting.",
"type": "object",
"uniqueItems": true,
"selectFrom": "serial",
"additionalProperties": {
"type": "string"
}
},
"enableMdnsDiscover": {
"description": "Enable the mdns discovery for shelly devices (it will stop after 10 minutes)",
"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 discovery on the next restart (it will clear the storage of already discovered devices and the cache files)",
"type": "boolean",
"default": false
},
"enableConfigDiscover": {
"description": "Enable config discovery for shelly devices (it will load the devices from deviceIp config setting)",
"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": ""
},
"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 or WsServer (development only)",
"type": "boolean",
"default": false
},
"interfaceName": {
"description": "Network interface name for shellies (development only)",
"type": "string"
},
"unregisterOnShutdown": {
"description": "Unregister all devices on shutdown (development only)",
"type": "boolean",
"default": false
}
}
}