Ich bin jetzt aber auch dazu übergegangen, das ich die TAGs die nur einfache Werte von z.B. HM-Heizungsventilen anzeigen, mit diesem Blockly zu versorgen.
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="e.-?J1RG(1E03apliOsd">url</variable>
<variable id="eMqV!m8?ZCdqN2].w`xb">TagMini1</variable>
<variable id="*)}|9mHpKcV3YN}|a_t5">jsonMini1</variable>
</variables>
<block type="procedures_defcustomreturn" id="Q)=N/g,e;;C$aa#GZ/g6" x="738" y="388">
<mutation statements="false">
<arg name="url" varid="e.-?J1RG(1E03apliOsd"></arg>
</mutation>
<field name="NAME">encodeURL</field>
<field name="SCRIPT">dXJsID0gZW5jb2RlVVJJQ29tcG9uZW50KHVybCk7DQpyZXR1cm4gdXJsOw==</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="on_ext" id="P$af/8byEUS#qCA]5B-P" x="738" y="413">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="qKgG$O[{3RUIQEMyX@84">
<field name="oid">hm-rpc.0.NEQ1405541.4.ACTUAL_TEMPERATURE</field>
</shadow>
</value>
<value name="OID1">
<shadow type="field_oid" id="1=$zeB_8NZ{``1IKhA@;">
<field name="oid">hm-rpc.0.NEQ1405541.4.SET_TEMPERATURE</field>
</shadow>
</value>
<value name="OID2">
<shadow type="field_oid" id="3xv_){1%Z-Px_oc=|ee]">
<field name="oid">hm-rpc.0.NEQ1405541.4.VALVE_STATE</field>
</shadow>
</value>
<value name="OID3">
<shadow type="field_oid" id="1%z%;+tP3g0pYuG^87_*">
<field name="oid">hm-rpc.0.NEQ1405541.4.BATTERY_STATE</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="variables_set" id="}kvQ}B#.rViPjfKc-HTi">
<field name="VAR" id="eMqV!m8?ZCdqN2].w`xb">TagMini1</field>
<value name="VALUE">
<block type="text" id="AS0{YNAIOlM%S|LO,c(?">
<field name="TEXT">00007E1BDCCFB291</field>
</block>
</value>
<next>
<block type="variables_set" id="k02GjbFfyHgTN`gcO-Da">
<field name="VAR" id="*)}|9mHpKcV3YN}|a_t5">jsonMini1</field>
<value name="VALUE">
<block type="procedures_callcustomreturn" id="m+$OB%}5|)Pwa;Sp_8Xz">
<mutation name="encodeURL">
<arg name="url"></arg>
</mutation>
<value name="ARG0">
<block type="text_join" id="%7M,-4ru#q{/k6KDWMHm">
<mutation items="11"></mutation>
<value name="ADD0">
<block type="text" id="KG:U*zHU9}`ZAfY=W0tK">
<field name="TEXT">[ {"text": [10,10,"Hauswirtschaftsraum","fonts/bahnschrift30",2]},</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="J8kE(`F|;UG(UnXYIXH/">
<field name="TEXT">{"line": [10,35,374,35,1]},</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="n|(:Q;;@|/rl*,,eDMQ0">
<field name="TEXT">{"text": [10,50,"Aktuelle Temperatur:","fonts/bahnschrift20",1]}, {"text": [240,50,"</field>
</block>
</value>
<value name="ADD3">
<block type="get_value" id="Ivop[TTx6k8izC(a}Lh$">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.0.NEQ1405541.4.ACTUAL_TEMPERATURE</field>
</block>
</value>
<value name="ADD4">
<block type="text" id=".;[edg]Q8Y}~9~$]`WGh">
<field name="TEXT">°C","fonts/bahnschrift20",2]}, {"text": [10,80,"Eingestellte Temperatur:","fonts/bahnschrift20",1]}, {"text": [240,80,"</field>
</block>
</value>
<value name="ADD5">
<block type="get_value" id="!vH6u](8OPQ3|j4+-R0`">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.0.NEQ1405541.4.SET_TEMPERATURE</field>
</block>
</value>
<value name="ADD6">
<block type="text" id="10FFF9ZLy|n:h)tY)c|m">
<field name="TEXT">°C","fonts/bahnschrift20",2]}, {"text": [10,110,"Aktuelle Ventilstellung:","fonts/bahnschrift20",1]}, {"text": [240,110,"</field>
</block>
</value>
<value name="ADD7">
<block type="get_value" id="N~fNY_bADcQ(?eeOcd70">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.0.NEQ1405541.4.VALVE_STATE</field>
</block>
</value>
<value name="ADD8">
<block type="text" id="#7e9sI0@iu:c/+?Dr@Z.">
<field name="TEXT"> %","fonts/bahnschrift20",2]}, {"text": [10,140,"Batteriespannung:","fonts/bahnschrift20",1]}, {"text": [240,140,"</field>
</block>
</value>
<value name="ADD9">
<block type="get_value" id="M=3Q06RUua?Te,a?1Ui;">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.0.NEQ1405541.4.BATTERY_STATE</field>
</block>
</value>
<value name="ADD10">
<block type="text" id="8Mjb{3)XGWhzToz{:.]t">
<field name="TEXT"> V","fonts/bahnschrift20",2]} ]</field>
</block>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="http_post" id="AoQ+~mSdktWzhHgxGz#C">
<field name="TIMEOUT">15</field>
<field name="UNIT">sec</field>
<field name="TYPE">text</field>
<value name="URL">
<shadow type="text" id="qh|GfefbC0op9nMhC4nk">
<field name="TEXT">http://192.168.49.186/jsonupload</field>
</shadow>
</value>
<value name="DATA">
<block type="text_join" id="YiM(/:1NU2PK@ysCbT8$">
<mutation items="4"></mutation>
<value name="ADD0">
<block type="text" id="sY#__Tq@9.DrJShh~Ant">
<field name="TEXT">mac=</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="^ag2u;YyTY9!dP{tJ|}c">
<field name="VAR" id="eMqV!m8?ZCdqN2].w`xb">TagMini1</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="k:I$k7w),ZmO9hEwr:$W">
<field name="TEXT">&json=</field>
</block>
</value>
<value name="ADD3">
<block type="variables_get" id="MEQ/.CHU]v1WHbuc@`Ly">
<field name="VAR" id="*)}|9mHpKcV3YN}|a_t5">jsonMini1</field>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</xml>
Das läuft deutlich einfacher.
Alle anderen TAGs, z.B. die TAGs die den Inhalt von Terminkalendern anzeigen sollen, versorge ich mit dem "Puppeteer-Skript".
Es scheint, das das etwas Ruhe in dieser ganzen "Screenshot-Abfragerei" gebracht hat.
Wenn jemand eine Idee hat, wie ich das was vom ical Adapter zur Verfügung gestellt wird, sauber auf den größeren TAG darstellen kann, immer her damit. Bitte nicht den Google-Ansatz. Da ist die Anzeige auf größeren TAGs ganz anderes als wenn man das zu einem kleinen TAGs sendet.