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.
    • 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
                  • mickym
                    mickym Most Active @Berges01 last edited by mickym

                    @berges01 Verstehe es zwar nicht - weil Du hast alles in den Listen, da braucht man das Telefonbuch nicht auslesen. In den Anruflisten wird automatisch der Name, Telefonnr und nach 10 andere Werte eingetragen. Deswegen finde ich das Auslesen des Telefonbuchs unnötig, aber egal Du hast eine Lösung und ich bin damit raus.

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

                      @mickym
                      Ich versteh's auch nicht 🤔

                      @Berges01
                      In tr-064.0.callmonitor.inbound.callerName steht bei einem eingehenden Anruf der Name des Anrufers (aus dem Telefonbuch - soweit vorhanden). In tr-064.0.callmonitor.inbound.caller steht die Rufnummer.

                      Bei ausgehenden Rufen geht das analog über outbound und callee.

                      Dein Script "sucht" nicht den Namen zu einem bestimmten Key, sondern produziert lediglich eine Liste.
                      Wozu das gut sein soll erschließt sich mir nicht.

                      Aber egal: Hauptsache es funzt für Dich und Du bist zufrieden.
                      Ich bin dann auch raus.

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

                        @codierknecht Ja und habe es gerade getestet - auch wenn die Calllisten erst beim Beenden erstellt werden - aber wie Du sagst im inbound kommt SOFORT im JSON der Name und die Nummer des Anrufers in Echtzeit ohne dass man was nachschlagen muss - also bereits beim Klingeln ohne das jemand abgehoben hat.

                        8c87cd9d-9072-4ff8-9dbd-2db84af25e9c-image.png

                        Da muss NICHTS im Telefonbuch gesucht werden - das ist alles automatisch eingetragen.

                        6ee1be38-527f-49de-a41b-1284f153ed7b-image.png

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

                          @mickym sagte in Name aus Fritz Telefonbuch auslesen:

                          im inbound kommt SOFORT im JSON der Name und die Nummer des Anrufers in Echtzeit ohne dass man was nachschlagen muss - also bereits beim Klingeln ohne das jemand abgehoben hat

                          Genau so lasse ich mir das in meiner Vis anzeigen 😉

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          703
                          Online

                          31.9k
                          Users

                          80.2k
                          Topics

                          1.3m
                          Posts

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