homebridge-fritz-platform
-
-
Feedback zur Presence. Zu 100% läuft es leider nicht. Ich habe es sehr oft das morgens keine Presence erkennt wird.
Meine Frau verlässt morgen zuerst das Haus und das Plugin Schalter nicht um.
Sie ist nicht anwesend.ERFOLGSMELDUNG
... Update: leider doch nichtEs sieht so aus als hätte ich die Ursache meiner Probleme (und die mancher anderer evtl..) gefunden
Was habe ich getan:
- ALLE Fritz Plugins entfernt, config.json bereinigt
- /accessories und /persist gelöscht
- habe auch die Homebridge "Bridge" aus Homekit gelöscht (keine Ahnung ob das wirklich notwendig war)
- fritz-platform 3.04 neu installiert - Zwischenfrage SeydX Warum kann man homebridge nicht ohne einen Platformeintrag in der config.json starten wenn dein Plugin installiert ist. Mit anderen Plugins geht das normalerweise bzw. mir ist es bei keinem anderen bislang aufgefallen. Ich wollte zum testen eine 2. Instanz starten hatte dazu die config.json gesplittet aber die Instanz wo nicht dein Platformeintrag drin war startet nicht...
- jetzt kommt möglicherweise der "Trick", es fehlte dem Homebridge User in der Fritzbox das Recht auf die "NAS" zuzugreifen. Ich verstehe zwar nicht warum er das benötigt, steht aber so in der Anleitung (hatte ich aber ignoriert), das Recht "aus dem Internet zugreifen" hat er von mir aber trotzdem nicht bekommen...
- Zug um Zug die einzelnen Module hinzugefügt, bislang keine Fehlermeldungen, Timeouts o.ä.
- Hombridge wieder neu zu Homekit hinzugefügt (und alles neu einsortiert...)
Schritte 3 und 7 waren wahrscheinlich überflüssig...
jetzt mal die Daumen gedrückt das es so bleibt

fritz-platform 3.04 neu installiert - Zwischenfrage SeydXWarum kann man homebridge nicht ohne einen Platformeintrag in der config.json starten wenn dein Plugin installiert ist. Mit anderen Plugins geht das normalerweise bzw. mir ist es bei keinem anderen bislang aufgefallen. Ich wollte zum testen eine 2. Instanz starten hatte dazu die config.json gesplittet aber die Instanz wo nicht dein Platformeintrag drin war startet nicht...
ich habe die homebridge-fritz-platform in einer eignen Instanz laufen
alledings mit dem config-ui-x zusammen

