Neben der Anruferkennung könnt Ihr Euch auch das Anruferprotokoll der Fritzbox in NodeRed anzeigen lassen.
Wie dies geht ist im folgenden Artikel erklärt.
Sicherheitshinweise
Ich weiß die folgenden Hinweise sind immer irgendwie lästig und wirken unnötig. Aber leider haben schon viele Menschen die es "besser" wussten aus Leichtsinnigkeit Augen, Finger oder anderes verloren bzw. sich verletzt. Im Vergleich dazu ist ein Datenverlust fast nicht der Rede Wert, aber auch diese können echt ärgerlich sein. Deswegen nehmt Euch bitte fünf Minuten Zeit um die Sicherheitshinweise zu lesen. Denn auch das coolste Projekt ist keine Verletzung oder anderen Ärger wert.
https://www.nerdiy.de/sicherheitshinweise/
Affiliatelinks/Werbelinks
Die hier in aufgeführten Links zu Online-Shops sind sogenannte Affiliate-Links. Wenn Du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekommt Nerdiy.de von dem betreffenden Online-Shop oder Anbieter eine Provision. Für Dich verändert sich der Preis nicht. Falls Du Deine Einkäufe über diese Links tätigst unterstützt Du Nerdiy.de dabei auch in Zukunft weitere nützliche Projekte anbieten zu können. 🙂
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
- NodeRed – Node-Code importieren und exportieren
- NodeRed – Mit Dashboard-Nodes eine Benutzeroberfläche erstellen
Benötigtes Material:
In der folgenden Liste findet Ihr alle Teile die Ihr zur Umsetzung dieses Artikels benötigt.
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.
FritzBox-Node installieren
FritzBox-Node-Konfiguration eintragen
Damit die soeben installierte FritzBox-Node auch mit Eurer FritzBox kommunizieren kann, müsst Ihr Eure FritzBox-Login-Daten in die Konfiguration der Node angeben.
Node-Code um die Anruferliste im Dashboard anzeigen zu können
Für dieses Beispiel benötigt Ihr neben der FritzBox-Node auch die Dashboard-Node. Auf dem Dashboard wird euch dann eine Tabelle der letzten Anrufe angezeigt. Vergesst also nach dem Einfügen des unten aufgeführten Node-Codes nicht das Dashboard-Element auf dem Dashboard korrekt zu positionieren.
Weitere Infos zum Umgang mit den Dashboard-Nodes findet Ihr im Artikel NodeRed – Mit Dashboard-Nodes eine Benutzeroberfläche erstellen
Der unten stehende Code ist der Code aus der Function-Node der aufgeführten Node-Konfiguration. Darin könnt Ihr die Tabellenausgabe ändern und zum Beispiel auch ändern wieviele der letzten Einträge euch angezeigt werden.
Ändert dazu die “10” in der Zeile ” for (var i = 0; i<10; i++)” auf den gewünschten Wert.
var IO=[]; var Datum=[]; var Nummer=[]; for (var i = 0; i<10; i++) { if(msg.payload.Call[i].Type==1) { //Eingehender Angenommener Anruf IO[i]=">"; Datum[i]=msg.payload.Call[i].Date; Nummer[i]=msg.payload.Call[i].Caller; } else if(msg.payload.Call[i].Type==2) { //Eingehender Nicht-Angenommener Anruf IO[i]=">>"; Datum[i]=msg.payload.Call[i].Date; Nummer[i]=msg.payload.Call[i].Caller; } else if(msg.payload.Call[i].Type==3) { //Ausgehender Nicht-Angenommener Anruf IO[i]="<<"; Datum[i]=msg.payload.Call[i].Date; Nummer[i]=msg.payload.Call[i].Called; } } msg.payload.IO=IO; msg.payload.Datum=Datum; msg.payload.Nummer=Nummer; return msg;
Leider konnte ich den NodeCode hier nicht direkt einfügen, weil der darin enthaltene HTML-Code das Aussehen der Webseite etwas “verwirrt”.
Den NodeCode findet Ihr deshalb hier im Nerdiy-Git:
Alternative Version
Hier noch eine etwas verbesserte Version des oben gezeigten Flows.
Damit lassen sich die angenommenen, verpassten und getätigten Telefonate in separaten Tabellen anzeigen.
Leider konnte ich den NodeCode hier nicht direkt einfügen, weil der darin enthaltene HTML-Code das Aussehen der Webseite etwas “verwirrt”.
Den NodeCode findet Ihr deshalb hier im Nerdiy-Git:
Viel Spaß mit dem Projekt
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. 🙂
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. 🙂
Hallo, ich wollte gerade den Node importieren, leider bekomme ich den Fehler:
SyntaxError: Unexpected string in JSON at position 825
038;&=”” i<20);=""
Was kann ich da tun?
Hey ET,
ich habe das Problem behoben. Leider hat der Code auch in diesem Fall die Formatierung der Webseite beeinträchtigt. Ich habe den zweiten Code nun auch auf GitHub hochgeladen. 🙂
Danke für den Hinweis und beste Grüße
Fab
Hallo Fab,
Danke für das Hochladen, importieren hat geklappt.
Leider ist im Node collectData noch ein Fehler (for Schleife…).
Kannst du nochmal drüber schauen?
Gruß
ET
Hey ET,
sorry, hätte den Code nochmal checken sollen. Habe ihn korrigiert und getestet. Müsste nun funktionieren. Würde mich trotzdem über eine Rückmeldung freuen. 🙂
Beste Grüße
Fab
Hey Fab,
Code funktioniert jetzt super!
Vielen Dank!
Gruß
ET
Super, freut mich. Viel Spaß damit 🙂
Moin, ist auch möglich den aktuellen Anruf anzuzeigen ?
Also wer gerade anruft ? (Dann kann man überlegen ob man ran geht, wenn man sieht wer es ist 😉 )
Gruß
Stefan
Moin Stefan,
ja das geht auch. 🙂 Alles notwendige dazu ist hier beschrieben: https://nerdiy.de/nodered-fritzbox-anruf-benachrichtigung-anzeigen/
Beste Grüße
Fab
Der erste Link zum GitHub ist tot 🙁 LG
Hey Tes,
danke für den Hinweis. Habe die Links korrigiert. Danke Dir fürs Bescheid geben! 🙂
Beste Grüße
Fab
Hallo, der Flow funktionierte bisher tadellos, inzwischen kommt aber nur noch eine Fehlermeldung. 401 Error unauthorisierter Zugriff, jemand eine Idee was man da tun kann?
Hey Amdj3ru,
du kannst mal gucken ob sich eventuell deine Login-Daten geändert haben oder guck mal ob es vllt. auch mit dem hier beschrieben Fehler zusammenhängen könnte. 🙂
https://nerdiy.de/howto-fritzbox-fehler-typeerror-cannot-read-property-actions-of-undefined-in-der-node-red-contrib-fritz-node-beheben/
Beste Grüße
Fabian
..super Sache und tipp topp beschrieben, danke, dass Du das Wissen so mit uns teilst.
Da wir selten zu Hause sind, nutze ich die Funktion und lasse mit die Nummer per telegram weiterleiten. Frage: kennst Du einen Weg, die Liste per node red zu löschen ?
Hi Dominique,
danke. 🙂
Das löschen der Telefonliste habe ich noch nicht ausprobiert. aber ich schreibe mir das mal auf. 🙂
Beste Grüße
Fabian
Hallo Fab,
Ich habe mir dein tollen Lösungen einverleibt und bin total begeistert. Tolle Umsetzung, minimalinvasiv zum Ergebnis. Aber, jetzt kommts. Bei der Anruferliste und Ruferkennung ist es doch bestimmt möglich eine Auswahl zu treffen, welche Rufnummer MSN man gecheckt haben möchte. Ich habe z.B. Mehrere MSN´s unter anderem eine Faxnummer die mich nun gar nicht interessiert (ausser bei Faxen). Das wäre noch das Sahnehäubchen… 😉
Vielen Dank bisher.
Hi Thomas,
nur damit ich es nicht falsch verstanden habe: Du hast mehrere Nummern an deiner FritzBox angemeldet und möchtest für jede Rufnummer eine eigene Anruferliste bzw. Anzeige haben? 🙂
Beste Grüße
Fabian
Hallo,
habe heute mal die alternative Version ausprobiert.
Sieht eigentlich sehr gut aus, aber bei ausgehenden Anrufen habe ich in der Liste bei der Rufnummer immer meine eigene Rufnummer ohne Vorwahl stehen: SIP:11223344
Kann man das ändern? Wäre ja schön wenn man auch sieht wen man angerufen hat.
Gruß meister888
Hi meister888,
danke für den Hinweis, da hatte sich ein kleiner copy-paste-Fehler versteckt. 🙂
Müsste jetzt korrekt funktionieren: https://github.com/Nerdiyde/NodeRedSnippets/blob/master/FritzBoxCalllist_improved.txt
Beste Grüße
Fabian
Hallo Fab,
vielen Dank für die schnelle Hilfe.
Aber leider hat sich nichts geändert.
In der ersten Liste, wo alle Rufe (missed/in/out) angezeigt werden, steht meine eigene SIP-Nr. bei den Outgoing-Rufen.
In der Einzelliste wo nur Out drin ist sehe ich die angerufene Rufnummer.
Hätte aber gerne auch in der ersten Liste die Nummern.
Kannst du da noch einmal gucken?
Hi meister888,
stimmt, das hatte ich gar nicht gesehen. Danke für den Hinweis.
Habs angepasst. Nun sollte (hoffentlich) alles stimmen. 🙂
Beste Grüße
Fab