iobroker.alias-workbench 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +516 -0
  3. package/admin/alias-workbench.png +0 -0
  4. package/admin/css/werkbank.css +916 -0
  5. package/admin/detector.js +1 -0
  6. package/admin/geraetewissen/tasmota-befehle.json +116 -0
  7. package/admin/i18n/de.json +552 -0
  8. package/admin/i18n/en.json +552 -0
  9. package/admin/js/aufzaehlungen.js +332 -0
  10. package/admin/js/basis.js +36 -0
  11. package/admin/js/baum.js +453 -0
  12. package/admin/js/detail.js +335 -0
  13. package/admin/js/einstellungen.js +40 -0
  14. package/admin/js/entwurf.js +908 -0
  15. package/admin/js/enums.js +23 -0
  16. package/admin/js/ergebnis.js +934 -0
  17. package/admin/js/erkennung.js +126 -0
  18. package/admin/js/katalog.js +313 -0
  19. package/admin/js/mqtt.js +885 -0
  20. package/admin/js/musternamen.js +94 -0
  21. package/admin/js/musterwahl.js +334 -0
  22. package/admin/js/objekte.js +243 -0
  23. package/admin/js/pruefungen.js +130 -0
  24. package/admin/js/quellentausch.js +570 -0
  25. package/admin/js/rollenwahl.js +199 -0
  26. package/admin/js/schreiben.js +1537 -0
  27. package/admin/js/sprache.js +137 -0
  28. package/admin/js/start.js +39 -0
  29. package/admin/js/verbindung.js +10 -0
  30. package/admin/js/vorlagen.js +572 -0
  31. package/admin/js/vorlagenblatt.js +1907 -0
  32. package/admin/js/vorschlagen.js +391 -0
  33. package/admin/js/werte.js +193 -0
  34. package/admin/js/zielleiste.js +339 -0
  35. package/admin/js/zuordnung.js +695 -0
  36. package/admin/js/zustand.js +47 -0
  37. package/admin/js/zustandsliste.js +515 -0
  38. package/admin/jsonConfig.json +249 -0
  39. package/admin/tab.html +148 -0
  40. package/admin/vorlagen/hm-dimmer.json +204 -0
  41. package/admin/vorlagen/hm-fensterkontakt-hm.json +176 -0
  42. package/admin/vorlagen/hm-fensterkontakt-hmip.json +191 -0
  43. package/admin/vorlagen/hm-heizgruppe.json +214 -0
  44. package/admin/vorlagen/hm-heizkoerper.json +236 -0
  45. package/admin/vorlagen/hm-rollladen.json +190 -0
  46. package/admin/vorlagen/hm-schaltaktor-lampe.json +197 -0
  47. package/admin/vorlagen/hm-schaltaktor-mehrfach.json +203 -0
  48. package/admin/vorlagen/hm-schaltaktor-steckdose.json +197 -0
  49. package/admin/vorlagen/hm-temperatur-feuchte.json +166 -0
  50. package/admin/vorlagen/hm-wandthermostat.json +228 -0
  51. package/admin/vorlagen/index.json +21 -0
  52. package/admin/vorlagen/messpunkt.json +225 -0
  53. package/admin/vorlagen/tasmota-lampe.json +263 -0
  54. package/admin/vorlagen/tasmota-mehrfach.json +203 -0
  55. package/admin/vorlagen/tasmota-rgb.json +239 -0
  56. package/admin/vorlagen/tasmota-steckdose.json +265 -0
  57. package/io-package.json +122 -0
  58. package/package.json +48 -0