ich habe die homebridge-fritz-platform in einer eignen Instanz laufen
ok, dann liegt es vielleicht an meinem Betriebssystem... aktuell läuft das hier noch unter auf einem virtuellen Windows Server. Werde aber irgendwann demnächst mal umstellen weil ich einen Zigbee USB Stick hier liegen habe und damit die Ikea und Xiaomi Bridges ablösen möchte.
leider immer noch keine endgültige Lösung... einen halben Tag lief es ohne Fehler, gerade wieder abgestürzt...
Code
Alles anzeigen[2019-3-13 22:20:16] [FritzPlatform] [WARN] Can not reach http://192.168.41.1/webservices/homeautoswitch.lua?switchcmd=getdevicelistinfos&si d=514f629f2034fec0 - Trying again in 30 seconds [2019-3-13 22:20:20] [FritzPlatform] [WARN] FritzBox: Can not reach 192.168.41.1:49000 - Trying again in 60 seconds... [2019-3-13 22:20:20] [FritzPlatform] [WARN] Can not reach 192.168.41.1:49000/devicehostlist.lua?sid=514f629f2034fec0 - Trying again in 30 se conds C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\src\platform.js:223 if(devices[i].config.master){ ^ TypeError: Cannot read property 'master' of undefined at FritzPlatform.getSmartHomeList (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\src\platform.js:223 :28) at Timeout._onTimeout (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\src\platform.js:276:18) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10)und der master Wert in der jason.config ist natürlich definiert!
hier die config.json für den fritzplatform Teil:
Code
Alles anzeigen{ "platform": "FritzPlatform", "devices": { "FritzBox": { "host": "x.y.z.a", "port": 49000, "username": "user", "password": "password", "master": true, "type": "dsl", "wifi2": false, "wifi5": false, "wifiGuest": false, "phoneBook": true, "wps": true, "aw": true, "deflection": false, "led": true, "lock": false, "beta": false, "mesh": true }, "FritzRepeater": { "host": "a.b.c.d", "port": 49000, "username": "user", "password": "password", "type": "repeater", "wifi2": false, "wifi5": false, "wifiGuest": false, "led": true, "beta": false } }, "smarthome": { "Laterne": { "ain": "087610158532", "type": "switch", "tempSensor": true, "unit": "celsius" }, "abc": { "ain": "087610119584", "type": "switch", "tempSensor": true, "unit": "celsius" }, "Gerds-Buero": { "ain": "119610735320", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 }, "def": { "ain": "119610307088", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 }, "ghi": { "ain": "119610308144", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 }, "klj": { "ain": "119610331792", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 }, "mno: { "ain": "119610471696", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 }, "pqr": { "ain": "119610821432", "type": "thermo", "unit": "celsius", "heatValue": 5, "coolValue": 5 } }, "presence": { "abc": "AC:E4:B5:AD:53:78", "def": "1C:91:48:8C:E7:60", "ghi": "44:00:10:19:D6:75" }, "anyone": true, "delay": 60, "callmonitor": { "active": true, "ip": "192.168.41.1", "port": 1012, "country": "DE", "incomingTo": "123456", "outgoingFrom": "123456" }, "alarm": { "active": true, "telNr": "789456123", "duration": 30 }, "broadband": { "active": true, "measureTime": 5, "polling": 60 }, "telegram": { "active": true, "token": "token123", "chatID": "4456", "presence": { "in": "Willkommen zu Hause @", "out": "Auf Wiedersehen @", "anyoneOut": "Niemand zu Hause!" }, "callmonitor": { "incoming": "Ankommender Anruf! @" }, "alarm": { "activated": "Alarm activated! Calling @!", "deactivated": "Alarm deactivated" } } }@SeidX hast du noch irgendwelche Ideen??
gerade gesehen, jetzt fängt er auch beim Starten schon direkt mit den Warnings an:
Habe das schon gefixt, update kommt
Viel wichtiger, warum kann das Plugin keine Verbindung aufbauen?
Viel wichtiger, warum kann das Plugin keine Verbindung aufbauen?
Ich lasse mal die nächsten Stunden Tage einen PingPlotter mitloggen und schaue mal ob es wirklich technische Kommunikationsprobleme sind.
gerade tauchte mal dieser ESOCKETTIMEDOUT auf:
Code
Alles anzeigen[2019-3-14 14:14:53] [FritzPlatform] [ERROR] FritzBox: An error occured while getting device state, trying again... [2019-3-14 14:14:53] [FritzPlatform] [ERROR] { "error": "ESOCKETTIMEDOUT", "errorCode": "ESOCKETTIMEDOUT", "serviceType": "urn:dslforum-org:service:WANPPPConnection:1", "action": "GetInfo" } [2019-3-14 14:15:11] [Ikea Trådfri Gateway] Ping OK. [2019-3-14 14:15:58] [FritzPlatform] [ERROR] An error occured while getting new host list, trying again in 15 seconds... [2019-3-14 14:15:58] [FritzPlatform] [ERROR] { "errorCode": "ETIMEDOUT" }gleichzeitig gab es beim PING Test einen kurzen Peak von knappen 500ms, die Meldung ist ja nur ein Warning und kein Abbruch. Aber reicht so ein kurzer Peak schon für die Meldung aus. Ist da das Timeout evtl. etwas zu kurz?
Timeout kann man aus diesem Grund ja einstellen , damit man es anpassen kann
So, an alle bei denen Presence nicht 100% läuft. Das Problem hierzu scheint bei FritzBox zu liegen.
Nach tagelangem Debuggen habe ich festgestellt das FritzBox ‚Schwierigkeiten‘ hat die Geräte aus dem Mesh zu entfernen.
Auch wenn nichtmal Mesh genutzt wird scheint das Gerät, was NICHT mehr im Netzwerk drinne ist, als ‚aktiv/inaktiv‘ makiert zu sein via LAN (dabei handelt es sich um ein Smartphone was logischerweise keine Verbindung eigtl via LAN herstellen kann) aber nicht komplett getrennt
Die neueste Beta scheint das möglicherweise zu fixen, habs noch nicht probiert, nur in den Changelogs was darüber gelesen
Wollen wir mal hoffen das AVM da nachbessert. Sollte doch Standard sein das beim Verlassen das Gerät entfernt wird und nicht als Lan Gerät noch 20 min auftaucht

Also mit der neuesten Beta sieht es zurzeit gut aus, hatte noch keine Ausfälle

wie der name sagt, wieviele DECT Telefone regestriert sind im Haushalt, kannst es auch unter FritzBox (http://fritz.box) > DECT > Schnurlostelefone sehen wieviele in der Liste sind
Alles klar, DANKE !
Hi SeydX
hatte gerade von den Updates gelesen und von 3.04 auf 3.07 aktualisiert. Danach startete homebridge gar nicht mehr mit folgender Fehlermeldung:
Code
Alles anzeigenC:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\xml2js\lib\parser.js:303 return cb(null, result); ^ TypeError: Cannot read property 'identifier' of undefined at C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\src\platform.js:251:41 at Parser.<anonymous> (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\xml2 js:303:18) at Parser.emit (events.js:189:13) at SAXParser.onclosetag (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\xm r.js:261:26) at emit (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\sax\lib\sax.js:624 at emitNode (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\sax\lib\sax.js at closeTag (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\sax\lib\sax.js at SAXParser.write (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\sax\lib 3) at Parser.exports.Parser.Parser.parseString (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-plat les\xml2js\lib\parser.js:322:31) at Parser.parseString (C:\Users\Administrator\AppData\Roaming\npm\node_modules\homebridge-fritz-platform\node_modules\xml2 js:5:59)ein Downgrade auf 3.0.6 lässt homebridge wieder starten.
scheint in 3.0.7 sich ein neuer Bug eingeschlichen zu haben...
Vielen Dank für deine Bemühungen und Updates!
Gerlan, da brauche ich mal zusätzliche Info
kannst du mal auf 3.0.7 updaten und anschließend index.js öffnen. Befindet sich im ‚test’ Ordner
Wäre quasi diese Datei:
https://github.com/SeydX/homeb…blob/master/test/index.js
Da müsstest du IP, Username und Passwort anpassen und speichern.
Wäre Zeile: 7, 10 und 11 zum anpassen.
Anschließend Terminal öffnen und folgendes eingeben.
1. zum Plugin/test Ordner navigieren
zb:
cd /usr/lib/node_modules/homebridge-fritz-platform/test
2. sudo node index.js eingeben und enter klicken
3. smarthome eingeben bei der input Frage
Output hier posten bitte
Lg