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.2k

  • 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.
  • David G.D David G.

    @lucky_esa

    Wäre zumindest ein Workarround.
    Mal schauen ob ich das im Blockly schaffe.

    Ist das evtl eine Möglichkeit die Funktion "Mail löschen" in den Adapter einzubauen die im Hintergrund so arbeitet?

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

    @david-g Du kannst gerne mal von GIT laden.

    Zum anlegen oder löschen muss ZWINGEND die inbox + delimiter voran setzen. Siehe Beispiel im Objekt imap.0.xxx.remote.change_folder

        "states": {
          "INBOX": "INBOX",
          "INBOX.Spam": "INBOX.Spam",
          "INBOX.Drafts": "INBOX.Drafts",
          "INBOX.Sent": "INBOX.Sent",
          "INBOX.Trash": "INBOX.Trash",
        }
    

    <inbox><delimiter>Spam

    Um den Ordner imap anzulegen muss ich also INBOX.imap eintragen.

    Neuen Ordner anlegen:
    .remote.mailbox_folder_create

    Dann mit move die gewünschten Mails dort einfügen und damit wieder löschen.
    .remote.mailbox_folder_delete

    Gruß//Lucky

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

      @david-g Du kannst gerne mal von GIT laden.

      Zum anlegen oder löschen muss ZWINGEND die inbox + delimiter voran setzen. Siehe Beispiel im Objekt imap.0.xxx.remote.change_folder

          "states": {
            "INBOX": "INBOX",
            "INBOX.Spam": "INBOX.Spam",
            "INBOX.Drafts": "INBOX.Drafts",
            "INBOX.Sent": "INBOX.Sent",
            "INBOX.Trash": "INBOX.Trash",
          }
      

      <inbox><delimiter>Spam

      Um den Ordner imap anzulegen muss ich also INBOX.imap eintragen.

      Neuen Ordner anlegen:
      .remote.mailbox_folder_create

      Dann mit move die gewünschten Mails dort einfügen und damit wieder löschen.
      .remote.mailbox_folder_delete

      Gruß//Lucky

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

      @lucky_esa

      Cool,
      das klappt wunderbar.
      Ich habe ein Postfach was als "trigger" für manche Scripte dient von Geräten die Mails senden können und keine http Befehle senden können.
      Jetzt kann man den Kram direkt löschen.

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

      Meine Tabellen für eure Visualisierung klick

      1 Antwort Letzte Antwort
      0
      • L Lucky_ESA

        @david-g

        Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
        Geht das? Am liebsten über blockly und die id der Mail.

        Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

        Gruß//Lucky

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

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

        Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

        Ich habe eben folgendes gelesen im Bezug auf imap:

        1. Sie löschen eine E-Mail → Die E-Mail wird in den Papierkorb verschoben.
        
        
        2. Sie leeren den Papierkorb → Die E-Mail wird als gelöscht markiert (\Deleted).
        
        
        3. Der Mail-Client führt den Expunge-Befehl aus → Die E-Mail wird endgültig vom Server entfernt.
        
        
        
        Unterschiedliche Implementierungen
        
        Einige Mail-Clients wie Gmail nutzen eine spezielle Implementierung: Hier wird das Verschieben in den Papierkorb direkt als Löschaktion betrachtet. Wird der Papierkorb geleert, ist die E-Mail sofort weg.
        
        
        Das Löschen von E-Mails im Papierkorb funktioniert, weil der Mail-Client in der Regel den Expunge-Befehl ausführt. Ohne diesen Befehl bliebe die E-Mail technisch noch vorhanden, wäre aber als gelöscht markiert und für den Benutzer unsichtbar.
        

        Kann man diesen "Expunge-Befehl" nicht irgewie ausführen?
        Evtl wäre das eine sauberer Lösung.

        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.

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

          Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

          Ich habe eben folgendes gelesen im Bezug auf imap:

          1. Sie löschen eine E-Mail → Die E-Mail wird in den Papierkorb verschoben.
          
          
          2. Sie leeren den Papierkorb → Die E-Mail wird als gelöscht markiert (\Deleted).
          
          
          3. Der Mail-Client führt den Expunge-Befehl aus → Die E-Mail wird endgültig vom Server entfernt.
          
          
          
          Unterschiedliche Implementierungen
          
          Einige Mail-Clients wie Gmail nutzen eine spezielle Implementierung: Hier wird das Verschieben in den Papierkorb direkt als Löschaktion betrachtet. Wird der Papierkorb geleert, ist die E-Mail sofort weg.
          
          
          Das Löschen von E-Mails im Papierkorb funktioniert, weil der Mail-Client in der Regel den Expunge-Befehl ausführt. Ohne diesen Befehl bliebe die E-Mail technisch noch vorhanden, wäre aber als gelöscht markiert und für den Benutzer unsichtbar.
          

          Kann man diesen "Expunge-Befehl" nicht irgewie ausführen?
          Evtl wäre das eine sauberer Lösung.

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

          @david-g Du kannst die Mails direkt in den Papierkorb verschieben
          [Google Mail]/Papierkorb

          Vorher noch den Flag Delete mit imap.0.xxx_gmail_com.remote.flag setzen

          Gruß//Lucky

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

            @david-g Du kannst die Mails direkt in den Papierkorb verschieben
            [Google Mail]/Papierkorb

            Vorher noch den Flag Delete mit imap.0.xxx_gmail_com.remote.flag setzen

            Gruß//Lucky

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

            @lucky_esa

            Der Weg wäre doch dann viel "simpler" als das mit dem Ordner anlegen und diesen wieder zu löschen oder?

            Wenn er auf diesem Weg auch die Mail löscht.

            P. S.
            Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

            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.

              @lucky_esa

              Der Weg wäre doch dann viel "simpler" als das mit dem Ordner anlegen und diesen wieder zu löschen oder?

              Wenn er auf diesem Weg auch die Mail löscht.

              P. S.
              Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

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

              @david-g

              Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

              Wenn die Mail weg ist dann funktioniert das löschen wohl so.

              Gruß//Lucky

              1 Antwort Letzte Antwort
              0
              • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          751

                                          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