Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter ioBroker.imap latest/stable

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Test Adapter ioBroker.imap latest/stable

    This topic has been deleted. Only users with topic management privileges can see it.
    • Michael d
      Michael d last edited by

      Vielen Dank für den Adapter. Ich habe noch eine Frage:
      Wenn neue Emails kommen, wird die aktuellste ja bei Objekte unter imap.0.adresse_gmail_com.email.email_01 angezeigt. Ist es möglich mit einem Blockly bei einem bestimmten Betreff, egal welcher Absender gleich die Flag "Seen" zu setzen und wie würde das funktionieren?
      Ich habe jetzt mehrmals alles hoch unter runter gelesen und getestet, komme aber nicht auf eine Lösung.

      Vielen Dank!

      Grüße Micha

      L 1 Reply Last reply Reply Quote 0
      • L
        Lucky_ESA Developer Most Active @Michael d last edited by Lucky_ESA

        @michael-d Hast du mehrere Adressen in der Überwachung oder nur eine?

        Edit: Hier mal ein Beispiel. Es gibt viele Möglichkeiten.
        common.Skript_102.xml

        Michael d 1 Reply Last reply Reply Quote 1
        • Michael d
          Michael d @Lucky_ESA last edited by Michael d

          @lucky_esa ich habe nur eine Adresse konfiguriert. Ich möchte auch nur die neueste Email mit einer Flag bearbeiten, sprich immer die neueste, wenn sie einem bestimmten Betreff hat.

          Ich schaue es mir nachher mal an. Danke schon mal.

          Edit: In deinen Beispiel: Wo kann ich angeben, welchen Betreff die E-Mail haben muss, dass er die Flag setzt und wo muss ich die Flag angeben? Sorry für die Fragen, aber ich kapier es gerade nicht.

          Ecit: Also die Flag "seen" wird ja bereits in deinem Beispiel in der JavaScript Funktion gesetzt. Was ich noch nicht herausgefunden habe, ist der Betreff. Wo kann ich diesen eingeben, falls der übereinstimmt, dass nur dann die Flag gesetzt wird? Wenn ich das bei der Wenn-Dann Funktion auf Subject stelle, raucht mir der IMAP Adapter ab

          L 1 Reply Last reply Reply Quote 0
          • L
            Lucky_ESA Developer Most Active @Michael d last edited by

            @michael-d Die Buchstaben abc durch den Suchbegriff ersetzen und meine eMail duch deine ersetzen.

            common.Skript_102-1.xml

            Michael d 1 Reply Last reply Reply Quote 1
            • Michael d
              Michael d @Lucky_ESA last edited by

              @lucky_esa Vielen Dank, es funktioniert! Genau wie ich es brauche!

              1 Reply Last reply Reply Quote 0
              • M
                MeinhardRisch last edited by

                Hallo,

                bin mir nicht ganz sicher, ob ich hier richtig bin...

                Aber ich habe das kleine Problem, dass der Adapter bei Abrufen einer Email folgenden Fehler auslöst:

                Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                unhandled promise rejection: Cannot read properties of undefined (reading 'seqno')
                TypeError: Cannot read properties of undefined (reading 'seqno') at Imap.updatejson (/opt/iobroker/node_modules/iobroker.imap/main.js:638:49) at EventEmitter.<anonymous> (/opt/iobroker/node_modules/iobroker.imap/lib/imap_event.js:600:30) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
                Cannot read properties of undefined (reading 'seqno')

                Danach wird er neu gestartet und wartet auf den Eingang einer neuen Mail

                M 1 Reply Last reply Reply Quote 0
                • M
                  MeinhardRisch @MeinhardRisch last edited by

                  @meinhardrisch
                  Sorry, nehme alles zurück... es fehlte wohl das Symbol ... 🙂

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    Lucky_ESA Developer Most Active @MeinhardRisch last edited by

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

                    @meinhardrisch
                    Sorry, nehme alles zurück... es fehlte wohl das Symbol ... 🙂

                    Dann ist ja alles gut. Du bist hier auch richtig. Auch wenn du was vergessen hast, darf der Adapter nicht crashen sondern sollte mit Fehleingaben umgehen können.
                    Was genau hast du gemacht?

                    Gruß//Lucky

                    1 Reply Last reply Reply Quote 0
                    • David G.
                      David G. @Lucky_ESA last edited by

                      @lucky_esa

                      Klasse Adapter, hab ihn seit dem Testrelease stabil am laufen.
                      Jedoch nur sehr begrenzt, Betreff oder Nachricht triggert nur bestimmte Aktionen.

                      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.

                      L 2 Replies Last reply Reply Quote 0
                      • L
                        Lucky_ESA Developer Most Active @David G. last edited by

                        @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. 1 Reply Last reply Reply Quote 0
                        • L
                          Lucky_ESA Developer Most Active @David G. last edited by

                          @david-g Muss meine Aussage zurückziehen. Man könnte per Adapter einen neuen Ordner erstellen, dann dort die gewünschten Mails hineinschieben und dann den Ordner löschen.

                          Wäre das OK?

                          Gruß//Lucky

                          David G. 1 Reply Last reply Reply Quote 0
                          • David G.
                            David G. @Lucky_ESA last edited by

                            @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 1 Reply Last reply Reply Quote 0
                            • L
                              Lucky_ESA Developer Most Active @David G. last edited by

                              @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. 1 Reply Last reply Reply Quote 1
                              • David G.
                                David G. @Lucky_ESA last edited by

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

                                1 Reply Last reply Reply Quote 0
                                • David G.
                                  David G. @Lucky_ESA last edited by

                                  @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 1 Reply Last reply Reply Quote 0
                                  • L
                                    Lucky_ESA Developer Most Active @David G. last edited by

                                    @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. 1 Reply Last reply Reply Quote 0
                                    • David G.
                                      David G. @Lucky_ESA last edited by

                                      @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 1 Reply Last reply Reply Quote 0
                                      • L
                                        Lucky_ESA Developer Most Active @David G. last edited by

                                        @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 Reply Last reply Reply Quote 0
                                        • falke69
                                          falke69 @Lucky_ESA last edited by

                                          @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 Reply Last reply Reply Quote 0
                                          • L
                                            Lucky_ESA Developer Most Active @falke69 last edited by

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

                                            Gruß//Lucky

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            926
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            26
                                            406
                                            55760
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo