Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. FritzBox-PBpics per TR-064 Community-Adapter

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    FritzBox-PBpics per TR-064 Community-Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • joergeli
      joergeli @bahnuhr last edited by

      @bahnuhr
      Moin,
      ich habe es auch nicht hinbekommen, in der FritzBox hinterlegte Anruferbilder im vis anzuzeigen und habe mir ein JS gebastelt, welches Anruferbilder anzeigt, die in einem Ordner auf dem Raspi abgespeichert sind, auf dem ioBroker läuft:

      
      //##############################
      // Anruferbild
      //##############################
      
      const id1 = 'tr-064.0.callmonitor.ringing'; // Datenpunkt-ID "ringing" vom TR-064 Callmonitor
      var bild
      var anrufer
      
      
      // Pruefen, ob Telefon klingelt, dann (verzoegert um 1000 ms) den state abfragen
      on({id: id1, change: "gt"},function(obj) {
          setTimeout(function(){
              anrufer = getState("tr-064.0.callmonitor.inbound.callerName").val;
              Anruferbild() ;
          }, 1000);
      
      });
      
      
      function Anruferbild() {
      
      var kein_bild =         "/vis/anruferbilder/kein_bild.jpg";
      var joerg =             "/vis/anruferbilder/jörg.jpg";
      var britta =            "/vis/anruferbilder/britta.jpg";
      var renate_hdy =        "/vis/anruferbilder/renate_hd.jpg";
      var elisabeth =         "/vis/anruferbilder/elisabeth.jpg";
      var wiltraut =          "/vis/anruferbilder/wiltr.jpg";
      var rene =              "/vis/anruferbilder/renejulia.jpg";
      var theis =             "/vis/anruferbilder/theis.jpg";
      var richter =           "/vis/anruferbilder/richterg.jpg";
      var nehl  =             "/vis/anruferbilder/nehl.jpg";
      var sikora =            "/vis/anruferbilder/sikora.jpg";
      var gepp   =            "/vis/anruferbilder/amgepp.jpg";
      
      // Anrufername muss in FritzBox-Tel.Buch hinterlegt sein !
           if(anrufer == "Baumann Jörg Hdy")          { bild = joerg}
      else if(anrufer == "Taghavi Renate Hdy")        { bild = renate_hdy}
      else if(anrufer == "Baumann Elisabeth Hdy")     { bild = elisabeth}
      else if(anrufer == "Kopka Wiltraud")            { bild = wiltraut}
      else if(anrufer == "Kopka Wiltraud Hdy")        { bild = wiltraut}
      else if(anrufer == "Kopka Rene")                { bild = rene}
      else if(anrufer == "Kopka Rene Hdy")            { bild = rene}	
      else if(anrufer == "Koppe Britta")              { bild = britta}
      else if(anrufer == "Theis Wolfgang Priv")       { bild = theis}
      else if(anrufer == "Theis Wolfgang Hdy")        { bild = theis}
      else if(anrufer == "Gepp")                      { bild = gepp}
      else if(anrufer == "Richter Gertrud")           { bild = richter}
      else if(anrufer == "Nehl Margot")               { bild = nehl}
      else if(anrufer == "Sikora Thomas Priv")        { bild = sikora}
      else if(anrufer == "Sikora Thomas Priv1")       { bild = sikora}
      else if(anrufer == "Sikora Thomas Hdy")         { bild = sikora}
      else if(anrufer == "Sikora Thomas Gesch.")      { bild = sikora}
      else { var bild = kein_bild }
      
      setState ('javascript.0.telefon.anruferbild', bild, true);
      log (" ");
      log ('### Anrufer: ' + anrufer + ' Bild: ' + bild + ' ###');
      
      if (anrufer == ""){ setState ('tr-064.0.callmonitor.inbound.callerName', 'unbekannt', true); }
      if (bild == "kein_bild"){ setState ('tr-064.0.callmonitor.inbound.callerName', 'unbekannt', true); }    // nur zur Sicherheit
      
      } // Ende function Anruferbild
      

      Hinweise:
      1.) Verzögerung von 1000 ms (setTimeout) ist notwendig, damit genügend Zeit ist, getstate abzufragen.
      2.) variable "anrufer" muss exakt! so heißen, wie die Namen im FB-Tel.Buch hinterlegt sind.
      3.) var kein_bild ist notwendig, falls Anrufer unbekannt, bzw. nicht im FB-Tel.Buch hinterlegt ist.
      4.) kein_bild.jpg kann z.B. ein Bild mit einem Fragezeichen "?" sein, muss aber als jpg-Bild vorhanden sein.
      5.) Pfad "/vis/anruferbilder/xyz.jpg" ist willkürlich gewählt, hier liegen die Anruferbilder.
      6.) Maße (Breite x Höhe) der Bilder sollten bei allen Bildern ungefähr gleich groß sein und so gewählt werden, daß sie im entspr. vis erkennbar sind.

      Sieht dann z.B. so aus:
      anruferbild.jpg

      Kann man bestimmt eleganter lösen, aber es funktioniert.

      Gruß
      Jörg

      1 Reply Last reply Reply Quote 1
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        Danke,
        ich habe soetwas ähnliches auch per Script gelöst.

        Es wäre halt schön, wenn man dies nicht doppelt machen müsste.
        Und wenn der schon angezeigte Link funktionieren würde.

        1 Reply Last reply Reply Quote 0
        • SBorg
          SBorg Forum Testing Most Active last edited by

          Aktualisiert sich bei euch der Pic-Datenpunkt callee/caller bei gleichem Anrufer?
          ...und ev. bekomme ich es am WE sogar fertig wenn nix dazwischenkommt oder neue Probleme auftreten 😉

          liv-in-sky 1 Reply Last reply Reply Quote 2
          • liv-in-sky
            liv-in-sky @SBorg last edited by

            @SBorg

            meinst du den hier :
            tr-064-community.0.callmonitor.connect.imageurlcallee

            der aktualisiert sich nicht bei gleichem anrufer

            habe weiter oben schon mal gefragt:
            ich wollte unbekannte anrufer abfangen und habe festgestellt: wenn ich bei meinem handy die nummer sperre, wird tr-064-community.0.callmonitor.inbound.callerName nicht upgedatet - es steht einfach die alte (letztn anrufer) drin - ist das bei dir auch so ? - es ändert sich nur tr-064-community.0.callmonitor.inbound.caller - der datenpunkt ist dann leer

            1 Reply Last reply Reply Quote 0
            • SBorg
              SBorg Forum Testing Most Active last edited by

              Den meinte ich und war eines meiner aktuellen Probleme. Seit gestern sind aber beide Datenpunkte weg und werden nicht mehr angelegt...
              Deswegen bin ich nun auf den DP json ausgewichen. Der aktualisiert sich anscheinend bei jedem Anruf (bitte Feedback ob dem so ist) und enthält bei einem Kontakt mit Bild auch ein Objekt imageurlcallee/r
              Damit konnte ich es unter Linux zumindest lauffähig bekommen 😀
              ...muss ich dann, wenn sich der DP wunschgemäß aktualisiert, "nur" noch in JS umschreiben...

              liv-in-sky 1 Reply Last reply Reply Quote 1
              • liv-in-sky
                liv-in-sky @SBorg last edited by liv-in-sky

                @SBorg jup - json wird upgedated - aber auch dort scheint problem bei unbekannten nummern zu sein - es bleibt der letzt wert stehen

                also müßte bei unbekannten nummern noch tr-064-community.0.callmonitor.inbound.caller abgefragt werden, da dieser datenpunkt leer ist, wenn unbekannt anruft (sonst wird dort nummer angezeigt)

                bahnuhr 1 Reply Last reply Reply Quote 0
                • bahnuhr
                  bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                  @liv-in-sky sagte in FritzBox-PBpics per TR-064 Community-Adapter:

                  @SBorg jup - json wird upgedated - aber auch dort scheint problem bei unbekannten nummern zu sein - es bleibt der letzt wert stehen

                  also müßte bei unbekannten nummern noch tr-064-community.0.callmonitor.inbound.caller abgefragt werden, da dieser datenpunkt leer ist, wenn unbekannt anruft (sonst wird dort nummer angezeigt)

                  Ich frage zu dieser Beurteilung den DP: fritzbox.0.calls.ringActualNumber ab.

                  Hier wird bei unbekannt ja: ### ? ###
                  übermittelt.

                  Und dies frage ich per Script ab.

                  Wenn gewünscht kannst du mein Script zum Testen gerne haben.

                  mfg

                  liv-in-sky 1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @bahnuhr last edited by

                    @bahnuhr du nutzt einen anderen adapter ! muss ich mal kucken - der "leere'" tr-064-community.0.callmonitor.inbound.caller tut es auch im moment - ich warte mal auf @SBorg und seinen output

                    bahnuhr 1 Reply Last reply Reply Quote 0
                    • bahnuhr
                      bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                      @liv-in-sky sagte in FritzBox-PBpics per TR-064 Community-Adapter:

                      @bahnuhr du nutzt einen anderen adapter ! muss ich mal kucken - der "leere'" tr-064-community.0.callmonitor.inbound.caller tut es auch im moment - ich warte mal auf @SBorg und seinen output

                      Ja, ich habe folgende Instanzen installiert.

                      fritzbox
                      fritzdect
                      tr.064 alt
                      tr.064 community

                      Scripte hatte ich mir geschrieben für fritzbox und tr.064.

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @bahnuhr last edited by

                        @bahnuhr bin momentan vorsichtig mit zu vielen adaptern - habe manchmal "stack exceeded" fehler und bekomm ihn nicht weg

                        bahnuhr 1 Reply Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                          @liv-in-sky sagte in FritzBox-PBpics per TR-064 Community-Adapter:

                          stack exceeded

                          Was isn das?

                          Wieviel Adapter hast du denn?
                          Welches System?

                          Lt. Instanz hab ich derzeit 33 Prozesse.

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @bahnuhr last edited by liv-in-sky

                            @bahnuhr nutze proxmox - das linux system meldet plötzlich diesen fehler - manchmal crashed iobroker und startet neu oder der javascript adapter und der js controller benutzen über 80% cpu time - die iobroker vm ist auch mein nas server und es ist nicht klar, ob ein script oder ein nicht iobroker service plötzlich resourcen braucht - auf github gibt es dazu auch schon ein issue - ram ist eigentlich genug da

                            eine zeitlang kam der fehler wenn ein linux script (über crontab -e) "iobroker backup" aufrufte und gleichzeitig der nas server dateien kopierte usw - eine unendliche geschichte

                            Aug  9 11:11:38 raspberry3 bash[449]: RangeError: Maximum call stack size exceeded
                            Aug  9 11:11:38 raspberry3 bash[449]:     at Function.from (buffer.js:199:28)
                            Aug  9 11:11:38 raspberry3 bash[449]:     at new Buffer (buffer.js:182:17)
                            Aug  9 11:11:38 raspberry3 bash[449]:     at Sender.frameAndSend (/opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:166:14)
                            Aug  9 11:11:38 raspberry3 bash[449]:     at /opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:126:12
                            Aug  9 11:11:38 raspberry3 bash[449]:     at Sender.applyExtensions (/opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:287:5)
                            Aug  9 11:11:38 raspberry3 bash[449]:     at /opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:120:10
                            Aug  9 11:11:38 raspberry3 bash[449]:     at Sender.flush (/opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:268:3)
                            Aug  9 11:11:38 raspberry3 bash[449]:     at /opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:270:10
                            Aug  9 11:11:38 raspberry3 bash[449]:     at /opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:127:7
                            Aug  9 11:11:38 raspberry3 bash[449]:     at Sender.applyExtensions (/opt/iobroker/node_modules/iobroker.admin/node_modules/ws/lib/Sender.js:287:5)
                            
                            
                            1 Reply Last reply Reply Quote 0
                            • SBorg
                              SBorg Forum Testing Most Active last edited by

                              Habe es jetzt erst mal wieder teilweise anders gelöst...
                              Klingelt... Bild vom Anrufer (wenn vorhanden) wird angezeigt... mehr im Moment nicht, da müsste man dann mal klären was noch alles passieren soll.

                              Da ich jetzt wieder Rohre verlegen und löten gehe, nur mal zu Testzwecken, aber WICHTIG! LÄUFT NUR AUF LINUX!

                              
                              on({id: "tr-064-community.0.callmonitor.ringing"/*ringing*/, val: true}, function (obj) {
                              
                                  //Bild vom aktuellen Gespräch
                                  var json = JSON.parse(getState('tr-064-community.0.callmonitor.connect.json').val);
                                  
                                  try {let Bild = json.imageurlcaller;
                                      var DL = 'wget -O /opt/iobroker/iobroker-data/files/vis.0/xxx/caller_pic.jpg "' + Bild + '"';
                                      console.log(DL);
                                      exec(DL);
                              
                                      } catch (e) {
                                        console.log('Kein Bild für Anrufer vorhanden...');
                                        return;
                                      }
                              
                              });
                              
                              

                              Benötigt nur den Community-Adapter. In Zeile #8 ist der Pfad und ggf. Bildname anzupassen: /opt/iobroker/iobroker-data/files/vis.0/xxx/caller_pic.jpg Das Leerzeichen hinter ...jpg und vor dem " dabei beachten.
                              Dann in VIS nur zB ein Image-Widget + das Bild auswählen (vorher mal anrufen damit eins angelegt wird und man es auch auswählen kann ^^)

                              Ausstehender Test: unbekannter Anrufer

                              liv-in-sky 2 Replies Last reply Reply Quote 1
                              • liv-in-sky
                                liv-in-sky @SBorg last edited by liv-in-sky

                                @SBorg super job - bild ist angekommen 🙂 🌟🌟🌟🌟🌟

                                jetzt muss ich nur noch das mit unbekannter anrufer lösen

                                und viel spass beim "rohr verlegen"

                                1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @SBorg last edited by liv-in-sky

                                  @SBorg oje - war zu schnell - bild kommt zwar an- ist aber leer

                                  ich dachte, man muss eine avm sid erzeugen, damit linux auf das bild zugreifen kann ?

                                  1 Reply Last reply Reply Quote 0
                                  • SBorg
                                    SBorg Forum Testing Most Active last edited by

                                    Der TR-064 erzeugt schon eine gültige SID, allerdings nur für den Rechner auf dem auch der Broker läuft. Da das JS auf dem Server läuft ist somit die SID gültig. Willst du den Link des TR-Adapters aber in der VIS aufrufen, ist die Verbindung nicht mehr Server >> FritzBox, sondern VIS-Rechner (Tablett, Laptop oder was man gerade benutzt) >> FritzBox und die übermittelte SID ungültig.
                                    Um das Ganze zu umgehen lade ich also vom Server (mit gültiger SID) das Bild lt. Link herunter und speichere es in der VIS lokal ab. Damit kann auch der Rechner darauf zugreifen 🙂

                                    Ich habe noch ein Debug drin gelassen, schau mal in der JS-Console ob beim Anruf

                                    ...: wget -O /[PFAD]/[BILD] "http://192.168.1.1:49000/download.lua?path=/var/InternerSpeicher/FRITZ/fonpix/1234567890-0.jpg&sid=xxxxxxxxxxxxxxxx&pbid=0"
                                    

                                    erscheint. Wichtig ist ob hinten die URL auftaucht. Den ganzen wget-Teil kannst du auch 1:1 im Terminal am Server absetzen, dann sollte das Bild erzeugt worden sein.

                                    bahnuhr liv-in-sky 2 Replies Last reply Reply Quote 0
                                    • bahnuhr
                                      bahnuhr Forum Testing Most Active @SBorg last edited by

                                      @SBorg sagte in FritzBox-PBpics per TR-064 Community-Adapter:

                                      ...: wget -O /[PFAD]/[BILD] "http://192.168.1.1:49000/download.lua?path=/var/InternerSpeicher/FRITZ/fonpix/1234567890-0.jpg&sid=xxxxxxxxxxxxxxxx&pbid=0"

                                      Hast du schon einen vergleichbaren Befehl für js.

                                      würde fs gehen?

                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @bahnuhr last edited by

                                        @bahnuhr

                                        schon mal getestet ?
                                        https://www.heise.de/download/product/wget-3073

                                        bahnuhr 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @SBorg last edited by

                                          @SBorg

                                          das hier kommt im log:

                                          wget -O /opt/iobroker/iobroker-data/files/vis.0/armin/img/google-img/caller_pic.jpg "http://192.168.178.1:49000/download.lua?path=https://www.google.com/m8/feeds/photos/media/axxx.xxxxy%40gmail.com/1d12449a0fcc6fcd,240,"Kg9MBGcHfCt7I2A9LEokR05lAk00GEoeYgw."&sid=15bea6b40d7a21e5&pbid=240"
                                          

                                          das hier kommt,wenn ich das caller.jpg in der vis auswähle

                                          Image 2.png

                                          Image 4.png

                                          1 Reply Last reply Reply Quote 0
                                          • bahnuhr
                                            bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                                            @liv-in-sky sagte in FritzBox-PBpics per TR-064 Community-Adapter:

                                            @bahnuhr

                                            schon mal getestet ?
                                            https://www.heise.de/download/product/wget-3073

                                            Nein,
                                            und ich will auch kein Extra Programm installieren.

                                            Müsste ja mit js auch gehen.

                                            SBorg 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            406
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            vis
                                            6
                                            42
                                            3971
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo