Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter ioBroker.imap latest/stable

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Test Adapter ioBroker.imap latest/stable

Geplant Angeheftet Gesperrt Verschoben Tester
410 Beiträge 26 Kommentatoren 93.4k Aufrufe 21 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Lucky_ESA

    @bahnuhr Das sollte funktionieren.

    
    
     
    
    // 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 = Buffer.from(getAttr(j, 'content'));;
    
                //log(getAttr(j, 'filename'));
    
                writeFile('vis.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/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();
    
     
    
    
    falke69F Offline
    falke69F Offline
    falke69
    schrieb am zuletzt editiert von
    #369

    @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

    Datei_kopieren

    Hallo @lucky_esa könntest Du mir vielleicht mit dem Script weiterhelfen.

    Der Anhang wird anstandslos im entsprechenden Verzeichnis gespeichert.
    Die Datei, wird aber weder umbenannt, noch kann diese gelöscht werden.
    Per Telegram bekomme ich auch nur den Pfad zur Datei (/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav)

    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
    

    Ich vermute, dass sich der eine oder andere Befehl geändert hat.
    Ein Blockly wäre mir eigentlich am liebsten. Leider fehlt mir der Ansatz dazu.

    Vielen Dank

    L 1 Antwort Letzte Antwort
    0
    • falke69F falke69

      @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

      Datei_kopieren

      Hallo @lucky_esa könntest Du mir vielleicht mit dem Script weiterhelfen.

      Der Anhang wird anstandslos im entsprechenden Verzeichnis gespeichert.
      Die Datei, wird aber weder umbenannt, noch kann diese gelöscht werden.
      Per Telegram bekomme ich auch nur den Pfad zur Datei (/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav)

      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
      

      Ich vermute, dass sich der eine oder andere Befehl geändert hat.
      Ein Blockly wäre mir eigentlich am liebsten. Leider fehlt mir der Ansatz dazu.

      Vielen Dank

      L Offline
      L Offline
      Lucky_ESA
      Developer Most Active
      schrieb am zuletzt editiert von
      #370

      @falke69 Schau bitte mal hier
      Reicht dir das? Wenn nein, dann zeig mal dein Blockly oder Javascript.

      Gruß//Lucky

      1 Antwort Letzte Antwort
      0
      • L Lucky_ESA

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

        anhang.txt


        anhang2.png
        anhang_1.png

        seqno ist bei einigen richtig wobei ich hier die uid nehmen musste.

        anhang_2.png

        Gruß//Lucky

        falke69F Offline
        falke69F Offline
        falke69
        schrieb am zuletzt editiert von falke69
        #371

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

        anhang.txt


        anhang2.png
        anhang_1.png

        seqno ist bei einigen richtig wobei ich hier die uid nehmen musste.

        anhang_2.png

        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.

        L 1 Antwort Letzte Antwort
        0
        • falke69F falke69

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

          anhang.txt


          anhang2.png
          anhang_1.png

          seqno ist bei einigen richtig wobei ich hier die uid nehmen musste.

          anhang_2.png

          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.

          L Offline
          L Offline
          Lucky_ESA
          Developer Most Active
          schrieb am zuletzt editiert von Lucky_ESA
          #372

          @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.xml

          Unter Aktion gibt es noch ein Blockly womit du die Datei einlesen kannst und dann per Telegram versenden.

          Screenshot 2025-01-11 115818.png
          Der Blockly Data hat dann das Attachment.

          Gruß//Lucky

          falke69F 1 Antwort Letzte Antwort
          0
          • L Lucky_ESA

            @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.xml

            Unter Aktion gibt es noch ein Blockly womit du die Datei einlesen kannst und dann per Telegram versenden.

            Screenshot 2025-01-11 115818.png
            Der Blockly Data hat dann das Attachment.

            Gruß//Lucky

            falke69F Offline
            falke69F Offline
            falke69
            schrieb am zuletzt editiert von
            #373

            @lucky_esa

            Perfekt!
            Funktioniert wunderbar.
            Jetzt bekomme ich wieder meine Nachrichten von der Fritzbox per Telegram.

            Ich wünsche Dir noch ein schönes Wochenende. 🙂

            David G.D 1 Antwort Letzte Antwort
            0
            • D3ltoroxpD Offline
              D3ltoroxpD Offline
              D3ltoroxp
              schrieb am zuletzt editiert von
              #374

              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.
              

              cc0504fb-29dd-445e-aabc-628b9c4fc80b-image.png

              1ce89c64-9eb7-4dea-8a1e-93b7da0dbb5f-image.png

              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.

              L 1 Antwort Letzte Antwort
              0
              • D3ltoroxpD D3ltoroxp

                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.
                

                cc0504fb-29dd-445e-aabc-628b9c4fc80b-image.png

                1ce89c64-9eb7-4dea-8a1e-93b7da0dbb5f-image.png

                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.

                L Offline
                L Offline
                Lucky_ESA
                Developer Most Active
                schrieb am zuletzt editiert von
                #375

                @d3ltoroxp

                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.

                Screenshot 2025-01-24 174013.png

                D3ltoroxpD 1 Antwort Letzte Antwort
                0
                • L Lucky_ESA

                  @d3ltoroxp

                  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.

                  Screenshot 2025-01-24 174013.png

                  D3ltoroxpD Offline
                  D3ltoroxpD Offline
                  D3ltoroxp
                  schrieb am zuletzt editiert von D3ltoroxp
                  #376

                  @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 ?

                  L 2 Antworten Letzte Antwort
                  0
                  • D3ltoroxpD D3ltoroxp

                    @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 ?

                    L Offline
                    L Offline
                    Lucky_ESA
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #377

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

                    Gibt es auch in deutsch

                    Gruß//Lucky

                    I 1 Antwort Letzte Antwort
                    0
                    • L Lucky_ESA

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

                      Gibt es auch in deutsch

                      Gruß//Lucky

                      I Offline
                      I Offline
                      io2345
                      schrieb am zuletzt editiert von io2345
                      #378

                      @lucky_esa said in Test Adapter ioBroker.imap latest/stable:

                      @d3ltoroxp sagte in Test Adapter ioBroker.imap latest/stable:

                      ...Gibt es auch in deutsch

                      Gruß//Lucky

                      Hier ist der Artikel in Deutsch: link text

                      1 Antwort Letzte Antwort
                      0
                      • David G.D Online
                        David G.D Online
                        David G.
                        schrieb am zuletzt editiert von David G.
                        #379

                        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

                        Zeigt eure Lovelace-Visualisierung klick
                        (Auch ideal um sich Anregungen zu holen)

                        Meine Tabellen für eure Visualisierung klick

                        L 1 Antwort Letzte Antwort
                        0
                        • David G.D David G.

                          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

                          L Offline
                          L Offline
                          Lucky_ESA
                          Developer Most Active
                          schrieb am zuletzt editiert von Lucky_ESA
                          #380

                          @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/129

                          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.

                          Edit: Sind 8 Posts

                          Gruß//Lucky

                          1 Antwort Letzte Antwort
                          0
                          • falke69F falke69

                            @lucky_esa

                            Perfekt!
                            Funktioniert wunderbar.
                            Jetzt bekomme ich wieder meine Nachrichten von der Fritzbox per Telegram.

                            Ich wünsche Dir noch ein schönes Wochenende. 🙂

                            David G.D Online
                            David G.D Online
                            David G.
                            schrieb am zuletzt editiert von David G.
                            #381

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

                            @lucky_esa

                            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?

                            Zeigt eure Lovelace-Visualisierung klick
                            (Auch ideal um sich Anregungen zu holen)

                            Meine Tabellen für eure Visualisierung klick

                            falke69F 1 Antwort Letzte Antwort
                            0
                            • David G.D David G.

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

                              @lucky_esa

                              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?

                              falke69F Offline
                              falke69F Offline
                              falke69
                              schrieb am zuletzt editiert von
                              #382

                              @david-g

                              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>
                              

                              2025-02-11_174311.jpg

                              1 Antwort Letzte Antwort
                              0
                              • David G.D Online
                                David G.D Online
                                David G.
                                schrieb am zuletzt editiert von
                                #383

                                @falke69

                                Vielen Dank.
                                Da sehe ich mal wie es umgesetzt ist.

                                Ka ob es jetzt offtopic ist, ist jedoch ja im Zusammenhang mit dem Adapter.

                                Ich müsste die Datei auf die Festplatte schreiben.
                                Ich drucke das PDF über einen exec Baustein wo ich den absoluten Pfad angeben muss.

                                Zeigt eure Lovelace-Visualisierung klick
                                (Auch ideal um sich Anregungen zu holen)

                                Meine Tabellen für eure Visualisierung klick

                                falke69F L 2 Antworten Letzte Antwort
                                0
                                • David G.D David G.

                                  @falke69

                                  Vielen Dank.
                                  Da sehe ich mal wie es umgesetzt ist.

                                  Ka ob es jetzt offtopic ist, ist jedoch ja im Zusammenhang mit dem Adapter.

                                  Ich müsste die Datei auf die Festplatte schreiben.
                                  Ich drucke das PDF über einen exec Baustein wo ich den absoluten Pfad angeben muss.

                                  falke69F Offline
                                  falke69F Offline
                                  falke69
                                  schrieb am zuletzt editiert von
                                  #384

                                  @david-g

                                  bei dem Drucken kann ich Dir leider nicht helfen.
                                  Du kannst Dir aber auch das Script von @lucky_esa anschauen.
                                  Ich brauchte halt nur einen Denkanstoß die Datei zu speichern und der Datei einen eindeutigen Namen zu vergeben.

                                  1 Antwort Letzte Antwort
                                  0
                                  • David G.D Online
                                    David G.D Online
                                    David G.
                                    schrieb am zuletzt editiert von
                                    #385

                                    @falke69

                                    Ich glaube ich mache da einen extra Thread auf.
                                    Ist hier zu offtopic.
                                    Verlinke aber die Lösung.

                                    Zeigt eure Lovelace-Visualisierung klick
                                    (Auch ideal um sich Anregungen zu holen)

                                    Meine Tabellen für eure Visualisierung klick

                                    1 Antwort Letzte Antwort
                                    0
                                    • David G.D David G.

                                      @falke69

                                      Vielen Dank.
                                      Da sehe ich mal wie es umgesetzt ist.

                                      Ka ob es jetzt offtopic ist, ist jedoch ja im Zusammenhang mit dem Adapter.

                                      Ich müsste die Datei auf die Festplatte schreiben.
                                      Ich drucke das PDF über einen exec Baustein wo ich den absoluten Pfad angeben muss.

                                      L Offline
                                      L Offline
                                      Lucky_ESA
                                      Developer Most Active
                                      schrieb am zuletzt editiert von
                                      #386

                                      @david-g sagte in Test Adapter ioBroker.imap latest/stable:

                                      @falke69

                                      Vielen Dank.
                                      Da sehe ich mal wie es umgesetzt ist.

                                      Ka ob es jetzt offtopic ist, ist jedoch ja im Zusammenhang mit dem Adapter.

                                      Ich müsste die Datei auf die Festplatte schreiben.
                                      Ich drucke das PDF über einen exec Baustein wo ich den absoluten Pfad angeben muss.

                                      Den kannst du dir doch suchen. Wenn du die Blocklys hier nutzt dann siehst du die Dateien unter "Benutzerdaten" und dort ist auch der Pfad.

                                      Screenshot 2025-02-11 185249.png

                                      David G.D 1 Antwort Letzte Antwort
                                      1
                                      • L Lucky_ESA

                                        @david-g sagte in Test Adapter ioBroker.imap latest/stable:

                                        @falke69

                                        Vielen Dank.
                                        Da sehe ich mal wie es umgesetzt ist.

                                        Ka ob es jetzt offtopic ist, ist jedoch ja im Zusammenhang mit dem Adapter.

                                        Ich müsste die Datei auf die Festplatte schreiben.
                                        Ich drucke das PDF über einen exec Baustein wo ich den absoluten Pfad angeben muss.

                                        Den kannst du dir doch suchen. Wenn du die Blocklys hier nutzt dann siehst du die Dateien unter "Benutzerdaten" und dort ist auch der Pfad.

                                        Screenshot 2025-02-11 185249.png

                                        David G.D Online
                                        David G.D Online
                                        David G.
                                        schrieb am zuletzt editiert von David G.
                                        #387

                                        @lucky_esa

                                        Tatsache.
                                        Ich dachte die Dateien wären von außen nicht zu erreichen.....

                                        Liegt unter

                                        https://192.168.99.33:8081/files/0_userdata.0/test.pdf
                                        
                                        /opt/iobroker/iobroker-data/files/0_userdata.0/test.pdf
                                        

                                        Zeigt eure Lovelace-Visualisierung klick
                                        (Auch ideal um sich Anregungen zu holen)

                                        Meine Tabellen für eure Visualisierung klick

                                        1 Antwort Letzte Antwort
                                        0
                                        • R Offline
                                          R Offline
                                          RandyAndy
                                          schrieb am zuletzt editiert von RandyAndy
                                          #388

                                          Hi there,

                                          ich habe da mal eine etwas spezielle Frage.
                                          Ich möchte automatisiert Antworten rausschicken AI generiert. Die Anworten zu generieren dauert schnell mal 30 - 60 Sek. In dieser Zeit können aber wieder e-Mails reinkommen und damit ändert sich dann die Reihenfolge in den Objekten. Wenn ich nun ein seen oder answered flag schreibe würde ich in das falsche Objekt schreiben. Ich würde nun gerne den Adapter anweisen während dieser Zeit keine Mails abzuholen (also auf hold zu setzen) und sobald der AI task abgearbeitet ist soll er dann wieder mails abholen.
                                          Klar kann ich das über die UID abfangen aber dennoch besser wäre es einfach während dieser Zeit keine Änderung zu haben. Macht alles einfacher. Ich kann natürlich den gesamten Adapter anhalten, aber das macht eigentlich auch keinen Sinn, besser wäre so eine on hold Lösung. Ist so etwas möglich ?

                                          Andreas

                                          L 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          739

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe