@pellebot/homebridge-fritz-platform-hb2 1.0.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 (49) hide show
  1. package/CHANGELOG.md +712 -0
  2. package/CONTRIBUTING.md +83 -0
  3. package/DEBUG.md +72 -0
  4. package/LICENSE +22 -0
  5. package/README.md +240 -0
  6. package/branding/Icon.png +0 -0
  7. package/config.schema.json +943 -0
  8. package/index.mjs +19 -0
  9. package/package.json +69 -0
  10. package/src/accessories/extras/extras.accessory.js +73 -0
  11. package/src/accessories/extras/extras.config.js +43 -0
  12. package/src/accessories/extras/extras.handler.js +799 -0
  13. package/src/accessories/extras/extras.js +8 -0
  14. package/src/accessories/extras/extras.setup.js +93 -0
  15. package/src/accessories/router/router.accessory.js +583 -0
  16. package/src/accessories/router/router.config.js +51 -0
  17. package/src/accessories/router/router.handler.js +1024 -0
  18. package/src/accessories/router/router.js +9 -0
  19. package/src/accessories/router/router.setup.js +73 -0
  20. package/src/accessories/router/router.utils.js +22 -0
  21. package/src/accessories/smarthome/blind/blind.accessory.js +40 -0
  22. package/src/accessories/smarthome/button/button.accessory.js +89 -0
  23. package/src/accessories/smarthome/contact/contact.accessory.js +120 -0
  24. package/src/accessories/smarthome/energy-meter/energy-meter.accessory.js +75 -0
  25. package/src/accessories/smarthome/energy-temperature/energy-temperature.accessory.js +68 -0
  26. package/src/accessories/smarthome/humidity/humidity.accessory.js +90 -0
  27. package/src/accessories/smarthome/lightbulb/lightbulb.accessory.js +112 -0
  28. package/src/accessories/smarthome/outlet/outlet.accessory.js +117 -0
  29. package/src/accessories/smarthome/outlet-lightbulb/outlet-lightbulb.accessory.js +233 -0
  30. package/src/accessories/smarthome/smarthome-button.handler.js +316 -0
  31. package/src/accessories/smarthome/smarthome.config.js +35 -0
  32. package/src/accessories/smarthome/smarthome.handler.js +1981 -0
  33. package/src/accessories/smarthome/smarthome.js +24 -0
  34. package/src/accessories/smarthome/smarthome.setup.js +160 -0
  35. package/src/accessories/smarthome/smarthome.utils.js +40 -0
  36. package/src/accessories/smarthome/smoke/smoke.accessory.js +85 -0
  37. package/src/accessories/smarthome/switch/switch.accessory.js +56 -0
  38. package/src/accessories/smarthome/switch-lightbulb/switch-lightbulb.accessory.js +172 -0
  39. package/src/accessories/smarthome/temperature/temperature.accessory.js +111 -0
  40. package/src/accessories/smarthome/thermostat/thermostat.accessory.js +186 -0
  41. package/src/accessories/smarthome/window/window.accessory.js +120 -0
  42. package/src/accessories/smarthome/window-switch/window-switch.accessory.js +38 -0
  43. package/src/lib/telegram.js +80 -0
  44. package/src/package.json +4 -0
  45. package/src/platform.js +241 -0
  46. package/src/types/custom.types.js +132 -0
  47. package/src/types/eve.types.js +112 -0
  48. package/src/utils/logger.js +68 -0
  49. package/src/utils/utils.js +132 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,712 @@
1
+ # Changelog
2
+
3
+ > **Hinweis zum Format:** Releases ab `v1.0.0` werden unter dem npm-Paket `@pellebot/homebridge-fritz-platform-hb2` veröffentlicht. Die `6.1.0-hb2patch.x` Pre-Releases sind Vorstufen unter dem alten Paketnamen `@pellebot/homebridge-fritz-platform` (deprecated). Die `registerPlatform`-Kennung bleibt durchgängig `homebridge-fritz-platform`, sodass cached Accessories über den Rename hinweg matchen — kein Re-Pairing nötig.
4
+
5
+ # v1.0.0 — 2026-05-13 (First Production Release)
6
+
7
+ **Erstes stabiles Release** des `@pellebot/homebridge-fritz-platform-hb2`. Setzt die Code-Linie der `6.1.0-hb2patch.x` Pre-Releases fort, jetzt mit unabhängiger Versionierung und neuem npm-Paketnamen.
8
+
9
+ ## Breaking Changes ggü. v6.1.0-hb2patch.1
10
+
11
+ - **npm-Paket umbenannt**: `@pellebot/homebridge-fritz-platform` → `@pellebot/homebridge-fritz-platform-hb2`. Der `-hb2`-Suffix macht explizit, dass dies die Homebridge-2.0-Linie ist. Migration:
12
+ ```
13
+ sudo npm uninstall -g @pellebot/homebridge-fritz-platform
14
+ sudo npm install -g @pellebot/homebridge-fritz-platform-hb2
15
+ ```
16
+ Die `registerPlatform`-Kennung (`homebridge-fritz-platform`) ändert sich **nicht** — bestehende cached Accessories werden weiter gematched, kein iPhone-Re-Pairing.
17
+ - **Versionierung zurückgesetzt** auf `1.0.0`. Damit endet die Mitführung der Upstream-Version `6.x` aus dem Original. Eigene SemVer-Linie ab jetzt.
18
+
19
+ ## Bug Fixes
20
+
21
+ - **Router-Companion-Switches (Wifi-Toggles, WPS, DECT, AB, Reconnect) reagierten nicht auf Tippen.** Root Cause: `case 'extra'` war beim Phase-1-Cleanup fälschlich als "out-of-scope" eingestuft und aus dem `platform.js`-Dispatch entfernt worden. Dadurch wurde `ExtrasAccessory` nie instanziiert, der `onSet`-Handler für die standardmäßige `On`-Charakteristik der Switch-Services nie registriert. HomeKit-Taps liefen ins Leere, die Tiles flipten zurück. Fix: `case 'extra'` wieder eingefügt, `ExtrasAccessory` wired den Switch-Service korrekt an `RouterHandler.set/get/change`.
22
+ - **WPS-State wurde falsch interpretiert.** `GetWPSInfo` liefert nach abgebrochenen WPS-Sessions häufig `WPSStatus: 'err_common'`. Die alte Logik `state = status !== 'off'` matchte das als "WPS ist an", obwohl der WPS-Modus in Wahrheit gestoppt war. Fix: Auf `WPSMode`-basierte Erkennung umgestellt — Tile ist nur ON wenn der Mode aktiv läuft (`pbc` / `pin`).
23
+
24
+ ## Neuerungen
25
+
26
+ - **Neuer accType `energy-temperature`** für FRITZ!Smart Energy 250 OBIS-Reader (und ähnliche HAN-FUN-Stromzähler-Gateways). Exponiert die Powermeter-Werte als `TemperatureSensor`-Service, damit Apple Home den Zahlenwert nativ als Tile anzeigt und Verlaufsgraphen plottet — ohne Eve-App-Abhängigkeit. Config-Feld `obisChannel: 'current_power' | 'total_energy'` wählt zwischen aktueller Leistung (W) und kumulierter Energie (kWh). Trennung von Bezug/Einspeisung erfolgt automatisch über den AIN-Suffix: `-1` (OBIS 1.x) zeigt nur positive Power-Werte (Bezug), `-2` (OBIS 2.x) zeigt `|negative|` Power-Werte (Einspeisung). Trade-off: HomeKit zeigt die Einheit als `°C` an — semantisch falsch, aber funktional korrekt; Tile in der Home-App umbenennen für klare Lesart.
27
+ - **Energy-meter accType weiterhin verfügbar** als Alternative für Nutzer die lieber das Outlet-Tile mit Eve-App-Charakteristiken haben. Beide accTypes können parallel konfiguriert sein.
28
+
29
+ ## Doku-Update
30
+
31
+ - `README.md` neu strukturiert: Production-Status, Geräte-Tabelle, Architektur-Erklärung, Migration-Guide für Energy 250. Lineage-Sektion (SeydX-Credit) in den Footer verschoben.
32
+ - `CHANGELOG.md`: Versionierungs-Hinweis aktualisiert auf `-hb2`-Paket.
33
+ - `DEBUG.md`, `CONTRIBUTING.md`: Paketnamen-Referenzen auf `-hb2`.
34
+
35
+ ## Bekannte Limitationen (unverändert)
36
+
37
+ - **Apple Home Energy-Display nicht nativ**: Apple HomeKit hat keine "Power Meter"-Service-Klasse. Workaround über `energy-temperature` (TemperatureSensor-Missbrauch) ist der best-möglich Stand.
38
+ - **fakegato-history Stub**: keine historischen Eve-App-Graphen. Live-Werte funktionieren, Apple Home plottet Verlaufsgraphen für `energy-temperature`-Tiles nativ.
39
+
40
+ ---
41
+
42
+ # v6.1.0-hb2patch.1 — 2026-05-11 (Polish-Release, beta)
43
+
44
+ **Folge-Release** zum Initial-Fork-Release vom gleichen Tag. Bringt vollwertige Router-Toggle-Unterstützung, ein deutlich schlankeres Config-UI-X-Schema und korrigiert den npm-Scope-Namen.
45
+
46
+ ## Neuerungen
47
+
48
+ - **`custom.types.js` auf ES6-Klassen portiert** (Phase 1.2 der Roadmap). Die 21 Custom-Characteristics für WiFi-Toggles, WPS, DECT-Basis, Reconnect, AB, Rufumleitung, DNS, Phonebook, Caller/Called, Download/Upload/Ping sind wieder registriert. **Ergebnis: Router-Accessory mit `hide: false` funktioniert jetzt vollständig**, die entsprechenden Switches/Sensoren erscheinen in HomeKit. Service-Switch-Override aus dem Original wurde nicht portiert (HAP-v2-Risiko, nicht nötig — Charakteristiken werden dynamisch via `service.addCharacteristic()` zugewiesen).
49
+ - **`config.schema.json` von 73 KB auf 32 KB entschlackt** (Phase 2.1 der Roadmap). Out-of-Scope-Sektionen (presence, wol, network, childLock, callmonitor, extras, telegram) sowie unbenutzte Sub-Felder (options.presence, options.reboot) entfernt. Config UI X zeigt jetzt nur noch die Sektionen die tatsächlich vom Plugin gelesen werden: Name, Log, Devices, Smart Home, Options.
50
+
51
+ ## Breaking Changes ggü. v6.1.0-hb2patch.0
52
+
53
+ - **npm-Scope-Namensänderung**: das Paket heißt jetzt `@pellebot/homebridge-fritz-platform`. Der zwischenzeitliche `@pellini`-Scope war ein Tippfehler. Falls du das alte Paket lokal installiert hast: `npm uninstall -g @pellini/homebridge-fritz-platform` und mit dem neuen Scope reinstallieren. Die `registerPlatform`-Kennung bleibt `homebridge-fritz-platform` (cached Accessories werden weiter gematched, kein iPhone-Re-Pairing).
54
+ - **`hide` Empfehlung gedreht**: in hb2patch.0 stand "`hide: true` ist Pflicht weil Router-Toggles crashen". Das ist mit diesem Release nicht mehr nötig. Default-Empfehlung jetzt `hide: false` (Router-Toggles sichtbar). Wer das nicht will, kann auf `hide: true` setzen.
55
+
56
+ ## Bekannte Limitationen (unverändert ggü. hb2patch.0)
57
+
58
+ - **Apple Home Energy-Display fehlt**: Apple HomeKit hat keine native "Power Meter"-Service-Klasse. Energy-Meter-Werte nur in Eve App sichtbar.
59
+ - **fakegato-history Stub**: keine historischen Eve-App-Graphen. Live-Werte funktionieren.
60
+
61
+ ---
62
+
63
+ # v6.1.0-hb2patch.0 — 2026-05-11 (Fork-Initial-Release, beta)
64
+
65
+ **Erste Version des Wartungs-Forks.** Migrationspatch für Homebridge 2.0 + Node 22/24, basierend auf `SeydX/homebridge-fritz-platform@6.0.19` (letzte gepublishte Upstream-Version).
66
+
67
+ ## Breaking Changes ggü. v6.0.19
68
+
69
+ - **Subsysteme entfernt** (siehe README für Begründung): callmonitor, presence, network, wol, childlock, extras (DNS, alarm, wakeup, ringlock, phoneBook, fallbackInternet). Config-Einträge für diese Subsysteme werden ignoriert.
70
+ - **`fakegato-history` als No-Op gestubbt** — Eve-App-History-Graphen funktionieren nicht (kein HAP-v2-kompatibler Fork verfügbar). Live-Werte unverändert sichtbar.
71
+ - **Router-Accessory standardmäßig versteckt empfohlen** (`hide: true`). Die Custom-Charakteristiken für WiFi/DECT/WPS-Toggles sind in dieser Version nicht ES6-portiert; bei `hide: false` und konfigurierten Router-Options crasht der Child-Bridge-Start. → ✅ **Behoben in v6.1.0-hb2patch.1** (ES6-Port abgeschlossen, `hide: false` empfohlen).
72
+ - **Node-Mindestversion auf ≥22.12** angehoben. Node 14/16/18/20 nicht mehr supportet.
73
+ - **Homebridge ≥1.6 oder ≥2.0** als Engines-Range. HB 1.6/1.7 noch akzeptiert, getestet ist primär HB 1.8.5+ und HB 2.0.x.
74
+
75
+ ## Neuerungen
76
+
77
+ - **HAP-NodeJS v2 Migration**: `BatteryService` → `Battery` Service (43 Stellen in 9 DECT-Files), `eve.types.js` von ES5-Function-Inheritance auf ES6-Klassen portiert mit String-Literal-basierten Format-/Perm-/Unit-Werten (HAP-Spec-konform, version-stabil).
78
+ - **ESM-Entrypoint** (`index.mjs`) via `createRequire`, internes `src/`-CommonJS-Tree unverändert (Minimal-Patch-Prinzip). `src/package.json` mit `type: commonjs` für korrektes Module-Scoping.
79
+ - **Neuer `accType: "energy-meter"`** (experimentell) für AVM Fritz!Smart Energy 250 im OBIS-Reader-Modus. Liest Sub-AINs `<base>-1` (OBIS 1.8 Bezug) und `<base>-2` (OBIS 2.8 Einspeisung), exponiert `CurrentConsumption` (W) und `TotalConsumption` (kWh) als Eve-Charakteristiken auf einem read-only Outlet-Service. Apple Home stock zeigt nur Plug-Tile; Werte in Eve App sichtbar.
80
+
81
+ ## Bekannte Limitationen (in dieser Version — neuere siehe v6.1.0-hb2patch.1)
82
+
83
+ - **Router-Toggles deaktiviert**: WiFi 2.4/5GHz/Guest, WPS, DECT, AW, Reconnect, Download/Upload/Ping-Charakteristiken nicht funktional. Workaround: `hide: true` auf Router-Config. → **Behoben in v6.1.0-hb2patch.1**.
84
+ - **Apple Home Energy-Display fehlt**: Apple HomeKit hat keine native "Power Meter"-Service-Klasse. Energy-Meter-Werte nur in Eve App sichtbar.
85
+ - **fakegato-history Stub**: keine historischen Eve-App-Graphen. Live-Werte funktionieren.
86
+
87
+ ## Migration-Hinweise
88
+
89
+ Wenn du von Upstream `homebridge-fritz-platform@6.0.19` upgradest (besser direkt auf v6.1.0-hb2patch.1 gehen — siehe oben):
90
+
91
+ 1. Backup deines `~/.homebridge/` Verzeichnisses
92
+ 2. `npm uninstall -g homebridge-fritz-platform`
93
+ 3. `npm install -g @pellebot/homebridge-fritz-platform@beta` (oder via lokalem .tgz)
94
+ 4. Config: ggf. veraltete Subsystem-Einträge entfernen (presence, callmonitor etc.)
95
+ 5. Homebridge auf 1.8.5+ oder 2.0+ upgraden, Node 22/24 sicherstellen
96
+ 6. Restart
97
+
98
+ Bei Beibehaltung der Device-Namen bleiben Accessory-UUIDs identisch — kein iPhone-Re-Pairing nötig.
99
+
100
+ ---
101
+
102
+ # Historischer Changelog (Original-Plugin von SeydX)
103
+
104
+ Die folgenden Einträge stammen aus dem Upstream-Repo `SeydX/homebridge-fritz-platform`, eingestellt nach v6.0.19. Aus Transparenz und Nachvollziehbarkeit unverändert hier erhalten.
105
+
106
+ # v6.0.18 - 2021-10-06
107
+
108
+ ## Bugfixes
109
+ - Minor Bugfixes
110
+
111
+ # v6.0.17 - 2021-10-06
112
+
113
+ ## Other Changes
114
+ - Updated dependencies
115
+
116
+ ## Bugfixes
117
+ - Fixed an issue where smarthome thermostat groups did not display the average current temperature
118
+ - Fixed an issue where starting wps failed and showed wrong state
119
+ - Fixed an issue where setting thermostat to max temperature (via FritzBox) displayed wrong state/temperature in HomeKit
120
+ - Fixed an issue where scenes/automations do not work properly with Smarthome thermostats
121
+ - Minor Bugfixes
122
+
123
+ # v6.0.16 - 2021-09-21
124
+
125
+ ## Notable Changes
126
+ - **Presence**
127
+ - Guest Wifi Presence: Occupancy/Motion sensor which will be triggered if someone is connected to the guest wifi (master device)
128
+
129
+ ## Bugfixes
130
+ - Fixed an issue where number lookup didnt work properly (callmonitor)
131
+ - Fixed an issue where turning on the deflection affected only the first deflection in the list
132
+ - Minor Bugfixes
133
+
134
+ # v6.0.15 - 2021-09-19
135
+
136
+ ## Other Changes
137
+ - Updated dependencies
138
+
139
+ ## Bugfixes
140
+ - Fixed an issue where smarthome thermostat groups did not display the average current temperature
141
+ - Fixed an issue where smarthome buttons did not work properly
142
+ - Fixed an issue where router led state did not work properly
143
+ - Minor bug fixes
144
+
145
+ # v6.0.14 - 2021-07-08
146
+
147
+ ## Bugfixes
148
+ - Fixed an issue where thermostats did not display the temperature value of the external temperature when `externTemperatureSensor` is enabled
149
+
150
+ # v6.0.13 - 2021-07-08
151
+
152
+ ## Bugfixes
153
+ - Fixed an issue where changing color of smarthome lightbulbs showed wrong color/saturation
154
+
155
+ # v6.0.12 - 2021-07-08
156
+
157
+ ## Notable Changes
158
+ - **Smarthome**
159
+ - Changed "Humidity Sensor" from built-in sensor to a separate humidity sensor accessory
160
+ - Added new `externTemperatureSensor` option for thermostat accessories to use the temperature value from the external temperature sensor setted up in the FritzBox GUI
161
+
162
+ ## Other Changes
163
+ - Reduced minimum polling timer to `1`
164
+
165
+ ## Bugfixes
166
+ - Fixed an issue where enabling temperature or humidity doesnt work for several smarthome accessories
167
+ - Fixed an issue where receiving an error during sending a telegram message caused homebridge to crash
168
+ - Fixed an issue where thermostat `open window switch` caused a warning on startup
169
+ - Minor bug fixes
170
+
171
+ # v6.0.11 - 2021-07-04
172
+
173
+ ## Other Changes
174
+ - Updated dependencies
175
+
176
+ ## Bugfixes
177
+ - Fixed an issue where buttons with 4 channels didnt work properly
178
+
179
+ # v6.0.10 - 2021-06-28
180
+
181
+ ## Bugfixes
182
+ - Fixed an issue where authentication with a complex password didnt work
183
+
184
+ # v6.0.9 - 2021-06-28
185
+
186
+ ## Bugfixes
187
+ - Fixed an issue where changing lightbulb color didnt work
188
+
189
+ # v6.0.8 - 2021-06-27
190
+
191
+ ## Bugfixes
192
+ - Fixed an issue where restarting a router failed
193
+ - Minor bug fixes
194
+
195
+ # v6.0.7 - 2021-06-27
196
+
197
+ ## Bugfixes
198
+ - Fixed an issue where presence user throw an erorr if it could not be found manually or in the hosts list
199
+ - Minor bug fixes
200
+
201
+ # v6.0.6 - 2021-06-27
202
+
203
+ ## Other Changes
204
+ - Updated dependencies
205
+
206
+ ## Bugfixes
207
+ - Fixed an issue where restarting a router failed
208
+ - Minor bug fixes
209
+
210
+ # v6.0.5 - 2021-06-23
211
+
212
+ ## Other Changes
213
+ - Improved logging
214
+
215
+ ## Bugfixes
216
+ - Fixed an issue where callmonitor (outgoing) not triggered correctly
217
+
218
+ # v6.0.4 - 2021-06-22
219
+
220
+ ## Bugfixes
221
+ - Minor bug fixes
222
+
223
+ # v6.0.3 - 2021-06-22
224
+
225
+ ## Notable Changes
226
+ - **Log**:
227
+ - Added multiple logging functions to config to allow adjusting the logging output.
228
+ - **Smarthome**:
229
+ - **Buttons**: Added support for Telekom Wandtaster
230
+ - **Config**:
231
+ - **Buttons**: Added `longPress` option to smarthome buttons
232
+
233
+ ## Other Changes
234
+ - Updated dependencies
235
+
236
+ ## Bugfixes
237
+ - Fixed an issue where presence devices with an ip address in the config could not be exposed to HomeKit.
238
+ - Minor bug fixes
239
+
240
+ # v6.0.2 - 2021-06-22
241
+
242
+ ## Other Changes
243
+ - Better error handling in the backend
244
+
245
+ ## Bugfixes
246
+ - Fixed an issue where extra characteristics was not polling
247
+ - Fixed an issue with Telegram where also the subtypes of an accessory was shown in the message
248
+ - Minor bug fixes
249
+
250
+ # v6.0.1 - 2021-06-21
251
+
252
+ ## Bugfixes
253
+ - Minor bug fixes
254
+ - Cleaned up config.schema.json
255
+
256
+ # v6.0.0 - 2021-06-21
257
+ This update is by far the biggest update for `homebridge-fritz-platform`. To make adding new devices also easier for developers, the complete plugin has been rewritten and made modular. This should give all developers the possibility to read the code more easily and add new devices via PR themselves.
258
+
259
+ ## Breaking Changes
260
+ - **Homebridge**
261
+ - Dropped support for homebridge below v1.3.0
262
+ - **Devices**:
263
+ - Added `active` key to `devices` to enable/disable the device without removing it from config. Warning: Default value for `active` is false, this means, that if you DON'T adjust your config.json and add `"active": true` to the device, the device will be removed from HomeKit!
264
+ - **Smarthome**:
265
+ - Added `active` key to `smarthome` to enable/disable the device without removing it from config. Warning: Default value for `active` is false, this means, that if you DON'T adjust your config.json and add `"active": true` to the device, the device will be removed from HomeKit!
266
+ - **WOL**:
267
+ - Added `active` key to `wol` to enable/disable the device without removing it from config. Warning: Default value for `active` is false, this means, that if you DON'T adjust your config.json and add `"active": true` to the device, the device will be removed from HomeKit!
268
+ - **Network Monitoring**:
269
+ - Added `active` key to `network` to enable/disable the device without removing it from config. Warning: Default value for `active` is false, this means, that if you DON'T adjust your config.json and add `"active": true` to the device, the plugin will not notify you if the device is online/offline!
270
+
271
+ ## Notable Changes
272
+ - **Child Lock**:
273
+ - Added new `childLock` array into config to expose child lock switches for given device. Child Lock switches grants/denies acces to the internet for the given ip addresses.
274
+ - **Devices**:
275
+ - Added a new option `wifiUnits` to devices to manually set the available wifi units (support for multiple units like 1x 2.4Ghz and 2x 5Ghz)
276
+ - Added a new option `reconnect` to device options to expose a Reconnect characteristic/switch which interrupt the internet access and reconnect (for changing external ip)
277
+ - **Smarthome**:
278
+ - Blinds: Added `blind` as a new accessory (`accType`) type
279
+ - Buttons: Added `button` as a new accessory (`accType`) type with 1/4 button support with oen polling timer (`timerSmarthomeButtons`) configurable under `options.polling.timerSmarthomeButtons`
280
+ - Thermostat:
281
+ - Added new `openWindow` option to expose an switch to manually trigger open/close window
282
+ - Outlet:
283
+ - Added new `startValue` option which is used for notification via telegram when device started (current power consumption above this value) or ended (current power consumption below this value)
284
+ - **Extras**:
285
+ - Added new `dnsServer` option to `extras` config to expose a switch which toggles the dns server from fritzbox to "internet provider" or "own dns server"
286
+ - Added new `fallbackInternet` option to `extras` config to expose a switch which toggles the fallback internet option from fritzbox
287
+ - **Presence**:
288
+ - Moved `onDelay` and `offDelay` from options.presence to presence user to allow separate values for each user
289
+ - **Callmonitor**:
290
+ - Added `incomingFrom` array into callmonitor options to allow trigger callmonitor only for speicifc numbers
291
+ - **Telegram**:
292
+ - Added `outlet.started` and `outlet.finished` as a new option to notify via Telegram if device is started/finished
293
+ - **Options**:
294
+ - Removed `onDelay` and `offDelay` from options.presence
295
+ - Added `timerSmarthomeButtons` to options.polling
296
+ - **Polling**:
297
+ - Refactored `exclude` list. Now, only following type of accessories/characteristics can be excluded from polling: `dsl` (accessory name), `cable` (accessory name), `repeater` (accessory name), `wifi_2ghz`, `wifi_5ghz`, `wifi_guest`, `wps`, `led`, `lock`, `aw`, `dect`, `deflection`, `ringlock`
298
+ - Minimum/Default polling timer (seconds) increased to 15 seconds
299
+
300
+ ## Other Changes
301
+ - The code has been refactored (again)
302
+ - Adjusted config.schema.json to reflect the changes mentioned above
303
+ - Updated dependencies
304
+
305
+ ## Bugfixes
306
+ - Minor bug fixes
307
+
308
+ # v5.1.2 - 2021-05-30
309
+ - Fix CreateUrlSID for DECT
310
+
311
+ # v5.1.1 - 2021-05-30
312
+ - Bump dependencies
313
+
314
+ # v5.1.0 - 2021-05-20
315
+ - Refactored backend module `@seydx/fritzbox`
316
+ - Some minor improvements and bugfixes
317
+ - Bump dependencies
318
+
319
+ # v5.0.33 - 2021-05-19
320
+ - Fixed an issue where changing temperature from thermostat was not possible with Siri
321
+ - Bump dependencies
322
+ - Minor bugfixes and improvements
323
+
324
+ # v5.0.32 - 2021-03-22
325
+ - Bugfix
326
+
327
+ # v5.0.31 - 2021-03-16
328
+ - Added "cooling" state to HeaterCooler
329
+
330
+ # v5.0.30 - 2021-03-16
331
+ - Changed Smarthome Thermostat Service to HeaterCooler Service
332
+
333
+ **WARNING**
334
+
335
+ This change will break your automations with your smarthome thermostats because they will be removed from HomeKit and re added again as a new type of thermostats!
336
+
337
+ # v5.0.26 - 2021-03-14
338
+ - Fixed characteristic warnings from eve characteristics (fakegato)
339
+ - Bump dependencies
340
+
341
+ # v5.0.25 - 2021-02-28
342
+ - Fix [#157](https://github.com/SeydX/homebridge-fritz-platform/issues/157)
343
+ - Fix [#139](https://github.com/SeydX/homebridge-fritz-platform/issues/139)
344
+
345
+ # v5.0.24 - 2021-02-28
346
+ - Fixed broadband
347
+
348
+ **INFO: ** If you have "Broadband" active you have to deactivate it after the update, restart HB and reactivate "Broadband" !
349
+
350
+ # v5.0.23 - 2021-02-28
351
+ - Refactored broadband again
352
+
353
+ # v5.0.22 - 2021-02-27
354
+ - Refactored broadband
355
+
356
+ # v5.0.21 - 2021-02-24
357
+ - Bugfixes
358
+
359
+ # v5.0.20 - 2020-12-05
360
+ - Fix smarthome humidity
361
+
362
+ # v5.0.19 - 2020-12-05
363
+ - Fixed answering machine
364
+ - Improved debug for smarthome devices/groups
365
+
366
+ # v5.0.18 - 2020-12-04
367
+ - Updated config.schema.json to support humidity sensor
368
+
369
+ # v5.0.17 - 2020-12-04
370
+ - Added humidity sensor for supported smarthome devices (currently available only with Fritz!OS 7.24)
371
+
372
+ # v5.0.16 - 2020-11-27
373
+ - Bugfixes
374
+
375
+ # v5.0.15 - 2020-11-27
376
+ - Added new option to expose grouped smarthome devices.
377
+ - Adaptive Lighting
378
+ - Bugfixes
379
+
380
+ ### Grouped Smarthome Devices
381
+ Grouped Smarthome Devices can be exposed as Lightbulbs, Switches/Outlets or a combination of both. If the group has a lightbulb AND a switch, the accessory will get both services and additionally (if enabled and supported by the device) a temperature sensor. The grouped switches/outlets and switch-lightbulbs comes also with FakeGato support and "ReadOnly" possibility. Lightbulbs and Switch-Lightbulbs also supports adaptive lighting.
382
+
383
+ # v5.0.14 - 2020-11-22
384
+ - Fixed ColorUtils for Smarthome Lightbulbs
385
+ - Removed waitFor* timeout for LightBulbs and Thermostats
386
+
387
+ # v5.0.13 - 2020-11-15
388
+ - Added new option: "cityPrefix" for callmonitor for better call detection
389
+ - Added new option: "active" for user (presence) to easily switch between enabled/disabled
390
+ - Added new option: "blockTelegram" for user (presence) to block sending telegram notification
391
+ - Phonebook improvements
392
+ - Added custom FakeGato timer for all FakeGato enabled accessories to fix gaps is histories
393
+ - Bugfixes
394
+
395
+ # v5.0.12 - 2020-11-15
396
+ - Fixed a bug with smarthome-window battery service
397
+ - Added function to remove battery service
398
+ - Bugfixes
399
+
400
+ # v5.0.11 - 2020-11-15
401
+ - Added more information to callmonitor telegram (now % will be replaced with your home nr)
402
+ - Replaced Telegraf with FormData
403
+ - Bugfixes
404
+
405
+ # v5.0.10 - 2020-11-15
406
+ - Added countryPrefix option to Callmonitor tu spport FritzBox devices without VOIP function
407
+ - Disabled AdaptiveLighting (not supported with official homebridge release, coming back with homebridge v1.3)
408
+ - Changed callmonitor incomingTo/outgoingFrom logic
409
+ - Bugfixes
410
+ - Bump FakeGato
411
+
412
+ # v5.0.9 - 2020-11-14
413
+ - Support for apple daptive lighting (coming with hb 1.3) for smarthome lightbulbs
414
+ - Bugfixes
415
+
416
+ # v5.0.8 - 2020-11-12
417
+ - Added support for color lightbulbs (eg DECT500)
418
+ - Bugfixes
419
+
420
+ # v5.0.7 - 2020-11-11
421
+ - Added new smarthome types (window/temperature)
422
+ - Fixed smarthom lightbulb
423
+ - readOnly for smarthome switch
424
+ - Added broadband again to meshMaster as characteristic (API)
425
+ - Bump fritzbox dep to fix username/passwords with special chars
426
+
427
+ # v5.0.6 - 2020-11-10
428
+ - Fixed callmonitor caller/called nr
429
+
430
+ # v5.0.5 - 2020-11-10
431
+ - Fixed callmonitor outgoing call
432
+
433
+ # v5.0.4 - 2020-11-10
434
+ - Fixed phonebook fetching numbers
435
+ - Updated fritzbox dep to allow special chars
436
+ - Fixed config.schema.json copy&paste
437
+
438
+ # v5.0.3 - 2020-11-10
439
+ - Fixed phoneBook readJson function
440
+
441
+ # v5.0.2 - 2020-11-10
442
+ - Fixed wol switch
443
+
444
+ # v5.0.1 - 2020-11-10
445
+ - Support for homebridge v1.3.0
446
+
447
+ # v5.0.0 - 2020-11-10
448
+ - Completely rewritten
449
+ - New: Homebridge (latest/beta) Support
450
+ - New: Config UI X Integration
451
+ - New: Polling with additional functions (exclude accessories)
452
+ - New: Possibility to display all 'Extras' like Wifi, Alarm, Led etc etc as Characteristic or as a separate switch in Apple Home
453
+ - New: Network Watch
454
+ - New: Configurable Callmonitor names
455
+ - New: Group Callmonitor sensors
456
+ - New: DECT station
457
+ - New: Ability to hide devices (router)
458
+ - New: Additional ping for presence
459
+ - New: Ability to change accessory typ for presence and anyone sensor, with FakeGato support
460
+ - New: Smarthome devices with FakeGato Support
461
+ - New: Smarthome Outlet Accessory with Fakegato for powermeter
462
+ - New: Smarthome Window Accessory with Fakegato for devices with built in windowOpen function
463
+ - New: Support for SmartHome Lights (only on/off and brightness)
464
+ - Removed: Broadband for compatibility reasons
465
+
466
+ **BREAKING CHANGES**
467
+
468
+ The new version is not compatible with version < 5! If you use version < 5 of this plugin, please remove it from Homekit/Homebridge before updating!
469
+
470
+ # v4.1.0 - 2019-06-16
471
+ - "Ping" feature was added as an extra check (if enabled in config.json)
472
+ - Phonebook Bugfix
473
+
474
+ # v4.0.9 - 2019-05-25
475
+ - Refactored Broadband measurement
476
+
477
+ # v4.0.8 - 2019-05-25
478
+ - Bugfixes (generating SID)
479
+
480
+ # v4.0.7 - 2019-05-24
481
+ - Bugfixes (callmonitor)
482
+ - Better debug (smarthome)
483
+
484
+ # v4.0.6 - 2019-05-22
485
+ - Refactored phoneBook
486
+ - Added "Blacklists" to Phonebook
487
+
488
+ # v4.0.4 - 2019-05-20
489
+ - Added better state detection for repeater
490
+
491
+ # v4.0.3 - 2019-05-20
492
+ - Bugfixes (SID)
493
+
494
+ # v4.0.2 - 2019-05-20
495
+ - Added option to disable auto search
496
+
497
+ # v4.0.1 - 2019-05-20
498
+ - Bugfixes
499
+ - Cleanup code
500
+
501
+ # v4.0.0 - 2019-05-19
502
+ - Refactored code
503
+ - Refactored API
504
+ - Support async/await
505
+ - Add automatically all supported devices in network to config
506
+ - Added own debug params (FritzPlatformApi,FritzPlatformTR064,FritzPlatformLUA)
507
+ - Auto config generator/validator at start
508
+ - Bugfixes
509
+
510
+
511
+ # v3.2.4 - 2019-04-26
512
+ - Bugfix
513
+
514
+
515
+ # v3.2.3 - 2019-04-24
516
+ - Bugfix (extReboot Telegram)
517
+
518
+
519
+ # v3.2.2 - 2019-04-24
520
+ - [NEW] Markdown Support for telegram notifications
521
+
522
+
523
+ # v3.2.1 - 2019-03-22
524
+ - Bugfixes
525
+ - Code cleanup
526
+
527
+ # v3.2 - 2019-03-21
528
+ - [NEW] Presence: new function 'onDelay'
529
+ - [NEW] Smarthome: New accessory (contact sensor) for **window open active** function (thermo)
530
+ - Code cleanup
531
+
532
+ # v3.1.5 - 2019-03-19
533
+ - Bump dependencies
534
+ - Code cleanup
535
+
536
+ # v3.1.4 - 2019-03-18
537
+ - [NEW] It is now possible to add multiple numbers to "incomingTo" and "outgoingFrom" (Callmonitor)
538
+ - Code cleanup
539
+ - Bugfixes
540
+
541
+ # v3.1.3 - 2019-03-18
542
+ - Rewrite smarthome (fixed a bug with 404 not found error)
543
+
544
+ # v3.1.2 - 2019-03-17
545
+ - Bugfixes
546
+
547
+ # v3.1.1 - 2019-03-17
548
+ - Bugfixes (Smarthome, presence)
549
+
550
+ # v3.1.0 - 2019-03-17
551
+ - Smarthome: Changed "switch" accessory to "outlet" accessory
552
+ - Smarthome: Better "present" detection for smarthome devices
553
+ - PhoneBook: Auto refresh phonebook (polling: 1h)
554
+
555
+ Info: If you have Smarthome devices of type "switch" please REMOVE it first from HomeKit and config.json, restart homebridge and be sure that the accessory is removed from HomeKit! Re-add it again to config.json with the same parameter as before! This time it will expose as "outlet" to HomeKit, otherwise it can break your setup!
556
+
557
+ # vv3.0.7 - 2019-03-16
558
+ - Fixed a bug with smarthome
559
+
560
+ # v3.0.6 - 2019-03-16
561
+ - Fixed a bug with callmonitor (outgoing calls)
562
+ - Added "test" file
563
+
564
+ # v3.0.5 - 2019-03-16
565
+ - Fixed a bug with empty config.json
566
+ - Fixed several bugs with smarthome
567
+ - Added 'present' function to smarthome
568
+
569
+ # v3.0.4 - 2019-03-03
570
+ - Fixed a bug with fetching SIDs for multiple devices
571
+
572
+ # v3.0.3 - 2019-03-03
573
+ - Added new function to callmonitor: Specify numbers for "incoming to" and "outgoing from" calls (usefull if using multiple numbers at home and want to trigger only for specified number in config
574
+
575
+ # v3.0.2 - 2019-03-02
576
+ - Added new function to devices: "Read Only"
577
+
578
+ # v3.0.1 - 2019-03-02
579
+ - Fixed FakeGato for callmonitor and smarthome devices
580
+
581
+ # v3.0.0 - 2019-03-02
582
+
583
+ **Breaking changes, remove v2.x first before continue! Check also the new [example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json) !**
584
+
585
+ - **[NEW]** Callmonitor with extended FakeGato support
586
+ - **[NEW]** Callmonitor PhoneBook with auto prefix functionality
587
+ - **[NEW]** Callmonitor PhoneBook ultra fast storing
588
+ - **[NEW]** Support of BETA FritzBox firmware
589
+ - **[NEW]** Support of MESH functionality to decrease request amounts
590
+ - **[NEW]** Ring Lock
591
+ - **[NEW]** Fallback if no connection
592
+ - **[NEW]** Better debug logger (-D)
593
+ - **[NEW]** SmartHome Devices (plugs, contact sensors and thermostats)
594
+ - **[NEW]** SmartHome Switch accessory with external temp sensor accessory
595
+ - **[NEW]** FakeGato for smarthome devices
596
+ - **[FIX]** Better presence detection
597
+ - **[FIX]** Bugfixes and Speed improvements
598
+ - **[BETTER]** Rewritten dynamic platform
599
+ - **[BETTER]** Resource efficient
600
+ - **[REMOVE]** Presence as motion sensor
601
+ - **[REMOVE]** FakeGato for presence sensor
602
+
603
+ # v2.8.0 - 2018-02-11
604
+ - Fix TR064 Api
605
+
606
+ # v2.7.1 - 2018-06-20
607
+ - Bugfixes
608
+ - Note: "smarthome" were changed in config.json! Please check before update. ([example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json#L98))
609
+ - Note: 'thermo' & 'contact' currently not supported (smarthome)
610
+
611
+ # v2.7.0 - 2018-06-19
612
+ - Added [Smarthome devices](https://github.com/SeydX/homebridge-fritz-platform/blob/master/docs/config/Smarthome.md)
613
+ - Code cleanup
614
+ - Better error handling
615
+ - Bugfixes
616
+ - Added own reboot functionality to repeater. [example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json#L110)
617
+ - Removed repeater reboot from main device
618
+
619
+ # v2.6.4 - 2018-06-18
620
+ - Bugfixes
621
+ - Code cleanup
622
+ - Better error handling
623
+
624
+ # v2.6.2 - 2018-06-18
625
+ - Code clean up
626
+ - Bugfixes
627
+ - Added "[refresh wifi canal](https://github.com/SeydX/homebridge-fritz-platform/blob/cbe48c0a2b9b86bf9706711c19e4eb4f684f01f5/example/example-config.json#L23)"
628
+
629
+ # v2.6.0 - 2018-06-17
630
+ - Bugfixes
631
+ - Remote Login possibility [see docs](https://github.com/SeydX/homebridge-fritz-platform/blob/master/docs/config/FritzBox.md)
632
+ - Updated dependencies
633
+ - Better interaction with the TR064 module
634
+
635
+ # v2.5.1 - 2018-06-15
636
+ - Bugfixes
637
+ - Code cleanup
638
+
639
+ # v2.5.0 - 2018-06-15
640
+ - Bugfixes
641
+ - Integrated tr064 api
642
+ - Speed up
643
+ - Code cleanup
644
+
645
+ # v2.4.4 - 2018-06-14
646
+ - Fixed callmonitor telegram notification
647
+ - Fixed Repeater state
648
+
649
+ # v2.4.3 - 2018-06-13
650
+ - Bugfixes
651
+ - Clean up code
652
+
653
+ # v2.4.2 - 2018-06-13
654
+ - Bugfixes
655
+ - Added called nr to callmonitor and telegram (% in config.messages.incoming as dynamic input)
656
+ - Added more flags to LogUtil
657
+ - Increased min timeout limit from 5s to 10s
658
+ - Better error handling
659
+ - Reboot function to repeater main switch > if switch off > reboot
660
+
661
+ # v2.4.1 - 2018-06-12
662
+ - Updated dependencies
663
+ - Fixed a bug in TR064 module that caused "Auth. Failed" by multiple requests
664
+
665
+ # v2.4.0 - 2018-06-11
666
+ - Fixed telegram notification for callmonitor
667
+
668
+ # v2.3.8 - 2018-06-11
669
+ - Changed presence polling
670
+ - Added possibility to remove/add "Anyone" sensor from config.json (see [example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json))
671
+
672
+ # v2.3.7 - 2018-06-11
673
+ - Better presence detection
674
+ - Changed telegram notification for presence (see [example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json))
675
+ - Changed telegram function (possibility to choose which message should pushed as notification, if any message field = "" or not exist, you will not receive any notification for only this function without affecting other functions)
676
+ - Polling limit reduced from 10s to 5s
677
+ - Bugfixes
678
+ - New [Debug tool](https://github.com/SeydX/fritzplatform-util)
679
+
680
+ # v2.3.6 - 2018-06-08
681
+ - Fixed Auth. failure (presence)
682
+ - Fixed Telegram push notification (presence)
683
+
684
+ # v2.3.4 - 2018-06-08
685
+ - Fixed Auth. failure (presence)
686
+
687
+ # v2.3.3 - 2018-06-08
688
+ - Changed presence structure (see [example-config.json](https://github.com/SeydX/homebridge-fritz-platform/blob/master/example/example-config.json))
689
+ - An error has been fixed that caused the presence sensors not to switch correctly (if no presence detected)
690
+ - Improved presence adresse detection
691
+ - Possiblitiy to add ip adress to presence
692
+
693
+ # v2.3.2 - 2018-06-08
694
+ - Added "type" option to presence sensors (motion/occupancy)
695
+ - Fixed a bug with presence delay
696
+ - Update dependencies
697
+ - Clean up code
698
+
699
+ # v2.3.1 - 2018-06-07
700
+ - Added type to config.json to support cable router _("type":"cable" , Default: "type":"dsl")_
701
+
702
+ # v2.3.0 - 2018-06-07
703
+ - Added "delay" option to presence
704
+ - Bugfixes (callmonitor)
705
+ - Fixed a bug with initializing config.json
706
+
707
+ # v2.2.7 - 2018-06-07
708
+ - Added ip information for Reboot and Reconnect
709
+ - Clean up code
710
+
711
+ # v2.2.5 - 2018-06-06
712
+ - Created initial basic accessory and initial work