Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Name aus Fritz Telefonbuch auslesen

    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

    Name aus Fritz Telefonbuch auslesen

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

      Ich möchte gerne bei einer ankommenden Rufnummer den Namen aus dem Fritz Telefonbuch auslesen und anzeigen.
      Der Datenpunkt für ankommende Nummer währe der : "fritzbox.0.callmonitor.ring" ?!
      Das Telefonbuch müsste auf : "fritzbox.0.phonebook.tableJSON" zu finden sein.
      Somit sind die Daten als JSON vorhanden.
      Ich möchte das gerne als Blockly realisieren und habe schon so einiges versucht allerdings vergeblich.
      Kann mir da einer weiter helfen ?

      JoJo58 1 Reply Last reply Reply Quote 0
      • JoJo58
        JoJo58 @Berges01 last edited by

        @berges01

        Ich mache das über den TR-064 Adapter und dem Datenpunkt "tr-064.0.callmonitor.inbound.callerName".

        Berges01 1 Reply Last reply Reply Quote 0
        • Berges01
          Berges01 @JoJo58 last edited by

          @jojo58
          Aus welchem Grund auch immer, da ist bei mir alles Leer und bei einem Ankommenden Anruf bleibt der Datenpunkt unberührt.
          Möglich das das an der Fritz Version 8.02 liegt.

          Codierknecht JoJo58 2 Replies Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @Berges01 last edited by

            @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

            Möglich das das an der Fritz Version 8.02 liegt.

            Nö - funzt einwandfrei.
            Hast Du den Callmonitor in der Fritte freigegeben?

            1 Reply Last reply Reply Quote 0
            • JoJo58
              JoJo58 @Berges01 last edited by JoJo58

              @berges01

              Wie @Codierknecht schon geschrieben hat, den Call Monitor freigegeben und dann im Adapter die Namensauflösung aktiviert? Ich habe auch für IoBroker einen extra User auf der Fritte angelegt.

              EDIT:

              Hier die Anleitung:
              https://www.iobroker.net/#en/adapters/adapterref/iobroker.tr-064/README.md

              Berges01 1 Reply Last reply Reply Quote 0
              • Berges01
                Berges01 @JoJo58 last edited by

                @jojo58
                @Codierknecht

                Funktioniert, warum auch immer, ich habe den "Alten" Benutzer gelöscht und in der Fritte und im "tr-064" noch mal Neu angelegt und jetzt funktioniert das wieder.
                Komische Sache, sonst habe ich da nichts verändert, das hat ja auch schon mal funktioniert da bekannte Daten vorhanden waren.
                DANKE für die Hilfe.

                Grüße aus dem verschneiten und saukalten Sauerland
                F.B.

                Berges01 1 Reply Last reply Reply Quote 0
                • Berges01
                  Berges01 @Berges01 last edited by

                  Aber Bitte noch mal zu meiner Frage, wie hätte ich das in Blockly machen müssen ?
                  Wenn ich so was mal brauche.

                  PS benutzen werde ich den tr-64.

                  Codierknecht 1 Reply Last reply Reply Quote 0
                  • Codierknecht
                    Codierknecht Developer Most Active @Berges01 last edited by

                    @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                    wie hätte ich das in Blockly machen müssen ?

                    Warum Blockly?
                    Wie willst Du das denn "anzeigen"? In Vis?

                    Da braucht's kein Blockly.
                    Einfach ein String-Widget auf tr-064.0.callmonitor.inbound.callerName zeigen lassen und dessen Sichtbarkeit über einen geeigneten DP steuern.
                    tr-064.0.callmonitor.ringing z.B. würde solange anzeigen, bis abgenommen wurde (so mache ich das).

                    Berges01 1 Reply Last reply Reply Quote 0
                    • Berges01
                      Berges01 @Codierknecht last edited by

                      @codierknecht

                      Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
                      Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.

                      Ich werde das genau so wie du machen (Funktionier ja nun dank Eurer Hilfe ).
                      Visualisieren findet bei mir mit Jarvis statt, Vis ist mir zu einarbeitungsintensiv.
                      Mir reicht Jarvis, ist zwar nicht so Optisch ansprechend reicht mir aber.

                      M Codierknecht Meister Mopper 3 Replies Last reply Reply Quote 0
                      • M
                        MCU @Berges01 last edited by

                        @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                        ist zwar nicht so Optisch ansprechend reicht mir aber.

                        Was wäre denn optisch ansprechend?

                        Berges01 1 Reply Last reply Reply Quote 0
                        • Berges01
                          Berges01 @MCU last edited by

                          @mcu

                          So etwas z.B,
                          1e065977-a8c1-43ab-814f-0223d5e00187-image.png
                          (Mal auf die Schnelle rausgesucht)
                          Das wüste ich nicht hinzubekommen in Jarvis.
                          Wahrscheinlich reicht mein Wissen auch nicht dazu aus.
                          Ich wollte Jarvis oder Vis nicht bewerten sondern meinen Eindruck wiedergeben.
                          Mit Jarvis bin ich schnell klar gekommen.
                          Das sieht doch nach meinem Geschmack recht passabel aus.
                          42e2db4b-90d9-493d-b487-a62ff735de91-image.png
                          d70b9c8c-91c9-4078-97c7-d4c653c9fd53-image.png
                          Die sind von mir und sicherlich nicht so Optisch ansprechend, da reicht mein Wissen nicht für aus es besser zu machen.

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            MCU @Berges01 last edited by

                            @berges01 Kein Problem, wollte nur wissen was man an Jarvis verbessern kann bzw. sollte.
                            Dieser Teil kann man mit Jarvis nicht erstellen.
                            fb45d5f2-aa23-4966-ac91-39f368a097c0-image.png
                            Für einige wäre das Design auch schon ziemlich "überladen", aber das ist Geschmackssache.

                            1 Reply Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @Berges01 last edited by

                              @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                              Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
                              Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.

                              Nichts einfacher als das:

                              2a65ff2d-ab72-45ea-87b0-872d5c09d12a-grafik.png
                              Das setzt voraus, dass Du einen eigenen DP in 0_userdata.0 hast, in den der Name des Anrufers geschrieben wird.
                              Wenn es klingelt, wird der Name in den DP geschrieben. Wurde abgehoben, wird der Name im eigenen DP wieder gelöscht.

                              Mit Jarvis habe ich mich noch nie beschäftigt. Sooooo kompliziert ist Vis (1) ja nun auch nicht. Dafür aber vermutlich wesentlich flexibler.

                              Sieht dann so aus:

                              dc0453c3-adb7-42dd-9068-e9e1e8774e2b-grafik.png

                              1 Reply Last reply Reply Quote 0
                              • Meister Mopper
                                Meister Mopper @Berges01 last edited by

                                @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                                Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
                                Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.

                                Hier ein Beispiel für Anrufe mit bekannten Anrufern und unbekannten sowie für die Unterscheidung, welche der Telefonnummern angerufen wird:

                                8b697e2e-b9bb-4159-b997-1e2e82580a3b-grafik.png

                                Berges01 1 Reply Last reply Reply Quote 0
                                • Berges01
                                  Berges01 @Meister Mopper last edited by

                                  Dankeschön an Alle !
                                  So ähnlich habe ich das dann auch gemacht.

                                  Was Vis und Jarvis betrifft ist das hier der Falsche Teil.

                                  Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen.
                                  Mir fehlt es da an einer Lösung wie man aus einem JSON String anhand eines Schlüssels was rausbekommt key mit der Tel.Nr und name mit dem Namen des Teilnehmers.
                                  Wie ich im Anfang geschrieben habe.
                                  Das Problem mit der Nummer und dem Namen habe ich wie Ihr angegeben habt gelöst.

                                  Meister Mopper M 2 Replies Last reply Reply Quote 0
                                  • Meister Mopper
                                    Meister Mopper @Berges01 last edited by

                                    @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                                    Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen.

                                    Joah, genau das habe ich gezeigt.

                                    1 Reply Last reply Reply Quote 0
                                    • Codierknecht
                                      Codierknecht Developer Most Active last edited by

                                      @berges01 sagte in Name aus Fritz Telefonbuch auslesen:

                                      Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen

                                      Das macht doch der Adapter für Dich.
                                      An das Telefonbuch als solches kommst Du gar nicht ran.

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        MCU @Berges01 last edited by

                                        @berges01 Auslesen vom Telefonbuch mit tr-064-Command

                                        tr-064.0.states.command
                                        

                                        mit den Einträgen

                                        /* GetPhonebookList -> Index Phonebooks */
                                        
                                        {
                                          "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1",
                                          "action": "GetPhonebookList",
                                          "params": {}
                                        }
                                        
                                        /* GetPhonebook mit Indexzahl */
                                        {
                                          "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1",
                                          "action": "GetPhonebook",
                                          "params": {
                                            "NewPhonebookID": 0
                                          }
                                        }
                                        
                                        /* GetPhonebookEntry PhonebookID + EntryID */
                                        
                                        {
                                          "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1",
                                          "action": "GetPhonebookEntry",
                                          "params": {
                                            "NewPhonebookID": 0,
                                            "NewPhonebookEntryID": 0
                                          }
                                        }
                                        
                                        /* GetPhonebookEntryUID */
                                        {
                                          "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1",
                                          "action": "GetPhonebookEntryUID",
                                          "params": {
                                            "NewPhonebookID": 1,
                                            "NewPhonebookEntryUniqueID": 86
                                          }
                                        }
                                        {
                                          "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1",
                                          "action": "GetPhonebookEntryUID",
                                          "params": {
                                            "NewPhonebookID": 1,
                                            "NewPhonebookEntryUniqueID": 80
                                          }
                                        }
                                        
                                        mickym 1 Reply Last reply Reply Quote 1
                                        • mickym
                                          mickym Most Active @MCU last edited by mickym

                                          @Berges01 Das braucht es alles nicht. Wenn man im tr-64 Adapter callist anklickt und zum Beispiel JSON anklickst, dann bekommst Du eine Liste mit Objekten, die Du auslesen kannst.

                                          Jedes Attribut - zum Beispiel Name und Telefonnummer kannst Du dann einfach herauslösen:

                                          647e0b35-58c8-43a2-974b-c4a33ad9412c-image.png

                                          Als erstes habe ich Dir das ganze Objekt ausgegeben, damit Du siehst welche Attribute es hat und wie Du diese ansprichst.

                                          Hier zum Import:

                                          <xml xmlns="https://developers.google.com/blockly/xml">
                                           <variables>
                                             <variable id="{B?4WnzzCo5JsACboJQn">Anruf</variable>
                                           </variables>
                                           <block type="on" id="poc-7nrzpt:^p}gYpD.t" x="-362" y="-237">
                                             <field name="OID">tr-064.0.calllists.all.json</field>
                                             <field name="CONDITION">any</field>
                                             <field name="ACK_CONDITION"></field>
                                             <statement name="STATEMENT">
                                               <block type="controls_forEach" id="YeU71y0i@e)_JKP8e5vQ">
                                                 <field name="VAR" id="{B?4WnzzCo5JsACboJQn">Anruf</field>
                                                 <value name="LIST">
                                                   <block type="convert_json2object" id="6bliXI#xrQvCa?[_H)Mj">
                                                     <value name="VALUE">
                                                       <block type="on_source" id="V~CZr6n/@2([wZ?@Aq%p">
                                                         <field name="ATTR">state.val</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO">
                                                   <block type="debug" id="HQGQM1Bap-C;~KLf7AxB">
                                                     <field name="Severity">info</field>
                                                     <value name="TEXT">
                                                       <shadow type="text" id="UW_(avGtkke65|GH?l:d">
                                                         <field name="TEXT">test</field>
                                                       </shadow>
                                                       <block type="variables_get" id="5*Vn9U[cn!~!y`),Mp4G">
                                                         <field name="VAR" id="{B?4WnzzCo5JsACboJQn">Anruf</field>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="debug" id="+p=e([FCe~kDr(++e|_k">
                                                         <field name="Severity">info</field>
                                                         <value name="TEXT">
                                                           <shadow type="text" id="SL9woaT7sk2ec}X5}2KC">
                                                             <field name="TEXT">test</field>
                                                           </shadow>
                                                           <block type="get_attr" id="%tbEtblI;{AK3qOhUAOH">
                                                             <value name="PATH">
                                                               <shadow type="text" id="UPtdupZ)B4Xs)U{.j3eZ">
                                                                 <field name="TEXT">name</field>
                                                               </shadow>
                                                             </value>
                                                             <value name="OBJECT">
                                                               <shadow type="get_object" id="_N|BYV3Dpk3V0;TanGxk">
                                                                 <field name="OID">Object ID</field>
                                                               </shadow>
                                                               <block type="variables_get" id="WxP|vo4(+aK_2D;F3ZOR">
                                                                 <field name="VAR" id="{B?4WnzzCo5JsACboJQn">Anruf</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="debug" id="OuF~U0Ldn+rXQP7[v{hE">
                                                             <field name="Severity">info</field>
                                                             <value name="TEXT">
                                                               <shadow type="text" id="SL9woaT7sk2ec}X5}2KC">
                                                                 <field name="TEXT">test</field>
                                                               </shadow>
                                                               <block type="get_attr" id="Xs-Ro%ej2U;!8S`k)D^h">
                                                                 <value name="PATH">
                                                                   <shadow type="text" id="(O^Wv=Y!k{^U%t60/cdm">
                                                                     <field name="TEXT">caller</field>
                                                                   </shadow>
                                                                 </value>
                                                                 <value name="OBJECT">
                                                                   <shadow type="get_object" id="_N|BYV3Dpk3V0;TanGxk">
                                                                     <field name="OID">Object ID</field>
                                                                   </shadow>
                                                                   <block type="variables_get" id="Yb*rMxR~w_I,~5Hz%#P7">
                                                                     <field name="VAR" id="{B?4WnzzCo5JsACboJQn">Anruf</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </statement>
                                               </block>
                                             </statement>
                                           </block>
                                          </xml>
                                          

                                          Die calllisten findest Du als JSON im tr-064 Adapter.

                                          b682d8cf-1a00-4aba-839b-ca93cb9aaf42-image.png

                                          Du musst also nicht selbst die Namen aus dem Telefonbuch suchen, sondern die werden automatisch gesucht und in die Anruflisten gesetzt.
                                          Du musst im Adapter halt anhaken, welche Listen du haben möchtest:

                                          ebf66ea1-e09f-40bd-9b6c-e6642d54a906-image.png

                                          Da sind dann auch andere Daten, wie Gesprächsdauer, wann angerufen usw. enthalten.

                                          Wichtig ist halt, dass du anhakst, was Du haben willst, sonst bleiben die Datenpunkte natürlich leer.

                                          Berges01 1 Reply Last reply Reply Quote 0
                                          • Berges01
                                            Berges01 @mickym last edited by Berges01

                                            @mickym

                                            Ich merke schon ich habe mich falsch ausgedrückt! (SORRY)
                                            Die Lösung habe ich!!!! (Dank Euch!)

                                            Was ich suche ist, wie müsste man es machen um aus dem Telefonbuch oder aus einer vergleichbaren Liste, mithilfe eines Blockly und eines bekannten key den value z.B"name" auszulesen.

                                            PS ich habe es DANKE !
                                            14261ee6-c861-4fcc-9cab-0a487513eaef-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            652
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            24
                                            758
                                            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