seydx / homebridge-fritz-platform

AiO Homebridge dynamic platform plugin for AVM hardware like Fritz!Box, Fritz!Repeater etc.
MIT License
223 stars 32 forks source link

FB Master issue? #205

Closed Christian-CFP closed 3 years ago

Christian-CFP commented 3 years ago

Also zwei Sachen die mir aufgefallen sind.

Seit 6.0 kann die FB Master 7590 nicht mehr über HomeKit neugestartet werden. Der Schalter gibt ein error zurück.

Meine Repeater 1200 und 1750e allerdings lassen sich über Home neustarten.

Das zweite wäre folgendes. FB 7.27 ist aber auch schon mit der 7.24 passiert und auch mit deiner 5.0 und jetzt auch mit der 6.0.6.

Ein presents Gerät (bis jetzt immer ein und das selbe) wechselt nach einiger Zeit immer den Status anwesend und abwesend. Bzw. Geht der Status auf Not detected und wechselt wieder auf detected. Und das laufend nicht nur manchmal also hintereinander weg.

Das lässt sich nur beheben, in dem ich die FBen neustarte und Homebridge auch.

Ich weis nicht ob das ein Mesh Fehler der FB ist, wenn das Gerät den WLAN Zugangspunkt wechselt.

Aber ich wollte es mal anmerken.

seydx commented 3 years ago

Kannst du die Fehlermeldung mal hier posten bitte

und zu presence, benutzt du „ping“ für die presence user?

Christian-CFP commented 3 years ago

[FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED [FritzPlatform] XXX (occupancy): Wait 0s before switching state! [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED

Und ja, ich nutze Ping.

seydx commented 3 years ago

Kannst du folgendes zu allen Usern im Config hinzufügen bitte

"onDelay": 30, "offDelay": 90

siehe hier: Config

Christian-CFP commented 3 years ago

Kann ich machen, nur die Zeit ist mir zu lange. Aber ich machs wenn es an der Zeit liegen sollte. Ich habe on 10 und off 30.

Flieger37 commented 3 years ago

I am checking the presence of 5 users - the only one with an IP address ist an iPhone 12promax with beta iOS 15. The Fritz!Box shows the device in the list of active devices. After changing the config entry to MAC address and rebooting HB the error looks like this:

[[27/06/2021, 09:38:35] [FritzPlatform] Error: Internal Server Error at Object.exports.request (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:78:21) at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:95:5) at exports.requestXml (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:227:20) at Service.execAction (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/service.js:133:20) at Handler.poll (/usr/local/lib/node_modules/homebridge-fritz-platform/src/accessories/presence/presence.handler.js:257:26) { title: 'Invalid Response', code: 500, soap: { errorCode: '714', errorDescription: 'NoSuchEntryInArray' }, url: 'https://homebridge:password@x.x.x.x:49443/upnp/control/hosts' }

Christian-CFP commented 3 years ago

@Flieger37 I dont know if this is something that causes this error but do you still have "Private WiFi" in the settings on the iPhone enabled?

Christian-CFP commented 3 years ago

e.g. one of my presence config: { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "XX:XX:XX:XX:XX:XX", "name": "XXX" }

Christian-CFP commented 3 years ago

@SeydX Auch mit der geänderten Zeit immer noch das selbe: 27.6.2021, 09:46:34 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 09:46:34 [FritzPlatform] XXX (occupancy): Wait 0s before switching state! 27.6.2021, 09:46:56 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 09:47:41 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 09:47:41 [FritzPlatform] XXX (occupancy): Wait 0s before switching state! 27.6.2021, 09:48:02 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED

Flieger37 commented 3 years ago

@Christian: I just had the same idea: there is a new option "Private Relay" that hides the IP address of the device in iOS 15. It was actually activated. I have switched Private-Relay off, switched WLAN off/on, rebooted HB. But same result.

The 7590 shows the same MAC address and the same IP address for the iPhone as before - so obviously there is no difference for the 7590.

Christian-CFP commented 3 years ago

@Flieger37 Thats strange. I always used presence with the MAC address and it works. I have 4 presence devices and all have the MAC addresses. Maybe an issue with mixed MAC and IP?

seydx commented 3 years ago

@SeydX Auch mit der geänderten Zeit immer noch das selbe: 27.6.2021, 09:46:34 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 09:46:34 [FritzPlatform] XXX (occupancy): Wait 0s before switching state! 27.6.2021, 09:46:56 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 09:47:41 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 09:47:41 [FritzPlatform] XXX (occupancy): Wait 0s before switching state! 27.6.2021, 09:48:02 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED

hm laut deinem Log hast du KEIN onDelay/offDelay eingestellt

kannst du mal dein config.json posten bitte

seydx commented 3 years ago

e.g. one of my presence config: { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "XX:XX:XX:XX:XX:XX", "name": "XXX" }

So sollte es aussehen:

{ "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "XX:XX:XX:XX:XX:XX", "name": "XXX", "onDelay": 30, "offDelay": 90 }

(und das für alle user)

Christian-CFP commented 3 years ago

Ah ok, hast du das geändert? Es war/ist bei mir global eingetragen: "options": { "presence": { "accType": "occupancy", "offDelay": 90, "onDelay": 30, "anyone": true }, "polling": { "timer": 10, "exclude": [ "router", "extra" ] } }, "presence": [ { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "xx:xx:xx:xx:xx:xx", "name": "XXX" }, ...

seydx commented 3 years ago

Ja die "globale" Einstellung wurde entfernt damit man für alle Benutzer spezifische Werte einstellen kann (da alle Geräte sich anders an/abmelden)

Siehe hier: https://github.com/SeydX/homebridge-fritz-platform/blob/master/CHANGELOG.md#v600---2021-06-21

Christian-CFP commented 3 years ago

Ok, dann teste ich mal damit ;) Danke.

Christian-CFP commented 3 years ago

Dennoch ist der error (Ausrufezeichen in Home) im "Schalter" FB noch da, wenn man die FB neustarten möchte. Bei den Repeatern geht es einwandfrei. Vor V6 ging es auch mit der FB 7590.

seydx commented 3 years ago

Ausrufezeichen in Home sollte irgendwann von alleine verschwinden (kann daran liegen das die HB oft neugestartet wurde)

seydx commented 3 years ago

Funktioniert Presence soweit mit on/offDelay ?

Christian-CFP commented 3 years ago

Lass das hier noch "open", soweit so gut aber ich werde hier berichten, sollte sich das mit "Presence" wiederholen. Und das mit dem Home Schalter werde ich auch mal im Auge behalten.

seydx commented 3 years ago

I am checking the presence of 5 users - the only one with an IP address ist an iPhone 12promax with beta iOS 15. The Fritz!Box shows the device in the list of active devices. After changing the config entry to MAC address and rebooting HB the error looks like this:

[[27/06/2021, 09:38:35] [FritzPlatform] Error: Internal Server Error at Object.exports.request (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:78:21) at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:95:5) at exports.requestXml (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:227:20) at Service.execAction (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/service.js:133:20) at Handler.poll (/usr/local/lib/node_modules/homebridge-fritz-platform/src/accessories/presence/presence.handler.js:257:26) { title: 'Invalid Response', code: 500, soap: { errorCode: '714', errorDescription: 'NoSuchEntryInArray' }, url: 'https://homebridge:[password@x.x.x.x](mailto:password@x.x.x.x):49443/upnp/control/hosts' }

Published a new Beta version, can u try it pls?

sudo npm i -g homebridge-fritz-platform@beta

You can always switch back to/from Beta from/to official without loosing any data

Christian-CFP commented 3 years ago

Hi @SeydX, leider immer noch das selbe: Die WLAN Verbindung ist sehr gut zum Gerät also daran liegt es nicht.

27.6.2021, 14:57:51 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 14:57:51 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 14:58:26 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:01:03 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:01:03 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:01:22 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:03:51 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:03:51 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:04:11 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:06:01 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:06:01 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:06:36 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:06:56 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:06:56 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:07:33 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:08:14 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:08:14 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:08:31 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:10:07 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:10:07 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:10:27 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:12:58 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:12:58 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:13:17 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:14:16 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:14:16 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:14:36 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:14:55 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:14:55 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:15:15 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:15:54 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:15:54 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:16:13 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:17:07 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:17:07 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:17:22 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:17:55 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:17:55 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:18:13 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:19:03 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:19:03 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:19:19 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:21:03 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:21:03 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:21:20 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:23:56 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:23:56 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:24:33 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:24:53 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:24:53 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:25:28 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED 27.6.2021, 15:27:59 [FritzPlatform] XXX (occupancy): Occupancy state switched back to NOT DETECTED 27.6.2021, 15:27:59 [FritzPlatform] XXX (occupancy): Wait 30s before switching state! 27.6.2021, 15:28:15 [FritzPlatform] XXX (occupancy): Occupancy state switched back to DETECTED

Christian-CFP commented 3 years ago

Und das kommt, wenn ich die FB über home neustarte:

27.6.2021, 15:34:41 [FritzPlatform] Fritz!Box 7590 (dsl): OFF 27.6.2021, 15:34:42 [HOOBS-Server 6A21@Fritz!Box 7590@Fritz!Box 7590@On] Unhandled error thrown inside write handler for characteristic: Cannot read property 'on' of undefined

Christian-CFP commented 3 years ago

image

Und so sieht es in Home aus und die FB wird nicht neugestartet.

seydx commented 3 years ago

Kannst du mal deine aktuelle config.json posten bitte

Christian-CFP commented 3 years ago

{ "platform": "FritzPlatform", "name": "FritzPlatform", "debug": false, "plugin_map": { "plugin_name": "homebridge-fritz-platform" }, "devices": [ { "active": true, "master": true, "options": { "wifi_5ghz": "characteristic", "dect": "characteristic", "wps": "characteristic", "deflection": "characteristic", "wifi_guest": "characteristic", "led": "characteristic", "wifi_2ghz": "characteristic", "lock": "characteristic", "broadband": "characteristic", "aw": "characteristic" }, "manufacturer": "AVM", "name": "Fritz!Box 7590", "host": "192.168.xxx.xxx", "igd": true, "password": "XXX", "readOnly": false, "model": "Fritz!Box 7590", "ssl": true, "username": "XXX", "tr064": true, "serialNumber": "xxx", "hide": false, "port": 49000, "connection": "dsl" }, { "options": { "wifi_guest": "characteristic", "led": "characteristic", "wifi_5ghz": "characteristic", "wifi_2ghz": "characteristic", "lock": "characteristic", "wps": "characteristic" }, "name": "Repeater 1750E", "active": true, "manufacturer": "AVM", "host": "192.168.xxx.xxx", "igd": false, "password": "XXX", "model": "FRITZ!WLAN Repeater 1750E", "readOnly": false, "ssl": true, "username": "XXX", "tr064": true, "serialNumber": "XXX", "hide": false, "port": 49000, "connection": "repeater" }, { "options": { "wifi_guest": "characteristic", "led": "characteristic", "wifi_5ghz": "characteristic", "wifi_2ghz": "characteristic", "lock": "characteristic", "wps": "characteristic" }, "name": "Repeater 1200", "active": true, "manufacturer": "AVM", "host": "192.168.XXX.xxx", "igd": false, "password": "XXX", "model": "FRITZ!Repeater 1200", "readOnly": false, "ssl": true, "username": "XXX", "tr064": true, "serialNumber": "XXX", "hide": false, "port": 49000, "connection": "repeater" } ], "options": { "presence": { "accType": "occupancy", "anyone": true }, "polling": { "timer": 10, "exclude": [ "router", "extra" ] } }, "presence": [ { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "xx:xx:xx:xx:xx:xx", "name": "XXX", "offDelay": 30, "onDelay": 10 }, { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "xx:xx:xx:xx:xx:xx", "name": "XXX", "offDelay": 30, "onDelay": 10 }, { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "xx:xx:xx:xx:xx:xx", "name": "XXX", "offDelay": 30, "onDelay": 10 }, { "accType": "occupancy", "threshold": 15, "blockTelegram": true, "ping": true, "active": true, "address": "xx:xx:xx:xx:xx:xx", "name": "XXX", "offDelay": 30, "onDelay": 10 } ], "extras": { "phoneBook": { "duration": 30, "accType": "characteristic", "blacklists": [ "Blacklist" ], "active": true }, "alarm": { "duration": 30, "accType": "switch", "telNr": "XXXXXX", "active": false }, "ringlock": { "start": "11:00", "accType": "characteristic", "DECTphones": 1, "active": false, "end": "22:00" }, "wakeup": { "duration": 30, "internNr": "**XXX", "accType": "characteristic", "active": false }, "dnsServer": { "active": false }, "fallbackInternet": { "active": false, "onState": 1, "offState": 4 } }, "telegram": { "active": false }, "callmonitor": { "active": true, "port": 1012, "outgoingFrom": [ "XXXXXX", "XXXXXX" ], "countryPrefix": "+49", "incomingTo": [ "XXXXXX", "XXXXXX" ], "cityPrefix": "030", "group": true, "ip": "192.168.xxx.xxx" } },

seydx commented 3 years ago

Erhöhe mal "onDelay" bei allen Usern auf 30 und schalte mal ping aus bitte ("ping": false), anschließend HB neustarten und nochmal gucken

Christian-CFP commented 3 years ago

Ok, dann beobachte ich mal.

Irgendwas zum Home Schalter?

seydx commented 3 years ago

Ok, dann beobachte ich mal.

Irgendwas zum Home Schalter?

Schaue es mir grad an, kam kein anderer Fehler diesbezüglich?

Christian-CFP commented 3 years ago

Ne, nur das Ausrufezeichen in Home und die Fehlermeldung in Homebridge. Wie gesagt, die FB hat aber nicht neugestartet.

Christian-CFP commented 3 years ago

Vielleicht verfrüht, aber ich glaube es liegt am "Ping". Ich habe vier iPhones, drei davon auf iOS 14 und eines auf iOS 15b2. Vielleicht hat Apple da was geändert in Bezug auf Erreichbarkeit über den Ping wenn das iPhone im Ruhezustand ist.

Ich habe auch mit den onDelays rumgespielt und es macht keinen Unterschied. Diese permanenten Meldungen tauchen nicht mehr auf.

seydx commented 3 years ago

Seltsam ist nur, das im Log „onDelay“ nicht erwähnt wird, also das Plugin wartet nicht sondern schalter direkt um, geht es jetzt OHNE ping und onDelay auf 30 ?

Christian-CFP commented 3 years ago

Doch doch im Log steht: 27.6.2021, 15:27:59 [FritzPlatform] XXX (occupancy): Wait 30s before switching state!

Ohne Ping geht es auch wenn ich onDelay auf 1 stelle. Hier macht der Delay keinen Unterschied, da der Ping signalisiert, Device nicht da. Und erst dann setzt der Delay ein.

seydx commented 3 years ago

Da du die Namen im Log zensiert hast kann ich die Nachrichten nicht zuordnen :/

Christian-CFP commented 3 years ago

Im Log ist es immer ein und der selbe. Also ein Device.

Christian-CFP commented 3 years ago

Als es mir aufgefallen ist, war es sagen wir mal iPhone 3 (iOS 14). Jetzt vor einer Stunde (Log oben) ist es das iPhone 4 (iOS 15b2). Ich hätte es sonst XXX1 und XXX2 gekennzeichnet.

Christian-CFP commented 3 years ago

iPhone 3 = iPhone 6S iPhone 4 = iPhone 12 Pro.

seydx commented 3 years ago

Neue Beta ist online, kannst du es mal probieren bitte. Router neustart sollte wieder funktionieren und Presence Nachrichten sollten klarer sein (war ein kleiner fehler drin)

sudo npm i -g homebridge-fritz-platform@beta

Christian-CFP commented 3 years ago

Ok, Home geht wieder. FB startet und es gibt keine Fehlermeldung mehr.

Soll ich den Ping auch testen?

Christian-CFP commented 3 years ago

Ich habe mal den Ping wieder aktiviert und warte mal ab.

seydx commented 3 years ago

Alles klaro

Christian-CFP commented 3 years ago

Ok, ich glaube du kannst die 6.0.8 freigeben. Scheint zu laufen.

Sollte wieder was sein, eröffne ich einen neuen Thread.

Danke dir.

seydx commented 3 years ago

Super alles klaro, dann schließe ich das hier mal

v6.0.8 ist online

Christian-CFP commented 3 years ago

Kurzer Nachtrag. Es ist doch noch der Ping. Auch mit 6.0.9

Habe den jetzt deaktiviert, sonst ist meine Log am Ende des Tages viel zu vollgemüllt 😉

Christian-CFP commented 3 years ago

Kurzer Nachtrag zu dem Ping Thema. HOOBS V4 ist jetzt draußen. Ich habe mal den Ping wieder aktiviert und schau da, keine nervigen Nachrichten mehr im Log. Vielleicht lag es auch an HOOBS, Node oder der Homebridge Version.

ZZ geht es allerdings. Danke.