NEWS
Test Adapter ioBroker.imap latest/stable
-
-
@lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:
@bahnuhr Leider hatte ich noch 2 Fehler. Bitte neu vom GIT laden. Sorry für die Umstände aber ich bekomme den Adapter nicht in latest da apollo77 keine Zeit hat.
Versuche dann mal dieses Blockly zu importieren.
Gruß//Lucky
Das hier ist das Blockly, was ich hier gefunden habe.
Das Spuckt mir aber immer eine Fehlermeldung aus.javascript.0 2025-01-11 06:33:16.859 error script.js.Test.AB: Cannot parse "timeout": SyntaxError: Unexpected token 'i', "timeout" is not valid JSON imap.0 2025-01-11 06:32:56.860 error Fehlende Fetch meine_mailadresse_de
Habe gedacht, das ich mir damit den Mailanhang per Telegram schicken kann.
Dann habe ich das Javascript von Dir gefunden:
// Datei vom Anrufbeantworter speichern und per telegram senden function weiter() { // Variablen var i, result, j, json, fs = require('fs'), vText = "", vUser = "Dieter"; var uid = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.uid").val; var subject = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.subject").val; var text = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.text").val; // Script if (text.indexOf("Anrufbeantworter") > - 1) { // Anrufbeantworter ist im Text enthalten // Variablen var Anruf_von = text.substring(text.indexOf("Der Anrufer:") + 13, text.indexOf("hat für Sie") - 1) var Datum = text.substring(text.indexOf("Datum:") + 7, text.indexOf("Uhrzeit") - 1) var Uhrzeit = text.substring(text.indexOf("Uhrzeit:") + 9, text.indexOf("Aufnahme") - 1) var Laenge = text.substring(text.indexOf("Aufnahme") + 15, text.indexOf("Die Weiter") - 2) + " (min/sek)" // Datei speichern sendTo("imap.0", "getIMAPRequest", { name: "ppc@dbrp-mueller.de", max: 20, search: '["ALL"]', fetch: JSON.parse('{"fetch": true, "uid": [' + uid + ']}'), bodie: '{bodies: "", markSeen: false}', parse: true, }, async function (result) { if (!result) { log("No result found!"); return; } for (var i_index in result) { i = result[i_index]; var j_list = getAttr(i, 'body.attachments'); for (var j_index in j_list) { j = j_list[j_index]; json = JSON.stringify(getAttr(j, 'content')); //log(getAttr(j, 'filename')); writeFile('vis.0', '/Anrufe/'+ getAttr(j,'filename'), JSON.stringify(getAttr(json, 'data')), function (error) { if(error) { log('Fehler beim Speichern von Datei ' + getAttr(json, 'filename') +' Fehler:' + error, 'warn'); } else { log('Datei: ' + getAttr(j, 'filename') +' wurde gespeichert'); } }); // Datei kopieren mit anderem Filenamen setTimeout(function() { Datei_kopieren("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), "/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav"); }, 3000); // Datei wieder löschen setTimeout(function() { fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), function (err) { if (err) throw err; log('Datei: ' + getAttr(j, 'filename') + ' wurde gelöscht.'); }); fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav", function (err) { if (err) throw err; log('Datei: Anrufbeantworter.wav wurde gelöscht.'); }); }, 10000); // Datei per telegram versenden setTimeout(function() { vText = "Anruf von: " + Anruf_von + "\nDatum: " + Datum + "\nUhrzeit: " + Uhrzeit + "\nAufnahme: " + Laenge; log (vText); //vText = "test"; sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav', caption: vText}); }, 5000); } } }); } else { log ("Anrufbeantworter ist im Text nicht enthalten; Script wird abgebrochen."); } } on({id: "imap.0.ppc_dbrp-mueller_de.email.email_01.uid", change: "ne"}, function(obj) { // uid von Email 1 hat sich geändert log("Auslöser Email imap hat sich geändert; UID= " + obj.state.val); weiter(); }); weiter();
Hier habe ich eigentlich nur den Speicherpfad angepasst (auch mit dem originalen kommt diese Fehlermeldung)
// Datei vom Anrufbeantworter speichern und per telegram senden function weiter() { // Variablen var i, result, j, json, fs = require('fs'), vText = "", vUser = "Telegramuser"; var uid = getState("imap.0.meine_mail_de.email.email_01.uid").val; var subject = getState("imap.0.meine_mail_de.email.email_01.subject").val; var text = getState("imap.0.meine_mail_de.email.email_01.text").val; // Script if (text.indexOf("Anrufbeantworter") > - 1) { // Anrufbeantworter ist im Text enthalten // Variablen var Anruf_von = text.substring(text.indexOf("Der Anrufer:") + 13, text.indexOf("hat für Sie") - 1) var Datum = text.substring(text.indexOf("Datum:") + 7, text.indexOf("Uhrzeit") - 1) var Uhrzeit = text.substring(text.indexOf("Uhrzeit:") + 9, text.indexOf("Aufnahme") - 1) var Laenge = text.substring(text.indexOf("Aufnahme") + 15, text.indexOf("Die Weiter") - 2) + " (min/sek)" // Datei speichern sendTo("imap.0", "getIMAPRequest", { name: "meine@mail.de", max: 20, search: '["ALL"]', fetch: JSON.parse('{"fetch": true, "uid": [' + uid + ']}'), bodie: '{bodies: "", markSeen: false}', parse: true, }, async function (result) { if (!result) { log("No result found!"); return; } for (var i_index in result) { i = result[i_index]; var j_list = getAttr(i, 'body.attachments'); for (var j_index in j_list) { j = j_list[j_index]; json = Buffer.from(getAttr(j, 'content'));; //log(getAttr(j, 'filename')); writeFile('0_userdata.0', '/Anrufe/'+ getAttr(j,'filename'), json, function (error) { if(error) { log('Fehler beim Speichern von Datei ' + getAttr(json, 'filename') +' Fehler:' + error, 'warn'); } else { log('Datei: ' + getAttr(j, 'filename') +' wurde gespeichert'); } }); // Datei kopieren mit anderem Filenamen setTimeout(function() {Datei_kopieren ("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/" + getAttr(j, 'filename'), "/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav"); }, 3000); // Datei wieder löschen setTimeout(function() { fs.unlink ("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/" + getAttr(j, 'filename'), function (err) { if (err) throw err; log('Datei: ' + getAttr(j, 'filename') + ' wurde gelöscht.'); }); // fs.unlink("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav", function (err) { if (err) throw err; // log('Datei: Anrufbeantworter.wav wurde gelöscht.'); }); }, 10000); // Datei per telegram versenden // setTimeout(function() { // vText = "Anruf von: " + Anruf_von + "\nDatum: " + Datum + "\nUhrzeit: " + Uhrzeit + "\nAufnahme: " + Laenge; // log (vText); //vText = "test"; // sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufe/Anrufbeantworter.wav', caption: vText}); // }, 5000); } } }); } else { log ("Anrufbeantworter ist im Text nicht enthalten; Script wird abgebrochen."); } } on({id: "imap.0.meine_mail_de.email.email_01.uid", change: "ne"}, function(obj) { // uid von Email 1 hat sich geändert log("Auslöser Email imap hat sich geändert; UID= " + obj.state.val); weiter(); }); weiter();
das spuckt mir aber die Fehlermeldungen aus:
javascript.0 2025-01-10 18:07:35.354 error at process.processTimers (node:internal/timers:519:7) javascript.0 2025-01-10 18:07:35.354 error at listOnTimeout (node:internal/timers:581:17) javascript.0 2025-01-10 18:07:35.354 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34) javascript.0 2025-01-10 18:07:35.354 error at Object.<anonymous> (script.js.Test.Skript_1:66:20) javascript.0 2025-01-10 18:07:35.354 error at ProtectFs.unlink (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:78:9) javascript.0 2025-01-10 18:07:35.354 error at checkProtected (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:21:19) javascript.0 2025-01-10 18:07:35.354 error Error in callback: Error: Permission denied javascript.0 2025-01-10 18:07:35.353 error May not read /opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/10.01.25_14.49_Anruf.XXXXXXXXX.wav - use writeFile instead javascript.0 2025-01-10 18:07:28.354 error at process.processTimers (node:internal/timers:519:7) javascript.0 2025-01-10 18:07:28.354 error at listOnTimeout (node:internal/timers:581:17) javascript.0 2025-01-10 18:07:28.354 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34) javascript.0 2025-01-10 18:07:28.354 error at Object.<anonymous> (script.js.Test.Skript_1:60:41) javascript.0 2025-01-10 18:07:28.354 error Error in callback: ReferenceError: Datei_kopieren is not defined
In den Script habe ich halt nur die vorhandenen Einstellungen an meine eigenen angepasst.
Seit AVM irgendetwas am Codec der Aufnahmedatei geändert hat, kann ich diese nicht mehr mit Spexx in ein wav konvertieren und suche jetzt halt nach einer Alternative, die funktioniert. -
@falke69 Ich verstehe das mit dem kopieren nicht aber egal. Als erstes bitte mal das hier entfernen Datei_kopieren damit die erste Fehlermeldung weg ist. Zum kopieren, schreiben oder löschen immer die Wrappers (Funktion von Java bzw. iobroker) nehmen und nicht fs!
Weiter oben ist doch ein Script...Ich schau mal ob das auch mit Blockly geht...Melde mich...Hier mal ein Blockly als Bsp.
common.Skript_104.xmlUnter Aktion gibt es noch ein Blockly womit du die Datei einlesen kannst und dann per Telegram versenden.
Der Blockly Data hat dann das Attachment.Gruß//Lucky
-
Perfekt!
Funktioniert wunderbar.
Jetzt bekomme ich wieder meine Nachrichten von der Fritzbox per Telegram.Ich wünsche Dir noch ein schönes Wochenende.
-
Hallo zusammen,
funktioniert das auch mit einem outlook.office365.com ? Ich bekomme hier Login Fehler.
Fehler bei Host xxxx@xxxx.de - Error: LOGIN failed. - _login.
Hab ich hier was falsch eingestellt oder geht das nicht wegen dem OAuth2 ?
Ist allerdings nen Schulkonto für Teams. Würde hier gerne auf Nachrichten reagieren und mir Infos über Alexa ansagen lassen.
-
Das funktioniert nicht mit einem Schulkonto. Wenn der Admin des Schulkonto dich frei gibt, dann kannst du dir einen Token erstellen. Die Daten können dann hier eingetragen werden.
-
@lucky_esa Wie bekommen das dann aber immer die normalen Mail Programme hin, wie Thunder, Better oder Outlook App ?
Was muss er da frei geben ? Ich kann ja spaßhalber mal anfragen ? -
@d3ltoroxp sagte in Test Adapter ioBroker.imap latest/stable:
@lucky_esa Wie bekommen das dann aber immer die normalen Mail Programme hin, wie Thunder, Better oder Outlook App ?
Was muss er da frei geben ? Ich kann ja spaßhalber mal anfragen ?Diese Programme verwenden eine UUID die wohl kostenpflicht ist. Damit geben Sie sich bei dem Konto zu erkennen. Schau bitte mal in meine Anleitung unter "OAuth2". Da ist beschrieben wie man an seine Daten kommt.
Gruß//Lucky
-
@lucky_esa said in Test Adapter ioBroker.imap latest/stable:
@d3ltoroxp sagte in Test Adapter ioBroker.imap latest/stable:
Gruß//Lucky
Hier ist der Artikel in Deutsch: link text
-
Gibt es eine Möglichkeit auf Anhänger zuzugreifen?
Ich würde gerne automatisch PDFs ausdrucken die ich an eine bestimmte Mail sende.
EDIT
Geht scheinbar nicht. Hab mal einen Feature Request erstellt.
https://github.com/Lucky-ESA/ioBroker.imap/issues/129 -
@david-g sagte in Test Adapter ioBroker.imap latest/stable:
Gibt es eine Möglichkeit auf Anhänger zuzugreifen?
Ich würde gerne automatisch PDFs ausdrucken die ich an eine bestimmte Mail sende.
EDIT
Geht scheinbar nicht. Hab mal einen Feature Request erstellt.
https://github.com/Lucky-ESA/ioBroker.imap/issues/129Aber natürlich geht das. Wie das geht steht in der Anleitung unter Beispiele oder hier im Thread ca. 10 Post zurück. Auch mit Blockly Beispiel.
Gruß//Lucky
-
@lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:
Aber natürlich geht das. Wie das geht steht in der Anleitung unter Beispiele oder hier im Thread ca. 10 Post zurück. Auch mit Blockly Beispiel.
Ich hatte es über die Forumssuche probiert und dann grob die erste Hälfte vom Thread überflogen. Dachte nicht, dass so weit unten eine Lösung kommt....
Asche auf mein Haupt.@falke69 sagte in Test Adapter ioBroker.imap latest/stable:
Perfekt!
Funktioniert wunderbar.
Jetzt bekomme ich wieder meine Nachrichten von der Fritzbox per Telegram.Ich wünsche Dir noch ein schönes Wochenende.
Kannst du mir das Blockly mal zeigen?
-
ich habe das noch etwas nach meinen Bedürfnissen angepasst
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="z0O6x85%yoa7-}v~#.Bf">meta</variable> <variable id="s[uS~^6MKkVuzwj4r1=4">filename</variable> <variable id="+Tu=%xGC).)IE/9zIpah">i</variable> <variable id="jFVfezXGqV9MqVXz9=.m">result</variable> <variable id="{l3Cxl$Exrh(JtP4mb,_">j</variable> </variables> <block type="procedures_defcustomnoreturn" id="Nxa%U~h/LNlazXSdwCcy" x="-37" y="-862"> <mutation statements="false"> <arg name="meta" varid="z0O6x85%yoa7-}v~#.Bf"></arg> <arg name="filename" varid="s[uS~^6MKkVuzwj4r1=4"></arg> </mutation> <field name="NAME">deleteFile</field> <field name="SCRIPT">Y29uc29sZS5sb2coIlRFU1QiKTsNCmRlbEZpbGUobWV0YSwgZmlsZW5hbWUsIGZ1bmN0aW9uIChlcnJvcikgew0KICAgIGlmICghZXJyb3IpIHsNCiAvLyAgICAgICBjb25zb2xlLmxvZygnRGF0ZWkgJyArIGZpbGVuYW1lICsgJyBnZWzDtnNjaHQnKTsNCiAgICB9IGVsc2Ugew0KIC8vICAgICAgIGNvbnNvbGUubG9nKCdGZWhsZXIgYmVpbSBsw7ZzY2hlbjogJyArIGVycm9yKTsNCiAgICB9DQp9KTs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="on_ext" id="FI8H=9bXf-oF?79]E,G+" x="-37" y="-812"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="zY)BkjkQ85tW{|i#*v-e"> <field name="oid">0_userdata.0.Telefon.Anrufbeantworter.Wir.Nachricht_vorhanden</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="5zdRAx,OtqY4a|6D+ib9"> <value name="IF0"> <block type="logic_compare" id="RUxMpUZ_q||I-Ek?q-0E"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="ixzX]j?n_fyrcqIoCb#N"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Telefon.Anrufbeantworter.Wir.Nachricht_vorhanden</field> </block> </value> <value name="B"> <block type="logic_boolean" id="-f6rdwt8F,u+HlyIoDLh"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="imap_request" id="xQ)3}$)x;VR+7~XjRplw"> <field name="INSTANCE">.0</field> <field name="IMAPNAME">rene@familie-herrn.de</field> <field name="MAILPARSER">TRUE</field> <field name="LOG"></field> <value name="SEARCH"> <shadow type="text" id="!T]w@eqhQ9}^EV5w-Lb@"> <field name="TEXT">["ALL"]</field> </shadow> </value> <value name="FETCH"> <shadow type="text" id="fI(^g5m;:g@I+2%Z,d?Y"> <field name="TEXT">{"fetch": false, "uid": [1780]}</field> </shadow> </value> <value name="BODIES"> <shadow type="text" id="3(s4RwI(z[N|{OP7g@%L"> <field name="TEXT">{bodies: "", markSeen: false}</field> </shadow> </value> <value name="MAX"> <shadow type="math_number" id="Av8.]xQus`A|:V`G]@0,"> <field name="NUM">1</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_forEach" id=";5`S)VG*GMh(Xrc7hbc:"> <field name="VAR" id="+Tu=%xGC).)IE/9zIpah">i</field> <value name="LIST"> <block type="variables_get" id="!W|@W97vZFm4[:1.X##+"> <field name="VAR" id="jFVfezXGqV9MqVXz9=.m">result</field> </block> </value> <statement name="DO"> <block type="controls_forEach" id="Su`KfJr:^P,c:J)u**Ho"> <field name="VAR" id="{l3Cxl$Exrh(JtP4mb,_">j</field> <value name="LIST"> <block type="get_attr" id="09_6JP~5I]x(eX)jP4UY"> <value name="PATH"> <shadow type="text" id="mpeh{~Hx(V4_}iRulQ4q"> <field name="TEXT">body.attachments</field> </shadow> </value> <value name="OBJECT"> <shadow type="get_object" id="JN0k1$$B(}[z;mZ2f6Cy"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="%{HYF_q*Gci7qQZ5$tYX"> <field name="VAR" id="+Tu=%xGC).)IE/9zIpah">i</field> </block> </value> </block> </value> <statement name="DO"> <block type="file_write" id="h$277P5?poe51:5Zd:h|"> <value name="OID"> <shadow type="field_oid_meta" id="69dxJ]n,Pi96lc[4?;Xx"> <field name="oid">0_userdata.0</field> </shadow> <block type="field_oid_meta" id="2|EntCIt_@;Qk#c|,c{?"> <field name="oid">0_userdata.0</field> </block> </value> <value name="FILE"> <shadow type="text" id="-JCw*w*{KMGA(GRL*4hz"> <field name="TEXT">message.wav</field> </shadow> </value> <value name="DATA"> <block type="get_attr" id=")W+8NuW6rNE9yk_p!$r7"> <value name="PATH"> <shadow type="text" id="yDK`(Sby-62509_o{iQ7"> <field name="TEXT">content</field> </shadow> </value> <value name="OBJECT"> <shadow type="get_object" id="JN0k1$$B(}[z;mZ2f6Cy"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="%E!H$v~@+#4[t}o}sueY"> <field name="VAR" id="{l3Cxl$Exrh(JtP4mb,_">j</field> </block> </value> </block> </value> <next> <block type="telegram" id="gVgR|GQGaSRB,IK)5+1("> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="ESCAPING">FALSE</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id="cDew.TH@B*rf[!BAfURr"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="4WJW){4Eq55)G,%-yju*"> <mutation items="7"></mutation> <value name="ADD0"> <block type="text" id="$J{_|i6@fZ?;vZz}+s[7"> <field name="TEXT">Der Anrufer</field> </block> </value> <value name="ADD1"> <block type="text_newline" id="^$/E=8;sgM#H%|kq|Pun"> <field name="Type">\n</field> </block> </value> <value name="ADD2"> <block type="get_value" id="z8$x0{=,bOapN=k[MwRP"> <field name="ATTR">val</field> <field name="OID">tr-064.0.callmonitor.lastCall.callerName</field> </block> </value> <value name="ADD3"> <block type="text_newline" id=":tSj{c3qsM}7=Pov1~Mc"> <field name="Type">\n</field> </block> </value> <value name="ADD4"> <block type="text" id="EBOT~bIL8%2a+~$DwS$O"> <field name="TEXT"> hat eine Nachricht hinterlassen</field> </block> </value> <value name="ADD5"> <block type="text_newline" id="19[D,:A4A^,f1JiFG?Jg"> <field name="Type">\n</field> </block> </value> <value name="ADD6"> <block type="text" id="x?J_D!#R8Wvtu{H^4(RH" disabled="true"> <field name="TEXT">/opt/iobroker/iobroker-data/files/0_userdata.0/</field> </block> </value> </block> </value> <value name="USERNAME"> <block type="text" id="4`AAPKNU?1@1+8L_:#^;"> <field name="TEXT">falke69</field> </block> </value> <next> <block type="timeouts_wait" id="6r(V!)w]{@}~[)3qg+k@"> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <next> <block type="procedures_callcustomnoreturn" id="3C-Luk:GC8%HCs5)*3c."> <mutation name="deleteFile"> <arg name="meta"></arg> <arg name="filename"></arg> </mutation> <value name="ARG0"> <block type="field_oid_meta" id="U~U1,%5j=8j-fidf,]nn"> <field name="oid">0_userdata.0</field> </block> </value> <value name="ARG1"> <block type="text" id="Udfnz^/b!@YnG:o!~SgI"> <field name="TEXT">message.wav</field> </block> </value> <next> <block type="timeouts_wait" id="uWrjEbeZ%j`C/6AvXgf~"> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <next> <block type="control" id="ivo{.8g-#Q3+$FR^I@tl"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Telefon.Anrufbeantworter.Wir.Nachricht_vorhanden</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="@vx~C[!/c@RxgfZdsIX`"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="timeouts_wait" id="y}qC/,6@mLlz/61(-6`r" disabled="true"> <field name="DELAY">5</field> <field name="UNIT">min</field> <next> <block type="comment" id="keX_mctxGqcY3wp!xYj3"> <field name="COMMENT">Nachricht auf AB löschen</field> <next> <block type="control" id="u3Nh8wW3;0qU_7T,S{RL"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Telefon.Anrufbeantworter.Nachricht_loeschen</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="0NvDQJ!u^FGR!vPT?%@t"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="IRc5jojMEm%V}t])YK^l"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Test.Json</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="P[?=qmX1hB=1z`C=KY?c"> <field name="TEXT">{ "service": "urn:dslforum-org:service:X_AVM-DE_TAM:1", "action": "DeleteMessage", "params": { "NewIndex ": "0" "NewMessageIndex ": "0" } }</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </statement> </block> </statement> </block> </statement> </block> </xml>