Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. MaterialDesign Table Fritzbox Missed calls best. Nummer

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    MaterialDesign Table Fritzbox Missed calls best. Nummer

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @svenomatt last edited by

      @svenomatt kein thema - es gibt aber ein widget, dass dir alle missed anruf anzeigt - da braucht es kein script

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

        @svenomatt

        da ist ein beispiel mit dem inventwo json widget - das kann das direkt anzeigen

        https://forum.iobroker.net/post/701184

        1 Reply Last reply Reply Quote 0
        • svenomatt
          svenomatt last edited by

          Wollte das Widget von Material Design (Table Widget ) nutzen und dann den org. Datenpunkt vom TR064 nehmen. Bekomme es dort aber irgenwie nicht hin, das nur bsp.haft die erste dritte und vierte Spalte des Json in dem Wigdet angezeigt wird.

          Ich meine das ich das irgengwo im Vis editor angeben muss ( Attribut in Json ) kann ich aber nicht finden

          Bei dem Widget /// JSON Table Basics konnte ich es einstellen

          Bild

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

            @svenomatt

            probiere mal mein script mit dieser änderung - dann kannst du im script definieren, welche spalten du haben willst

            Image 1.png

            1 Reply Last reply Reply Quote 0
            • svenomatt
              svenomatt last edited by

              @liv-in-sky
              Erstmal Danke für deine Hilfe,

              ich komme aber nicht mehr ganz mit,

              Vieleicht nochmal kurz zu meinem Wunsch, möchte gerne eine Tabelle mit allen verpassten Anrufen mit den Spalten Datum Name und Rufnummer in Vis darstellen.

              Aktuelll nutze ich das JSON Table Basics Wigdet und habe dort über den vis editor (Attribut in Json) die entsprechende Spalte bestimmt die aus dem json gezogen soll und dann in der Tabelle angezeigt wird. Alles soweit OK. Nun möchte ich alles mit dem Material Design Wigdet lösen. Dazu habe ich gedacht das es mit dem "Table Widget" geht. Als Datenpunkt habe ich missedcall json vom Tr64 genommen. Aber wie stelle ich ein das nur bestimmte Attribute in Meiner Tabelle angezeigt werden.

              Sprich: Datum Name Rufnummer
              Im Table Widget konnte ich keine Möglichkeit wie beim Basics Json Wigdet finden.

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

                @svenomatt

                ich habe nur das hier gefunden - dort kann man die einzelnen spalten ausblenden - aber damit habe ich das problem, dass ich keine zeit anzeigen kann - bin kein profi für material design widgets

                Image 2.png

                Image 3.png

                ich glaube deswegen nutze ich ein script - das mir die zeit richtig anzeigt

                Image 4.png

                falls du das script nutzen willst, da ist noch was zu ändern . wenn kein name bekannt ist, wird das nicht richtig angezeigt

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

                  @liv-in-sky

                  Würde wirklich gerne dein Script nutzen. Zumal es alles das anzeigt was ich bräuchte

                  Wenn ich dich richtig verstanden habe muss ich die Zeile 18 ersetzen damit er auf alle eingehenden Anrufe reagiert?

                  Was muss ich noch ändern das "wenn keine Name bekannt " das dies richtig anzeigt wird.

                  Sorry für die vielen Blöden fragen, habe aber keine Ahnunbg von Java-Programmierung nutze selbst nur blockly

                  Danke

                  liv-in-sky 2 Replies Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @svenomatt last edited by

                    @svenomatt

                    du musst diese zeile dahin verschieben - die steht leider in der falschen zeile (weiter oben)

                    Image 5.png

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

                      @svenomatt

                      und die zeile 18 muss auch angepaßt werden !

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

                        
                        
                        let dpOrginal= "tr-064.0.calllists.missed.json";  // jsondatenpunkt von der  tr064 instanz
                        let dpNeu= "0_userdata.0.missedFritzbox"      //eigener datenpunkt für das materialdesign table widget
                        let numberToControll= "7003396"                      //eigene nummer, die überprüft werden soll
                        
                         on({id: dpOrginal, change: "any"}, function (obj) { 
                        
                           
                          let myJson;
                        
                          let myJsonReady=[];
                          
                             myJson=JSON.parse(getState(dpOrginal).val)
                        
                         //log(myJson[0].callednumber)
                        
                        for (var index in myJson){
                         if (myJson[index].callednumber==numberToControll) {
                         if (true)/* (myJson[index].caller==numberToControll) */  {
                             let myname="Kein Name vorhanden";   
                             let myTime= (myJson[index].date).split(".")
                             let mySortTime= myJson[index].date.replace(/.+? (.+)$/g,"$1");
                             mySortTime="20"+myTime[2].replace(/ .+$/,"")+" "+myTime[1]+" "+myTime[0]+" "+mySortTime
                        
                             if (myJson[index].name!="") myname=myJson[index].name;
                        
                             myJsonReady.push({
                        
                                       Anrufer: myname ,
                                       Nummer: myJson[index].caller,
                                       date: myJson[index].date,
                                       dateSorter: getDateObject(mySortTime).getTime()
                        
                                   });
                        }
                         
                             setState(dpNeu,JSON.stringify(myJsonReady))
                        
                         }
                        
                           });
                        
                          
                        
                        

                        Frage

                        1. Wäre das so richtig?
                        2. et numberToControll= "7003396" kann dann doch eigentlich raus ODER?
                        liv-in-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @svenomatt last edited by

                          @svenomatt sollte so funktionieren - einfach testen

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

                            @liv-in-sky

                            Hat leider auch nicht den gewünschten Erfolg gezeigt. Es wird nicht in den neuen Datenpunkt geschrieben. Habe dann nochmal dein o.g. gepostet Script genutzt und meine Rufnummer eingetragen um zu schauen ob es fkt.

                            aber auch ohne Erfolg. obwohl, im datenpunkt sind zwei [ "ohne Inhalt" ] Klamern aufgetaucht.

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

                              @svenomatt

                              habe das geändert - probier bitte das mal - habe auch gerade getestet - einfach mit handy angerufen

                              let dpOrginal="tr-064.0.calllists.missed.json";  // jsondatenpunkt von der  tr064 instanz
                              let dpNeu="0_userdata.0.Tabellen.missedFritzbox"           //eigener datenpunkt für das materialdesign table widget
                              
                              
                                 on({id: dpOrginal, change: "any"}, function (obj) { 
                                    
                                let myJson;
                                let myJsonReady=[];
                                myJson=JSON.parse(getState(dpOrginal).val)
                              
                              
                              
                              for (var index in myJson){
                              
                                   let myname="kein Name vorhanden";
                                   let myTime= (myJson[index].date).split(".")
                                   let mySortTime= myJson[index].date.replace(/.+? (.+)$/g,"$1");
                                   mySortTime="20"+myTime[2].replace(/ .+$/,"")+" "+myTime[1]+" "+myTime[0]+" "+mySortTime
                                   if (myJson[index].name!="") myname=myJson[index].name;
                                   myJsonReady.push({
                                             'Anrufer': myname ,
                                             'Nummer': myJson[index].caller,
                                             'date': myJson[index].date,
                                             'dateSorter': getDateObject(mySortTime).getTime()
                                         });
                              
                              
                                   setState(dpNeu,JSON.stringify(myJsonReady))
                               }
                              
                                 
                                 });
                              
                              

                              Image 1.png

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

                                @liv-in-sky

                                Vielen Dank, jetzt hat es geklappt,

                                ich traue mich nicht mal zu sagen woran es lag. Scheinbar war durch ein Fritzbox-update der Port für den Call monitor gesperrt.

                                Vielen Dank für deine anhaltend Hilfe, ist mehr als selten.

                                Gruss

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                766
                                Online

                                31.9k
                                Users

                                80.1k
                                Topics

                                1.3m
                                Posts

                                template
                                4
                                29
                                1844
                                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