@@ -0,0 +1,176 @@
1
+ {
2
+ "id": "hm-fensterkontakt-hm",
3
+ "version": 2,
4
+ "rang": 40,
5
+ "name": {
6
+ "de": "Homematic Fensterkontakt (ältere Reihe)",
7
+ "en": "Homematic window contact (classic)"
8
+ },
9
+ "geraetetyp": "window",
10
+ "funktion": "window",
11
+ "hinweis": {
12
+ "de": "HM-Sec-SCo und Verwandte aus der Reihe vor HmIP. Anders als der HmIP-Kontakt meldet dieser schon einen Wahrheitswert — es braucht keine Umrechnung.",
13
+ "en": "HM-Sec-SCo and relatives from the generation before HmIP. Unlike the HmIP contact this one already reports a boolean, so no conversion is needed."
14
+ },
15
+ "erkennung": {
16
+ "erforderlich": [
17
+ "1.STATE",
18
+ "1.ERROR"
19
+ ],
20
+ "verboten": [
21
+ "1.WORKING"
22
+ ],
23
+ "hinweis": "1.ERROR gibt es beim HmIP-Kontakt nicht - daran trennen sich die beiden Fassungen. 1.WORKING bleibt verboten, damit kein Schaltaktor hier hereinrutscht."
24
+ },
25
+ "zustaende": [
26
+ {
27
+ "name": "ACTUAL",
28
+ "rolle": "sensor.window",
29
+ "typ": "boolean",
30
+ "lesen": "1.STATE"
31
+ },
32
+ {
33
+ "name": "ERROR",
34
+ "rolle": "indicator.error",
35
+ "typ": "number",
36
+ "lesen": "1.ERROR",
37
+ "optional": true,
38
+ "vorgabeAus": true,
39
+ "hinweis": "0 heisst in Ordnung, 7 Sabotage. Das window-Muster hat keinen Platz dafuer - angehakt landet der Punkt im info-Geraet."
40
+ },
41
+ {
42
+ "name": "LOWBAT",
43
+ "rolle": "indicator.lowbat",
44
+ "typ": "boolean",
45
+ "lesen": "0.LOWBAT",
46
+ "lesenSonst": {
47
+ "punkt": "1.LOWBAT"
48
+ },
49
+ "optional": true,
50
+ "hinweis": "Dieses Geraet fuehrt LOWBAT zweimal, an Kanal 0 und an Kanal 1. Kanal 0 ist der Wartungskanal und die richtige Adresse."
51
+ },
52
+ {
53
+ "name": "UNREACH",
54
+ "rolle": "indicator.maintenance.unreach",
55
+ "typ": "boolean",
56
+ "lesen": "0.UNREACH",
57
+ "optional": true
58
+ },
59
+ {
60
+ "name": "STICKY_UNREACH",
61
+ "rolle": "indicator.maintenance.unreach",
62
+ "typ": "boolean",
63
+ "lesen": "0.STICKY_UNREACH",
64
+ "optional": true,
65
+ "vorgabeAus": true,
66
+ "hinweis": "Bleibt stehen, bis jemand sie zuruecksetzt - zeigt also auch einen Ausfall an, der schon wieder vorbei ist."
67
+ },
68
+ {
69
+ "name": "RSSI",
70
+ "rolle": "value.rssi",
71
+ "typ": "number",
72
+ "einheit": "dBm",
73
+ "lesen": "0.RSSI_DEVICE",
74
+ "lesenSonst": {
75
+ "punkt": "0.RSSI_PEER"
76
+ },
77
+ "optional": true,
78
+ "vorgabeAus": true,
79
+ "hinweis": "RSSI_DEVICE steht zuerst: es ist der Pegel, den die Zentrale vom Geraet empfaengt. RSSI_PEER ist bei Batteriegeraeten oft unbelegt und traegt dann Grenzwerte wie -2147483648."
80
+ }
81
+ ],
82
+ "weiterePunkte": {
83
+ "*.ACTIVE_PROFILE": "level.mode",
84
+ "*.ACTUAL_TEMPERATURE": "value.temperature",
85
+ "*.ACTUAL_TEMPERATURE_STATUS": "value",
86
+ "*.BOOST_MODE": "switch.mode.boost",
87
+ "*.BOOST_TIME": "value.interval",
88
+ "*.BOOTED": "indicator",
89
+ "*.CARRIER_SENSE_LEVEL": "value",
90
+ "*.CONFIG_PENDING": "indicator.maintenance",
91
+ "*.CONFIG_PENDING_ALARM": "indicator.maintenance",
92
+ "*.CONTROL_DIFFERENTIAL_TEMPERATURE": "level.temperature",
93
+ "*.CONTROL_MODE": "level.mode.thermostat",
94
+ "*.DEVICE_IN_BOOTLOADER": "indicator.maintenance",
95
+ "*.DEVICE_IN_BOOTLOADER_ALARM": "indicator.maintenance",
96
+ "*.DEW_POINT_ALARM": "indicator.error",
97
+ "*.DIRECTION": "indicator.direction",
98
+ "*.DURATION_UNIT": "value",
99
+ "*.DURATION_VALUE": "value",
100
+ "*.DUTYCYCLE": "indicator.maintenance",
101
+ "*.DUTYCYCLE_ALARM": "indicator.maintenance",
102
+ "*.DUTY_CYCLE": "indicator.maintenance",
103
+ "*.DUTY_CYCLE_LEVEL": "value",
104
+ "*.EMERGENCY_OPERATION": "indicator.maintenance",
105
+ "*.EMERGENCY_OPERATION_ALARM": "indicator.maintenance",
106
+ "*.ERROR": "indicator.error",
107
+ "*.ERROR-1_ALARM": "indicator.error",
108
+ "*.ERROR-2_ALARM": "indicator.error",
109
+ "*.ERROR-3_ALARM": "indicator.error",
110
+ "*.ERROR-4_ALARM": "indicator.error",
111
+ "*.ERROR-5_ALARM": "indicator.error",
112
+ "*.ERROR-6_ALARM": "indicator.error",
113
+ "*.ERROR-7_ALARM": "indicator.error",
114
+ "*.ERROR_CODE": "value",
115
+ "*.ERROR_OVERHEAT": "indicator.error",
116
+ "*.ERROR_OVERHEAT_ALARM": "indicator.error",
117
+ "*.ERROR_OVERLOAD": "indicator.error",
118
+ "*.ERROR_OVERLOAD_ALARM": "indicator.error",
119
+ "*.ERROR_REDUCED": "indicator.error",
120
+ "*.ERROR_REDUCED_ALARM": "indicator.error",
121
+ "*.FROST_PROTECTION": "indicator",
122
+ "*.HEATING_COOLING": "level.mode",
123
+ "*.HUMIDITY": "value.humidity",
124
+ "*.HUMIDITY_STATUS": "value",
125
+ "*.INCLUSION_UNSUPPORTED_DEVICE": "indicator.maintenance",
126
+ "*.INHIBIT": "switch",
127
+ "*.INSTALL_MODE": "indicator",
128
+ "*.INSTALL_TEST": "indicator",
129
+ "*.LEVEL": "level",
130
+ "*.LEVEL_REAL": "value",
131
+ "*.LEVEL_STATUS": "value",
132
+ "*.LOWBAT": "indicator.lowbat",
133
+ "*.LOWBAT_ALARM": "indicator.lowbat",
134
+ "*.LOW_BAT": "indicator.lowbat",
135
+ "*.LOW_BAT_ALARM": "indicator.lowbat",
136
+ "*.OLD_LEVEL": "button",
137
+ "*.ON_TIME": "value.interval",
138
+ "*.OPERATING_VOLTAGE": "value.voltage",
139
+ "*.OPERATING_VOLTAGE_STATUS": "value",
140
+ "*.PARTY_MODE": "switch.mode.party",
141
+ "*.PARTY_SET_POINT_TEMPERATURE": "level.temperature",
142
+ "*.PARTY_TIME_END": "date.end",
143
+ "*.PARTY_TIME_START": "date.start",
144
+ "*.PRESS_LONG": "button.long",
145
+ "*.PRESS_SHORT": "button",
146
+ "*.PROCESS": "value",
147
+ "*.QUICK_VETO_TIME": "value.interval",
148
+ "*.RAMP_STOP": "button.stop",
149
+ "*.RAMP_TIME": "value.interval",
150
+ "*.RSSI_DEVICE": "value.rssi",
151
+ "*.RSSI_PEER": "value.rssi",
152
+ "*.SABOTAGE": "indicator.alarm",
153
+ "*.SABOTAGE_ALARM": "indicator.alarm",
154
+ "*.SECTION": "value",
155
+ "*.SECTION_STATUS": "value",
156
+ "*.SET_POINT_MODE": "level.mode.thermostat",
157
+ "*.SET_POINT_TEMPERATURE": "level.temperature",
158
+ "*.STICKY_UNREACH": "indicator.maintenance.unreach",
159
+ "*.STICKY_UNREACH_ALARM": "indicator.maintenance.unreach",
160
+ "*.STOP": "button.stop",
161
+ "*.SWITCH_POINT_OCCURED": "indicator",
162
+ "*.TEMPERATURE": "value.temperature",
163
+ "*.UNREACH": "indicator.maintenance.unreach",
164
+ "*.UNREACH_ALARM": "indicator.maintenance.unreach",
165
+ "*.UPDATE_PENDING": "indicator.maintenance",
166
+ "*.UPDATE_PENDING_ALARM": "indicator.maintenance",
167
+ "*.VALVE_ADAPTION": "indicator.maintenance",
168
+ "*.VALVE_STATE": "value.valve",
169
+ "*.VALVE_STATE_ADJUSTMENT_TOO_BIG": "indicator.error",
170
+ "*.VALVE_STATE_ADJUSTMENT_TOO_SMALL": "indicator.error",
171
+ "*.VALVE_STATE_ERROR_POSITION": "indicator.error",
172
+ "*.VALVE_STATE_TOO_TIGHT": "indicator.error",
173
+ "*.WINDOW_STATE": "value.window",
174
+ "*.WORKING": "indicator.working"
175
+ }
176
+ }
@@ -0,0 +1,191 @@
1
+ {
2
+ "id": "hm-fensterkontakt-hmip",
3
+ "version": 7,
4
+ "rang": 40,
5
+ "name": {
6
+ "de": "HmIP Fensterkontakt",
7
+ "en": "HmIP window contact"
8
+ },
9
+ "geraetetyp": "window",
10
+ "funktion": "window",
11
+ "hinweis": {
12
+ "de": "HMIP-SWDO und Verwandte. Der Kontakt meldet eine Zahl (0 zu, 1 offen), das window-Muster will einen Wahrheitswert — die Leseformel rechnet um. Modelle mit Kipperkennung melden zusätzlich 2; dort passt windowTilt besser, dann diese Vorlage kopieren und den Gerätetyp ändern.",
13
+ "en": "HMIP-SWDO and relatives. The contact reports a number (0 closed, 1 open) while the window pattern expects a boolean, so the read formula converts."
14
+ },
15
+ "erkennung": {
16
+ "erforderlich": [
17
+ "1.STATE",
18
+ "0.LOW_BAT",
19
+ "0.SABOTAGE"
20
+ ],
21
+ "verboten": [
22
+ "1.WORKING",
23
+ "1.ERROR",
24
+ "1.SET_POINT_TEMPERATURE"
25
+ ],
26
+ "hinweis": "0.SABOTAGE ist die eigentliche Kennung. Ohne sie tragen die Ausschluesse die ganze Last, und Ausschluesse zaehlen nur auf, was man kennt: 1.STATE zusammen mit 0.LOW_BAT trifft auf dem Testsystem zwoelf Geraete, davon acht Schaltaktoren (HM-LC-Sw1PBU-FM und Verwandte) und den alten HM-Sec-SCo. Mit 0.SABOTAGE bleiben genau die drei HmIP-Fensterkontakte uebrig - die Schaltaktoren fuehren den Punkt nicht, der HM-Sec-SCo auch nicht, und die Heizgruppen haben ihn zwar, aber kein 1.STATE.\n\nDie Ausschluesse bleiben trotzdem stehen: 1.WORKING kennzeichnet den Schaltaktor, 1.ERROR die aeltere HM-Sec-SCo mit eigener Vorlage, SET_POINT_TEMPERATURE haelt die Thermostate fern, die ebenfalls 0.LOW_BAT fuehren.\n\nVorbehalt: Gemessen ist das an HMIP-SWDO. Ob jedes HmIP-Modell den Sabotagekontakt fuehrt - SWDO-I verdeckt, SWDO-PL, der Fenstergriff SRH - ist nicht geprueft. Bei HmIP-Gehaeusegeraeten ist er ueblich; faellt doch eines durch, gehoert dort eine eigene Vorlage hin."
27
+ },
28
+ "zustaende": [
29
+ {
30
+ "name": "ACTUAL",
31
+ "rolle": "sensor.window",
32
+ "typ": "boolean",
33
+ "lesen": "1.STATE",
34
+ "leseformel": "val > 0",
35
+ "hinweis": "Die Quelle steht auf 0 bis 1. Groesser null heisst offen."
36
+ },
37
+ {
38
+ "name": "STATE_RAW",
39
+ "rolle": "value.window",
40
+ "typ": "number",
41
+ "lesen": "1.STATE",
42
+ "optional": true,
43
+ "vorgabeAus": true,
44
+ "hinweis": "Derselbe Punkt ungerechnet. Nur noetig, wenn etwas die Rohzahl braucht - im window-Muster hat sie keinen Platz und landet im info-Geraet."
45
+ },
46
+ {
47
+ "name": "SABOTAGE",
48
+ "rolle": "indicator.alarm",
49
+ "typ": "boolean",
50
+ "lesen": "0.SABOTAGE",
51
+ "optional": true,
52
+ "hinweis": "Meldet, wenn das Gehaeuse geoeffnet wurde. Nicht vorgehakt: weder window- noch info-Muster haben einen Platz dafuer - wer die Meldung will, hakt sie an. Als Erkennungsmerkmal (erkennung.erforderlich) traegt 0.SABOTAGE weiter.",
53
+ "vorgabeAus": true
54
+ },
55
+ {
56
+ "name": "LOWBAT",
57
+ "rolle": "indicator.lowbat",
58
+ "typ": "boolean",
59
+ "lesen": "0.LOW_BAT",
60
+ "lesenSonst": {
61
+ "punkt": "0.LOWBAT"
62
+ },
63
+ "optional": true,
64
+ "hinweis": "HmIP schreibt LOW_BAT, die aeltere Homematic-Reihe LOWBAT."
65
+ },
66
+ {
67
+ "name": "UNREACH",
68
+ "rolle": "indicator.maintenance.unreach",
69
+ "typ": "boolean",
70
+ "lesen": "0.UNREACH",
71
+ "optional": true
72
+ },
73
+ {
74
+ "name": "VOLTAGE",
75
+ "rolle": "value.voltage",
76
+ "typ": "number",
77
+ "einheit": "V",
78
+ "lesen": "0.OPERATING_VOLTAGE",
79
+ "optional": true,
80
+ "vorgabeAus": true,
81
+ "hinweis": "Batteriespannung. Nicht vorgehakt, und der VOLTAGE-Platz des Musters ist dafuer auch nicht gedacht: im type-detector gehoert VOLTAGE zur Messgruppe neben Strom, Verbrauch und Frequenz - es ist die Netzspannung eines messenden Geraets. Fuer Batterien gibt es dort nur BATTERY mit value.battery in Prozent. Einen Platz fuer „Batteriespannung in Volt\" kennt der Detector nicht. Angehakt landet der Punkt deshalb im info-Geraet. Dass die Batterie zur Neige geht, meldet LOWBAT, und das ist vorgehakt."
82
+ },
83
+ {
84
+ "name": "RSSI",
85
+ "rolle": "value.rssi",
86
+ "typ": "number",
87
+ "einheit": "dBm",
88
+ "lesen": "0.RSSI_DEVICE",
89
+ "lesenSonst": {
90
+ "punkt": "0.RSSI_PEER"
91
+ },
92
+ "optional": true,
93
+ "vorgabeAus": true,
94
+ "hinweis": "RSSI_DEVICE steht zuerst: es ist der Pegel, den die Zentrale vom Geraet empfaengt. RSSI_PEER ist bei Batteriegeraeten oft unbelegt und traegt dann Grenzwerte wie -2147483648."
95
+ }
96
+ ],
97
+ "weiterePunkte": {
98
+ "*.ACTIVE_PROFILE": "level.mode",
99
+ "*.ACTUAL_TEMPERATURE": "value.temperature",
100
+ "*.ACTUAL_TEMPERATURE_STATUS": "value",
101
+ "*.BOOST_MODE": "switch.mode.boost",
102
+ "*.BOOST_TIME": "value.interval",
103
+ "*.BOOTED": "indicator",
104
+ "*.CARRIER_SENSE_LEVEL": "value",
105
+ "*.CONFIG_PENDING": "indicator.maintenance",
106
+ "*.CONFIG_PENDING_ALARM": "indicator.maintenance",
107
+ "*.CONTROL_DIFFERENTIAL_TEMPERATURE": "level.temperature",
108
+ "*.CONTROL_MODE": "level.mode.thermostat",
109
+ "*.DEVICE_IN_BOOTLOADER": "indicator.maintenance",
110
+ "*.DEVICE_IN_BOOTLOADER_ALARM": "indicator.maintenance",
111
+ "*.DEW_POINT_ALARM": "indicator.error",
112
+ "*.DIRECTION": "indicator.direction",
113
+ "*.DURATION_UNIT": "value",
114
+ "*.DURATION_VALUE": "value",
115
+ "*.DUTYCYCLE": "indicator.maintenance",
116
+ "*.DUTYCYCLE_ALARM": "indicator.maintenance",
117
+ "*.DUTY_CYCLE": "indicator.maintenance",
118
+ "*.DUTY_CYCLE_LEVEL": "value",
119
+ "*.EMERGENCY_OPERATION": "indicator.maintenance",
120
+ "*.EMERGENCY_OPERATION_ALARM": "indicator.maintenance",
121
+ "*.ERROR": "indicator.error",
122
+ "*.ERROR-1_ALARM": "indicator.error",
123
+ "*.ERROR-2_ALARM": "indicator.error",
124
+ "*.ERROR-3_ALARM": "indicator.error",
125
+ "*.ERROR-4_ALARM": "indicator.error",
126
+ "*.ERROR-5_ALARM": "indicator.error",
127
+ "*.ERROR-6_ALARM": "indicator.error",
128
+ "*.ERROR-7_ALARM": "indicator.error",
129
+ "*.ERROR_CODE": "value",
130
+ "*.ERROR_OVERHEAT": "indicator.error",
131
+ "*.ERROR_OVERHEAT_ALARM": "indicator.error",
132
+ "*.ERROR_OVERLOAD": "indicator.error",
133
+ "*.ERROR_OVERLOAD_ALARM": "indicator.error",
134
+ "*.ERROR_REDUCED": "indicator.error",
135
+ "*.ERROR_REDUCED_ALARM": "indicator.error",
136
+ "*.FROST_PROTECTION": "indicator",
137
+ "*.HEATING_COOLING": "level.mode",
138
+ "*.HUMIDITY": "value.humidity",
139
+ "*.HUMIDITY_STATUS": "value",
140
+ "*.INCLUSION_UNSUPPORTED_DEVICE": "indicator.maintenance",
141
+ "*.INHIBIT": "switch",
142
+ "*.INSTALL_MODE": "indicator",
143
+ "*.INSTALL_TEST": "indicator",
144
+ "*.LEVEL": "level",
145
+ "*.LEVEL_REAL": "value",
146
+ "*.LEVEL_STATUS": "value",
147
+ "*.LOWBAT": "indicator.lowbat",
148
+ "*.LOWBAT_ALARM": "indicator.lowbat",
149
+ "*.LOW_BAT": "indicator.lowbat",
150
+ "*.LOW_BAT_ALARM": "indicator.lowbat",
151
+ "*.OLD_LEVEL": "button",
152
+ "*.ON_TIME": "value.interval",
153
+ "*.OPERATING_VOLTAGE": "value.voltage",
154
+ "*.OPERATING_VOLTAGE_STATUS": "value",
155
+ "*.PARTY_MODE": "switch.mode.party",
156
+ "*.PARTY_SET_POINT_TEMPERATURE": "level.temperature",
157
+ "*.PARTY_TIME_END": "date.end",
158
+ "*.PARTY_TIME_START": "date.start",
159
+ "*.PRESS_LONG": "button.long",
160
+ "*.PRESS_SHORT": "button",
161
+ "*.PROCESS": "value",
162
+ "*.QUICK_VETO_TIME": "value.interval",
163
+ "*.RAMP_STOP": "button.stop",
164
+ "*.RAMP_TIME": "value.interval",
165
+ "*.RSSI_DEVICE": "value.rssi",
166
+ "*.RSSI_PEER": "value.rssi",
167
+ "*.SABOTAGE": "indicator.alarm",
168
+ "*.SABOTAGE_ALARM": "indicator.alarm",
169
+ "*.SECTION": "value",
170
+ "*.SECTION_STATUS": "value",
171
+ "*.SET_POINT_MODE": "level.mode.thermostat",
172
+ "*.SET_POINT_TEMPERATURE": "level.temperature",
173
+ "*.STICKY_UNREACH": "indicator.maintenance.unreach",
174
+ "*.STICKY_UNREACH_ALARM": "indicator.maintenance.unreach",
175
+ "*.STOP": "button.stop",
176
+ "*.SWITCH_POINT_OCCURED": "indicator",
177
+ "*.TEMPERATURE": "value.temperature",
178
+ "*.UNREACH": "indicator.maintenance.unreach",
179
+ "*.UNREACH_ALARM": "indicator.maintenance.unreach",
180
+ "*.UPDATE_PENDING": "indicator.maintenance",
181
+ "*.UPDATE_PENDING_ALARM": "indicator.maintenance",
182
+ "*.VALVE_ADAPTION": "indicator.maintenance",
183
+ "*.VALVE_STATE": "value.valve",
184
+ "*.VALVE_STATE_ADJUSTMENT_TOO_BIG": "indicator.error",
185
+ "*.VALVE_STATE_ADJUSTMENT_TOO_SMALL": "indicator.error",
186
+ "*.VALVE_STATE_ERROR_POSITION": "indicator.error",
187
+ "*.VALVE_STATE_TOO_TIGHT": "indicator.error",
188
+ "*.WINDOW_STATE": "value.window",
189
+ "*.WORKING": "indicator.working"
190
+ }
191
+ }
@@ -0,0 +1,214 @@
1
+ {
2
+ "id": "hm-heizgruppe",
3
+ "version": 3,
4
+ "rang": 46,
5
+ "name": {
6
+ "de": "HmIP Heizgruppe",
7
+ "en": "HmIP heating group"
8
+ },
9
+ "geraetetyp": "thermostat",
10
+ "funktion": "heating",
11
+ "hinweis": "Die Heizgruppe eines Raums (HmIP-HEATING, in der Zentrale als INT000000x). Sie ist kein Gerät, sondern eine Zusammenfassung: Wandthermostat, Heizkörperventile und ein etwaiger Fensterkontakt regeln darin gemeinsam. Deshalb führt sie beides — Luftfeuchte vom Wandthermostaten und Ventilstellung vom Heizkörper — und deshalb fehlen ihr Funkpegel und Batteriespannung: die gehören den Geräten darin, nicht der Gruppe.\n\nSie ist der richtige Alias für einen Raum. Wer stattdessen das einzelne Ventil nimmt, stellt die Regelung neben die Gruppe statt in sie hinein.",
12
+ "erkennung": {
13
+ "erforderlich": [
14
+ "1.SET_POINT_TEMPERATURE",
15
+ "4.SECTION"
16
+ ],
17
+ "hinweis": "Kanal 4 fuehrt SECTION und PROCESS - das hat nur die Gruppe. Ein hoeherer Rang als bei Heizkoerper und Wandthermostat sorgt dafuer, dass sie gewinnt, wo sie zutrifft."
18
+ },
19
+ "zustaende": [
20
+ {
21
+ "name": "SET",
22
+ "rolle": "level.temperature",
23
+ "typ": "number",
24
+ "einheit": "°C",
25
+ "lesen": "1.SET_POINT_TEMPERATURE",
26
+ "schreiben": "1.SET_POINT_TEMPERATURE"
27
+ },
28
+ {
29
+ "name": "ACTUAL",
30
+ "rolle": "value.temperature",
31
+ "typ": "number",
32
+ "einheit": "°C",
33
+ "lesen": "1.ACTUAL_TEMPERATURE"
34
+ },
35
+ {
36
+ "name": "HUMIDITY",
37
+ "rolle": "value.humidity",
38
+ "typ": "number",
39
+ "einheit": "%",
40
+ "lesen": "1.HUMIDITY",
41
+ "hinweis": "Kommt vom Wandthermostaten der Gruppe."
42
+ },
43
+ {
44
+ "name": "VALVE",
45
+ "rolle": "value.valve",
46
+ "typ": "number",
47
+ "einheit": "%",
48
+ "lesen": "1.VALVE_STATE",
49
+ "hinweis": "Die Ventilstellung der Heizkoerper in dieser Gruppe."
50
+ },
51
+ {
52
+ "name": "MODE",
53
+ "rolle": "level.mode.thermostat",
54
+ "typ": "number",
55
+ "lesen": "1.SET_POINT_MODE",
56
+ "schreiben": "1.SET_POINT_MODE",
57
+ "optional": true,
58
+ "werteliste": {
59
+ "0": "Automatik",
60
+ "1": "Manuell",
61
+ "2": "Urlaub",
62
+ "3": "Modus 3"
63
+ },
64
+ "hinweis": "Der Platz MODE verlangt eine Werteliste - ohne common.states steht im Widget nur eine nackte Zahl. Die Quelle liefert keine mit: hm-rpc meldet den Punkt als INTEGER 0 bis 3 ohne VALUE_LIST.\nBelegt sind 0, 1 und 2. Die Zuordnung steht so in aiohomematic, der Bibliothek hinter der Homematic-Anbindung von Home Assistant: AUTO=0, MANU=1, AWAY=2. Automatik heisst, das Wochenprogramm laeuft; Manuell haelt den eingestellten Sollwert; Urlaub (englisch away) ist der Modus, zu dem PARTY_MODE und PARTY_TIME_START/END gehoeren.\n3 bleibt neutral - bei HmIP kennt aiohomematic keine 3, und Boost laeuft ueber den eigenen Punkt."
65
+ },
66
+ {
67
+ "name": "BOOST",
68
+ "rolle": "switch.mode.boost",
69
+ "typ": "boolean",
70
+ "lesen": "1.BOOST_MODE",
71
+ "schreiben": "1.BOOST_MODE",
72
+ "optional": true
73
+ },
74
+ {
75
+ "name": "PARTY",
76
+ "rolle": "switch.mode.party",
77
+ "typ": "boolean",
78
+ "lesen": "1.PARTY_MODE",
79
+ "optional": true,
80
+ "vorgabeAus": true,
81
+ "hinweis": "Nur lesbar. Gehoert zum Urlaubsmodus und wird ueber MODE gesetzt, nicht hier."
82
+ },
83
+ {
84
+ "name": "WINDOW_STATE",
85
+ "rolle": "value.window",
86
+ "typ": "number",
87
+ "lesen": "1.WINDOW_STATE",
88
+ "optional": true,
89
+ "vorgabeAus": true,
90
+ "werteliste": {
91
+ "0": "zu",
92
+ "1": "offen"
93
+ },
94
+ "hinweis": "Bei der Gruppe kommt der Wert vom Fensterkontakt, der ihr zugeordnet ist - hier steht also, ob im Raum ein Fenster offen ist und die Heizung deshalb zurueckfaehrt.\n\nTrotzdem nicht vorgehakt: Das thermostat-Muster hat zwar einen Platz WINDOW, der nimmt aber nur sensor.window oder state.window - die Quelle liefert eine Zahl mit value.window. Angehakt landet der Punkt deshalb im info-Geraet statt im Thermostat. Wer ihn drin haben will, rechnet ihn per Leseformel auf einen Wahrheitswert um (`val === 1`) und setzt die Rolle auf sensor.window."
95
+ },
96
+ {
97
+ "name": "LOWBAT",
98
+ "rolle": "indicator.lowbat",
99
+ "typ": "boolean",
100
+ "lesen": "0.LOW_BAT",
101
+ "optional": true,
102
+ "hinweis": "Die Gruppe fasst die Batteriewarnungen ihrer Mitglieder zusammen."
103
+ },
104
+ {
105
+ "name": "UNREACH",
106
+ "rolle": "indicator.maintenance.unreach",
107
+ "typ": "boolean",
108
+ "lesen": "0.UNREACH",
109
+ "optional": true
110
+ },
111
+ {
112
+ "name": "ERROR",
113
+ "rolle": "indicator.error",
114
+ "typ": "boolean",
115
+ "lesen": "0.ERROR_OVERHEAT",
116
+ "optional": true,
117
+ "hinweis": "Ueberhitzungsmeldung der Gruppe. Vorgehakt, weil sie ein Ausfallhinweis ist und keine Diagnosegroesse: `indicator.error` gehoert zur selben Wartungsgruppe wie LOWBAT und UNREACH. Nicht genommen sind 0.ERROR_CODE - ein Zahlencode ohne Werteliste, waehrend der Platz einen Indikator erwartet - und 0.SABOTAGE: Gehaeusemanipulation ist kein Heizungsausfall."
118
+ }
119
+ ],
120
+ "weiterePunkte": {
121
+ "*.ACTIVE_PROFILE": "level.mode",
122
+ "*.ACTUAL_TEMPERATURE": "value.temperature",
123
+ "*.ACTUAL_TEMPERATURE_STATUS": "value",
124
+ "*.BOOST_MODE": "switch.mode.boost",
125
+ "*.BOOST_TIME": "value.interval",
126
+ "*.BOOTED": "indicator",
127
+ "*.CARRIER_SENSE_LEVEL": "value",
128
+ "*.CONFIG_PENDING": "indicator.maintenance",
129
+ "*.CONFIG_PENDING_ALARM": "indicator.maintenance",
130
+ "*.CONTROL_DIFFERENTIAL_TEMPERATURE": "level.temperature",
131
+ "*.CONTROL_MODE": "level.mode.thermostat",
132
+ "*.DEVICE_IN_BOOTLOADER": "indicator.maintenance",
133
+ "*.DEVICE_IN_BOOTLOADER_ALARM": "indicator.maintenance",
134
+ "*.DEW_POINT_ALARM": "indicator.error",
135
+ "*.DIRECTION": "indicator.direction",
136
+ "*.DURATION_UNIT": "value",
137
+ "*.DURATION_VALUE": "value",
138
+ "*.DUTYCYCLE": "indicator.maintenance",
139
+ "*.DUTYCYCLE_ALARM": "indicator.maintenance",
140
+ "*.DUTY_CYCLE": "indicator.maintenance",
141
+ "*.DUTY_CYCLE_LEVEL": "value",
142
+ "*.EMERGENCY_OPERATION": "indicator.maintenance",
143
+ "*.EMERGENCY_OPERATION_ALARM": "indicator.maintenance",
144
+ "*.ERROR": "indicator.error",
145
+ "*.ERROR-1_ALARM": "indicator.error",
146
+ "*.ERROR-2_ALARM": "indicator.error",
147
+ "*.ERROR-3_ALARM": "indicator.error",
148
+ "*.ERROR-4_ALARM": "indicator.error",
149
+ "*.ERROR-5_ALARM": "indicator.error",
150
+ "*.ERROR-6_ALARM": "indicator.error",
151
+ "*.ERROR-7_ALARM": "indicator.error",
152
+ "*.ERROR_CODE": "value",
153
+ "*.ERROR_OVERHEAT": "indicator.error",
154
+ "*.ERROR_OVERHEAT_ALARM": "indicator.error",
155
+ "*.ERROR_OVERLOAD": "indicator.error",
156
+ "*.ERROR_OVERLOAD_ALARM": "indicator.error",
157
+ "*.ERROR_REDUCED": "indicator.error",
158
+ "*.ERROR_REDUCED_ALARM": "indicator.error",
159
+ "*.FROST_PROTECTION": "indicator",
160
+ "*.HEATING_COOLING": "level.mode",
161
+ "*.HUMIDITY": "value.humidity",
162
+ "*.HUMIDITY_STATUS": "value",
163
+ "*.INCLUSION_UNSUPPORTED_DEVICE": "indicator.maintenance",
164
+ "*.INHIBIT": "switch",
165
+ "*.INSTALL_MODE": "indicator",
166
+ "*.INSTALL_TEST": "indicator",
167
+ "*.LEVEL": "level",
168
+ "*.LEVEL_REAL": "value",
169
+ "*.LEVEL_STATUS": "value",
170
+ "*.LOWBAT": "indicator.lowbat",
171
+ "*.LOWBAT_ALARM": "indicator.lowbat",
172
+ "*.LOW_BAT": "indicator.lowbat",
173
+ "*.LOW_BAT_ALARM": "indicator.lowbat",
174
+ "*.OLD_LEVEL": "button",
175
+ "*.ON_TIME": "value.interval",
176
+ "*.OPERATING_VOLTAGE": "value.voltage",
177
+ "*.OPERATING_VOLTAGE_STATUS": "value",
178
+ "*.PARTY_MODE": "switch.mode.party",
179
+ "*.PARTY_SET_POINT_TEMPERATURE": "level.temperature",
180
+ "*.PARTY_TIME_END": "date.end",
181
+ "*.PARTY_TIME_START": "date.start",
182
+ "*.PRESS_LONG": "button.long",
183
+ "*.PRESS_SHORT": "button",
184
+ "*.PROCESS": "value",
185
+ "*.QUICK_VETO_TIME": "value.interval",
186
+ "*.RAMP_STOP": "button.stop",
187
+ "*.RAMP_TIME": "value.interval",
188
+ "*.RSSI_DEVICE": "value.rssi",
189
+ "*.RSSI_PEER": "value.rssi",
190
+ "*.SABOTAGE": "indicator.alarm",
191
+ "*.SABOTAGE_ALARM": "indicator.alarm",
192
+ "*.SECTION": "value",
193
+ "*.SECTION_STATUS": "value",
194
+ "*.SET_POINT_MODE": "level.mode.thermostat",
195
+ "*.SET_POINT_TEMPERATURE": "level.temperature",
196
+ "*.STICKY_UNREACH": "indicator.maintenance.unreach",
197
+ "*.STICKY_UNREACH_ALARM": "indicator.maintenance.unreach",
198
+ "*.STOP": "button.stop",
199
+ "*.SWITCH_POINT_OCCURED": "indicator",
200
+ "*.TEMPERATURE": "value.temperature",
201
+ "*.UNREACH": "indicator.maintenance.unreach",
202
+ "*.UNREACH_ALARM": "indicator.maintenance.unreach",
203
+ "*.UPDATE_PENDING": "indicator.maintenance",
204
+ "*.UPDATE_PENDING_ALARM": "indicator.maintenance",
205
+ "*.VALVE_ADAPTION": "indicator.maintenance",
206
+ "*.VALVE_STATE": "value.valve",
207
+ "*.VALVE_STATE_ADJUSTMENT_TOO_BIG": "indicator.error",
208
+ "*.VALVE_STATE_ADJUSTMENT_TOO_SMALL": "indicator.error",
209
+ "*.VALVE_STATE_ERROR_POSITION": "indicator.error",
210
+ "*.VALVE_STATE_TOO_TIGHT": "indicator.error",
211
+ "*.WINDOW_STATE": "value.window",
212
+ "*.WORKING": "indicator.working"
213
+ }
214
+ }