@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:
Spoiler
<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.