NEWS
Test Adapter ioBroker.imap latest/stable
-
@d3ltoroxp Wenn es wichtig sein sollte, fällt mir nur noch eine Weiterleitung ein. D.h. alle E-Mails vom Schul-Account werden an einen extra Kind-Account (google) weitergeleitet.
@mcu Manchmal kanns so einfach sein. Das werde ich so machen, ich werde mir das einfach weiterleiten lassen von Thunderbird auf eine andere Mail. Dann bekomm ich zumindest die Info das was geschrieben wurde.
Wenn des mit dem Account so ein Geschiss ist. Danke für den Tipp. Vor lauter krampfhaft versuchen den Account mit dem Adapter zu verbinden, gar keine Sicht auf das einfache gehabt. -
Hallo zusammen,
ich versuche gerade die Mails meiner Kids ab zu fragen. Das sind quasi outlook.office365.com Mails von der Schule / MS Teams. Hier werden ja immer wieder Infos geschrieben. Da MS aber zu blöd ist mehrere Accounts gleichzeitig zu verwalten würde ich gerne informiert werden ohne ständig die Accounts zu wechseln.
Ich kann mich aber mit den Einstellungen vom Thunderbird nicht einloggen.
Geht das mit den Accounts nicht oder mit office365 ?
Fehler bei Host xxx - Error: LOGIN failed. at Connection._resTagged (/opt/iobroker/node_modules/node-imap/lib/Connection.js:1272:13) at Parser.<anonymous> (/opt/iobroker/node_modules/node-imap/lib/Connection.js:190:12) at Parser.emit (node:events:513:28) at Parser._resTagged (/opt/iobroker/node_modules/node-imap/lib/Parser.js:169:12) at Parser._parse (/opt/iobroker/node_modules/node-imap/lib/Parser.js:135:18) at Parser._tryread (/opt/iobroker/node_modules/node-imap/lib/Parser.js:77:17) at TLSSocket.Parser._cbReadable (/opt/iobroker/node_modules/node-imap/lib/Parser.js:55:14) at TLSSocket.emit (node:events:513:28) at emitReadable_ (node:internal/streams/readable:578:12) at processTicksAndRejections (node:internal/process/task_queues:82:21) { type: 'no', textCode: undefined, source: 'authentication' }.Oder wie muss man diese Account im Adapter anlegen ?
@d3ltoroxp ----Emails von Kindern abzurufen...mhhhhh......solange es um schulbelange geht ok......
Aber du weisst schon du braust eine Berechtigung dafürOhne dir dafür auf die Füsse zu treten........sorry
-
Habe nun auf`m GIT die aktuelle Version geladen.
Was ist nun neu?
Odner html: Hier gibt es neue Datenpunkte die mit text.xx anfangen. Hier könnt ihr den Header Text vorgeben und in den Select Boxen den Text
imap.0.xx.sort: Bei true werden die Daten sortiert abgerufen und somit ist garantiert, dass die Sortierung simmt. Und nein, bei gmail wird es fals sein.
Performance verbessert: Bei Eingang neuer Mails oder Änderung der Zustände von Mails wird nur diese neu geladen. Bei neue Mails wird bei sort==false leider weiterhin alle neu geladen. Hier habe ich einen Workaround geschrieben der dieses hoffentlich verhindert. Das müsst ihr bitte testen.Ich werde noch einen neuen Button hinzufügen für die Übernahme der Änderungen in html ohne die Mails neu zu laden.
Gruß//Lucky
-
Aktuelle Test Version 0.3.0 Veröffentlichungsdatum 26.02.2023 Github Link https://github.com/Lucky-ESA/ioBroker.imap Status Nun als Stable 0.1.2 verfügbar Hallo zusammen,
habe mal einen IMAP Adapter gschrieben. Es können beliebig viele IMAP Verbindungen anlegen und überwacht werden.
Updates oder neue Mails werden automatisch erkannt und die Infos in den Datenpunkten geschrieben.Hier nun die Beschreibung:
Einstellung Instanz- Aktiv: IMAP Verbindung aktivieren
- Host: Bsp:. imap.gmail.com
- Posteingang: Standard INBOX
- Port: Standard ist 993
- Benutzername: Dein Loginname
- Passwort: Dein Passwort
- max.: Maximale Anzahl an Mails die als Datenpunkte angelegt werden (max. 99)
- max. HTML: Maximale Anzahl an Mails die als HTML ausgegeben werden (max. 99)
- TLS: TLS Verschlüsselung. Sollte immer true haben
- Flaggen: Hier sind die Flags
- Symbol auswählen: Hier erst über "Symbole Erstellen" ein ICON hochladen. Wird als Folder ICON verwendet
- Token: Bsp.: Für Outlook. Ob das funktioniert kann ich nicht sagen
- tls-Option: Bsp.: {"rejectUnauthorized": false} oder leer lassen {}
- Auto-TLS: Hier lesen
Datenpunkte
- imap.0.xx.email: Hier werden die Mails angelegt wie in der Instanz eigestellt wurde. Habt ihr nur 7 Mails und
max. 10 eingetragen, bleiben die letzten 3 leer. Habt ihr 10 Mails und löscht 3, werden die letzten 3 Mails nicht geleert. - imap.0.xx.remote.html: Hier könnt ihr euren CSS-Style anpassen
- imap.0.xx.remote.criteria: Neue Suchkreterium. Bleibt auch bei einem Neustart aktiv (auch als Blockly möglich)
- imap.0.xx.remote.reload_emails: Änderungen in HTML werden erst bei einer Aktualisierung übernommen. Hiermit kannst du den Code sofort übernehmen.
- imap.0.xx.remote.search_start: show_mails und criteria anwenden
- imap.0.xx.remote.show_mails: Die Anzahl in der Instanz Konfig ändern (auch als Blockly möglich)
- imap.0.xx.html: HTML Code für VIS
- imap.0.xx.last_activity: Letzte Aktivität (Aktualisierung/Neue Post)
- imap.0.xx.last_activity_json: Bsp.: {"flags": ["\Seen"]} für als gelesen markiert
oder {"flags": []} für neue Post. - imap.0.xx.last_activity_timestamp: Letzte Aktivität als Timestamp
- imap.0.xx.online: Mit IMAP verbunden = true
- imap.0.xx.quality: Qualität der Datenpunkte (automatische Prüfung alle 24h)
- imap.0.xx.total: Anzahl aller Mails in deiner Inbox.
- imap.0.xx.remote.change_folder: Hier könnt ihr eure Folder auswählen. Es werden dann alle Daten mit dem Inhalt dieses Folder gefühlt (Mail01, json_table etc). Allerdings wird dann auch nur diese Auswahl überwacht.
- imap.0.xx.active_inbox: Zeigt euch welcher Folder aktiv ist und überwacht wird
- imap.0.xx.total_unread: Anzahl ungelesene Mails im aktiven Folder
- imap.0.xx.total: Anzahl aller Mails im aktiven Folder
Blocklys
Der kleine Blockly steuert die o. g. Datenpunkte um die Suche zu ändern.
Mit dem großen können eigene Anfragen erstellt werden und ihr erhaltet einen Array mit JSON Elemente. ACHTUNG! Es kommen echt viele Daten daher nicht immer mit "debug output" arbeiten. Was möglich ist könnt ihr hier nachlesen.
Habe diesen Adapter für mich und meine Berdürfnisse geschrieben. Nun könnt ihr gerne Wünsche aussern die ich hinzufügen soll.outlook.office365.com 2Fach-Authentifizierung
Bekannte Issues
- Habe noch keine Idee die Mail Total zu aktualisieren - done
- Es wird auch ein Update durchgeführt, wenn Mails ausserhalb der max. liegen. Ihr habt max. 20 eingetragen und die Mail 22 wird als gelesen markiert, dann wird trotzdem ein Update gefahren. - done
Bitte den RAM Verbrauch kontrollieren. Bei 4 IMAP`s komme ich schon auf 120MB.
Viel Spaß beim testen und ich hoffe auch gute Ideen die man auch umsetzen kann

Gruß//Lucky
Hallo, kannst du noch einen DP für den Host einbauen?
-
Habe nun auf`m GIT die aktuelle Version geladen.
Was ist nun neu?
Odner html: Hier gibt es neue Datenpunkte die mit text.xx anfangen. Hier könnt ihr den Header Text vorgeben und in den Select Boxen den Text
imap.0.xx.sort: Bei true werden die Daten sortiert abgerufen und somit ist garantiert, dass die Sortierung simmt. Und nein, bei gmail wird es fals sein.
Performance verbessert: Bei Eingang neuer Mails oder Änderung der Zustände von Mails wird nur diese neu geladen. Bei neue Mails wird bei sort==false leider weiterhin alle neu geladen. Hier habe ich einen Workaround geschrieben der dieses hoffentlich verhindert. Das müsst ihr bitte testen.Ich werde noch einen neuen Button hinzufügen für die Übernahme der Änderungen in html ohne die Mails neu zu laden.
Gruß//Lucky
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Habe nun auf`m GIT die aktuelle Version geladen.
Keine Reaktion der Buttons.

-
gerade getestet und folgendes festgestellt:
in der 0.0.4 wird mir kein JSON aktualisiert wenn ich eine Mail aus meinem Postfach lösche - nur nach Neustart vom Adapter oder manuellem Setzen vom ReloadDP.LOG zeigt es korrekt an:
imap.0 2023-03-16 14:33:38.746 info EMail gelöscht hahnenaecker - 3794aber wie gesagt aktualisiert sich kein JSON.
-
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
imap.0 2023-03-16 14:33:38.746 info EMail gelöscht hahnenaecker - 3794
Der JSON und HTML wird derzeit nur bei neuen Mails oder ein Update aktualisiert. Bei löschen oder verschieben von Nachrichten bin ich gerade dran. Eigentlich sollte es funktionieren aber kann es gerade nicht mit Gewissheit sagen.
Gruß//Lucky
-
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
imap.0 2023-03-16 14:33:38.746 info EMail gelöscht hahnenaecker - 3794
Der JSON und HTML wird derzeit nur bei neuen Mails oder ein Update aktualisiert. Bei löschen oder verschieben von Nachrichten bin ich gerade dran. Eigentlich sollte es funktionieren aber kann es gerade nicht mit Gewissheit sagen.
Gruß//Lucky
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Bei löschen oder verschieben von Nachrichten bin ich gerade dran
super, habe eben noch bemerkt dass eine ungelesene Mail welche gelöscht wird auch nicht "registriert" wird sondern erst nachdem ich im Papierkorb vom Postfach die gelöschte Mail öffne.
-
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Bei löschen oder verschieben von Nachrichten bin ich gerade dran
super, habe eben noch bemerkt dass eine ungelesene Mail welche gelöscht wird auch nicht "registriert" wird sondern erst nachdem ich im Papierkorb vom Postfach die gelöschte Mail öffne.
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Bei löschen oder verschieben von Nachrichten bin ich gerade dran
super, habe eben noch bemerkt dass eine ungelesene Mail welche gelöscht wird auch nicht "registriert" wird sondern erst nachdem ich im Papierkorb vom Postfach die gelöschte Mail öffne.
Ist das gleiche Verhalten wie von mir oben beschrieben. Habe ich noch nicht implementiert. Überlege die ganze Zeit wie ich die recents Mails bekomme die die SORT funktion nicht untersützen...Habe da momentan echt keine Idee....
-
@d3ltoroxp ----Emails von Kindern abzurufen...mhhhhh......solange es um schulbelange geht ok......
Aber du weisst schon du braust eine Berechtigung dafürOhne dir dafür auf die Füsse zu treten........sorry
@matze55 said in Test Adapter ioBroker.imap v0.0.1 GitHub:
@d3ltoroxp ----Emails von Kindern abzurufen...mhhhhh......solange es um schulbelange geht ok......
Aber du weisst schon du braust eine Berechtigung dafürOhne dir dafür auf die Füsse zu treten........sorry
Die sind 1 und 3 Klasse, wer soll denn bitte das ganze einrichten und Teams bedienen ? Die Kinder selber ? Hier geht es ja auch nur um die Infos, was die Lehrer posten, Stundenausfall, Stundenplanänderung, Ausflüge usw. Das bekomme ich ja so oder so mit und ist ja auch für mich als Vater gedacht.
Und das ich eben die Infos gebündelt bekomme, diese Idee. MS Teams bekommt es ja nicht hin, mehrere Accounts gleichzeitig in Teams zu zu lassen. Ständig müsste ich ab und anmelden um an die Infos zu kommen.
-
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Bei löschen oder verschieben von Nachrichten bin ich gerade dran
super, habe eben noch bemerkt dass eine ungelesene Mail welche gelöscht wird auch nicht "registriert" wird sondern erst nachdem ich im Papierkorb vom Postfach die gelöschte Mail öffne.
Ist das gleiche Verhalten wie von mir oben beschrieben. Habe ich noch nicht implementiert. Überlege die ganze Zeit wie ich die recents Mails bekomme die die SORT funktion nicht untersützen...Habe da momentan echt keine Idee....
@lucky_esa ist es geplant eine JSON für alle Postfächer, also zusammengefasst, zu integrieren ?
-
@lucky_esa mit dem letzten Stand (gerade vor ein paar Minuten von GIT geholt), bleibt der DP für JSON und HTML leer - egal was ich mache. Der DP "reload_emails" wird scheinbar ignoriert. Kann ich auf "true" setzen aber es passiert nichts (rein gar nichts).
Ro75.
-
@lucky_esa mit dem letzten Stand (gerade vor ein paar Minuten von GIT geholt), bleibt der DP für JSON und HTML leer - egal was ich mache. Der DP "reload_emails" wird scheinbar ignoriert. Kann ich auf "true" setzen aber es passiert nichts (rein gar nichts).
Ro75.
@ro75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
mit dem letzten Stand (gerade vor ein paar Minuten von GIT geholt), bleibt der DP für JSON und HTML leer - egal was ich mache. Der DP "reload_emails"Was sagt das LOG? Eventuell mal auf debug stellen
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa ist es geplant eine JSON für alle Postfächer, also zusammengefasst, zu integrieren ?
Dafür gibt es den DP imap.0.xx.remote.change_folder. Man könnte alle durchgehen und per Blockly einen array erstellen. Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.
@d3ltoroxp sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Habe auch eine Tochter und den Account eingetragen. Leider bekam ich diese Meldung:2023-03-15 13:43:14.828 - debug: imap.0 (3276328) => 'A0 CAPABILITY' 2023-03-15 13:43:14.839 - debug: imap.0 (3276328) <= '* CAPABILITY IMAP4 IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+'Folglich ist nur XOAUTH2 erlaubt. Dafür hatte ich die Einstellung Token vorbereitet. Hatte dann versucht über azure.com mir die ClientID anzulegen...Was soll ich sagen...Keine Adminrechte...Werde den Token rauswerfen.
Auf mein privates Konto kann ich normal drauf zugreifen. Kann man da nicht die Boxen der Kidis integrieren?Gruß//Lucky
-
@ro75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
mit dem letzten Stand (gerade vor ein paar Minuten von GIT geholt), bleibt der DP für JSON und HTML leer - egal was ich mache. Der DP "reload_emails"Was sagt das LOG? Eventuell mal auf debug stellen
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa ist es geplant eine JSON für alle Postfächer, also zusammengefasst, zu integrieren ?
Dafür gibt es den DP imap.0.xx.remote.change_folder. Man könnte alle durchgehen und per Blockly einen array erstellen. Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.
@d3ltoroxp sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Habe auch eine Tochter und den Account eingetragen. Leider bekam ich diese Meldung:2023-03-15 13:43:14.828 - debug: imap.0 (3276328) => 'A0 CAPABILITY' 2023-03-15 13:43:14.839 - debug: imap.0 (3276328) <= '* CAPABILITY IMAP4 IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+'Folglich ist nur XOAUTH2 erlaubt. Dafür hatte ich die Einstellung Token vorbereitet. Hatte dann versucht über azure.com mir die ClientID anzulegen...Was soll ich sagen...Keine Adminrechte...Werde den Token rauswerfen.
Auf mein privates Konto kann ich normal drauf zugreifen. Kann man da nicht die Boxen der Kidis integrieren?Gruß//Lucky
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.

-
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.

@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.

Wie müsste der JSON aussehen?
{"INBOX":{daten}, "INBOX.trash":{daten}} -
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Ich könnte auch ein neuen Datenpunkt als Button anlegen und dann diesen für alle Boxen generieren.

Wie müsste der JSON aussehen?
{"INBOX":{daten}, "INBOX.trash":{daten}}@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Wie müsste der JSON aussehen?
eigentlich wie die postfachspezifischen JSONs.
Ich meinte nicht die einzelnen Ordner wie "Inbox" o.Ä.
Wenn in irgendeinem Postfach eine Mail eingeht dann sollte die JSON genau damit befüllt werden.
Global quasi. Dadurch kann man sich in VIS z.B. sparen für jedes Postfach eine eigene Tabelle zu erstellen. -
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Wie müsste der JSON aussehen?
eigentlich wie die postfachspezifischen JSONs.
Ich meinte nicht die einzelnen Ordner wie "Inbox" o.Ä.
Wenn in irgendeinem Postfach eine Mail eingeht dann sollte die JSON genau damit befüllt werden.
Global quasi. Dadurch kann man sich in VIS z.B. sparen für jedes Postfach eine eigene Tabelle zu erstellen.@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Wie müsste der JSON aussehen?
eigentlich wie die postfachspezifischen JSONs.
Ich meinte nicht die einzelnen Ordner wie "Inbox" o.Ä.
Wenn in irgendeinem Postfach eine Mail eingeht dann sollte die JSON genau damit befüllt werden.
Global quasi. Dadurch kann man sich in VIS z.B. sparen für jedes Postfach eine eigene Tabelle zu erstellen.Aber genau dafür gibt es doch den Datenpunkt imap.0.xx.remote.change_folder. Dieser beinhaltet alle Folder die ausgewählt werden können. Wenn du in VIS einen auswählst, dann wird in imap.0.xx.json dieser Inhalt eingefügt.
@sigi234 Hat bereits eine Select Box (weiter oben) zur Verfügung gestellt. -
@djmarc75 sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
Wie müsste der JSON aussehen?
eigentlich wie die postfachspezifischen JSONs.
Ich meinte nicht die einzelnen Ordner wie "Inbox" o.Ä.
Wenn in irgendeinem Postfach eine Mail eingeht dann sollte die JSON genau damit befüllt werden.
Global quasi. Dadurch kann man sich in VIS z.B. sparen für jedes Postfach eine eigene Tabelle zu erstellen.Aber genau dafür gibt es doch den Datenpunkt imap.0.xx.remote.change_folder. Dieser beinhaltet alle Folder die ausgewählt werden können. Wenn du in VIS einen auswählst, dann wird in imap.0.xx.json dieser Inhalt eingefügt.
@sigi234 Hat bereits eine Select Box (weiter oben) zur Verfügung gestellt. -
Versehentlich zitieren angeklickt...
Jetzt verstehe ich was du meinst
Folglich so ein Datenpunkt:
imap.0.jsonRichtig?
@lucky_esa sagte in Test Adapter ioBroker.imap v0.0.1 GitHub:
imap.0.json
Richtig?Jawoll, genau so meinte ich das

Schraub mir das im Moment per Blocklyskript zusammen aber so das wahre ist das auf Dauer eher nicht