HowTo: FritzBox – Fehler „TypeError: Cannot read property ‚actions‘ of ‚undefined'“ in der „node-red-contrib-fritz“-Node beheben

Seit geraumer Zeit habe ich bereits das Problem (gehabt), dass meine „node-red-contrib-fritz“-Node keine Verbindung zu meiner FritzBox herstellen kann. Verändert hatte sich an der gesamten Konfiguration eigentlich nichts.

Nichts außer der Firmware-Version von FritzOS, dem Betriebssystem der FritzBox. Erst dachte ich, dass AVM Die Schnittstelle, welche zur Konfiguration und zum auslesen der Daten genutzt wird, deaktiviert hätte.

Nach ein bisschen rumprobieren ist mir aber aufgefallen, wie man den Fehler beheben kann. Alles notwendige dazu steht in diesem Artikel.


Voraussetzungen

Hilfreiche Artikel:
Damit Ihr diese Konfiguration übernehmen  könnt sollte NodeRed natürlich schon installiert sein.
Wie ihr einen RaspberryPi dazu vorbereitet und dann NodeRed darauf installiert ist in den folgenden Artikeln beschrieben.

Die folgenden Artikel beschreiben was zu tun ist um den RaspberryPi soweit vorzubereiten:
RaspberryPi – Einrichten für Nerdiys!
RaspberryPi – Die Erste Konfiguration!
RaspberryPi – Den RaspberryPi über SSH steuern

NodeRed – Installation von NodeRed auf dem RaspberryPi
NodeRed – Neue Nodes installieren

Benötigtes Werkzeug:
-keins-

Benötigtes Material:


In die NodeRed Konfigurationsoberfläche einloggen

Bevor Ihr eure NodeRed Konfiguration bearbeiten könnt müsst Ihr Euch - falls aktiviert - zunächst in die NodeRed Konfigurationsoberfläche einloggen.

Ansicht des Login Dialogs. Hier müsst Ihr die Login Daten eingeben die Ihr während der Konfiguration des Logins angegeben habt. Infos dazu findet Ihr im Artikel NodeRed - Benutzerlogin einrichten.

Der Fehler

Die Fehlermeldung, welche im Debug-Fenster der NodeRed Oberfläche ausgegeben wird lautet:

„TypeError: Cannot read property ‚actions‘ of ‚undefined‘

Die Fehlermeldung ist tatsächlich ziemlich nichts sagend. Sie macht wahrscheinlich Sinn, wenn man etwas in den Quelltext der Node abtauchen würde. Einem außenstehendem Sagt sie leider nichts.

Links seht Ihr die typische Fehlermeldung wie sie im Debug-Fenster der NodeRed-Oberfläche dargestellt wird.


Die Lösung

Ehrlich gesagt war ich anfangs etwas ratlos. Dann ist mir aber aufgefallen, dass der TR064 Service (das ist der Standard den die NodeRed-Node zur Kommunikation mit der FritzBox nutzt) neben dem Port 49000 auch auf dem Port 49443 angeboten wird.

Hier lässt die „..443“ in der Portangabe schon erahnen, dass es sich dabei um den Port für die verschlüsselte Verbindungen handelt.

Ihr ahnt es vllt. schon: Wenn man nun in der Konfiguration der NodeRed-Node angibt, dass man die Verbindung per SSL verschlüsseln lassen möchte, so muss man auch den passenden Port auswählen.

Eigentlich absolut richtig und logisch. Leider verwirrt die angezeigte Fehlermeldung hier etwas. Vllt. wird das ja in den kommenden Releases des Plugins repariert. 🙂

Links seht Ihr einen meiner Flows bei dem Informationen von der FritzBox ausgelesen werden.

Um die Verbindung zu Eurer FritzBox nun korrekt zu konfigurieren müsst Ihr zu erst doppelt auf Eure Fritz-Node klicken.

In dem erscheinendem Fenster klickt Ihr nun auf den kleinen Stift in der Spalte „Device“.

Wenn es bei Euch so wie links dargestellt aussieht, dann habt Ihr den Port ebenfalls falsch konfiguriert. 🙂

Hier gibt es nämlich zwei Konfigurationsmöglichkeiten:
Entweder Ihr deaktiviert den Haken bei „Is SSL connection“ und stellt den Port 49000 ein. In diesem Fall greift Ihr über eine unverschlüsselte Verbindung auf die FritzBox zu.

Besser ist es deswegen, wenn Ihr den Haken bei „Is SSL connection“ gesetzt lasst und den dazu passenden Port 49443 einstellt.

Habt Ihr alles korrekt eingestellt und die Änderungen „deployed“ sollte die Verbindung wieder wie gewohnt funktionieren. 🙂


Ich hoffe bei euch hat alles wie beschrieben funktioniert. Falls nicht oder ihr Fragen oder Anregungen habt lasst es mich in den Kommentaren bitte wissen. Ich trage dies dann ggf. in den Artikel nach.
Auch Ideen für neue Projekte sind immer gerne willkommen. 🙂

Fab

P.S. Viele dieser Projekte - besonders die Hardwareprojekte - kosten viel Zeit und Geld. Natürlich mache ich das weil ich Spaß daran habe, aber wenn Du es cool findest, dass ich die Infos dazu mit Euch teile, würde ich mich über eine kleine Spende an die Kaffeekasse freuen. 🙂

Buy Me a Coffee at ko-fi.com

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.