Partnerfirma möchte eMails nicht per IMAP abrufen

  • Hallo zusammen:


    Folgende Situation:

    eMails, die bei uns in einer Mial-in Db eingehen, werden in Original bei einem Partneruntenehmen benötigt.

    Eine Weiterleitung dorthin kommt nicht in Frage, weil ja Header Informationen (Absender etc.) verloren gehen.

    In früheren Projekten gab es Probleme bei IMAP Zugriffen, deswegen, möchte das Partnerunterhemen diesen Weg auch nicht gehen.

    Frage: Funktioniert IMAP auf Domino mit der aktuellen R12 besser als in der Vergangenheit?


    Irgendwo soll man eine eingehende eMail auch als EML Datei weiterleiten können.

    Bei den einfachen Mailregeln konnte ich das nicht finden. Ist das eine Einstellung im Admin Client oder muss ich auf den Code zurückgreifen, den ich hier im Forum schon gesehen habe?

    Vielen Dank

    hk

  • Hallo husko,


    IMAP benötigt eine Lizenz, sehe ich daher eher als suboptimal. Echte Probleme sind mir aber nicht wirklich bekannt.

    Ich habe auf mehreren Dominos Drittanbieterlösungen oder einzelne User per POP- und/oder IMAP produktiv angebunden.

    Probleme entstehen meist dann, wenn man die Limits der Protokolle nicht beachtet (z.B. gleichzeitiger Zugriff mehrerer Instanzen auf das gleiche Postfach).


    Bei der Weiterleitung per Mailregel (Modus: vollständige Kopie) werden die meisten Header übernommen, insbesondere Absender und Empfänger. Da diese Art der Weiterleitung eine neue Kopie der Mail erzeugt werden einige technische Header aus Sicherheitsgründen neu erzeugt um z.B. Mail-Loops zu verhindern. Dazu gehören u.a. der Return-Path oder die Received Header. Wenn hier aus irgendeinem Grund wirklich das unveränderte Original gebraucht wird, kann man sich mit servergestützten Mailregeln oder eben auch eigenen Agenten behelfen, wie du es schon angesprochen hast.


    Das Erzeugen einer EML allerdings, wie es beim "Weiterleiten als Anhang" oder Drag & Drop ins Filesystem Verwendung findet, ist eine interne Funktion des Clients. Mir sind im Moment keine (API-) Funktionen bekannt mit denen man das automatisiert durch den Server oder Hintergrund-Agenten nutzen kann. Das Erzeugen von EML per eigenem Script ist natürlich unabhängig davon immer möglich, nur deutlich mehr Aufwand.


    HTH

    Carsten

  • Hallo Carsten,


    Danke für dein Feedback.

    Wie hoch wären denn die Lizenzkosten?. Das sollte in diesem Fall für eine Mail-in Db kein Problem sein, oder geht das nach Server?

    Wenn man alle 5 Minuten pollt sollten die Limits nicht überschritten werden. Ich weiß aber auch, dass der IMAP Task gelegentlich neu gestartet werden muss, oder bei einem Serverneustart nicht mit hochfährt. Zumindest war das bei alten Versionen so. Daher frage ich ja, ob diese Probleme inzwischen gefixt sind. Mit welcher Version arbeiten Deine Kunden?


    Was meinst Du mit der servergestützten Mailregel?

    Wo könnte man das konfigurieren, dass die Original email als Anhang (EML Datei) weitergeleitet wird?


    Zur Erstellung von EML Dateien habe ich diese Quelle gefunden: https://ypastov.blogspot.com/2…es-email-to-eml-file.html


    Alternativ hatte ich die Idee einen Agenten zu schreiben, der die eingehende eMail nimmt, den Empfänger ändert und einfach in die Mail.box kopiert.

    Da würden aber sicher auch ein paar Header Daten verändert werden auf dem Weg zum Empfänger. Vielleicht kann ich das verhindern, wenn ich speziell für diese Empfänger Domain einen Routing Pfad mit IP Adresse festlege, denn wir werden zu diesem Partnerunternehmen eine VPN Verbindung haben.


    Schöne Grüße nach Berlin

    husko

  • Hallo husko,


    Mail-In-DBs bzw. deren Konfigurationsdokumente haben kein Kennwort und können somit gar nicht per IMAP oder POP abgerufen werden. Der einzige Weg (bei diesen Protokollen) ist das Anlegen eines echten Nutzers statt einer Mail-In. Und jeder Nutzer, der sich authentifizieren kann, benötigt eine Lizenz. Was die kostet hängt von eurem aktuellen Lizenzmodell ab.


    Dass (IMAP-) Tasks beim Serverstart nicht mit Hochfahren, obwohl man es eingerichtet hat, kenne ich nicht. Ich verwalte 9er und 12er Serverversionen und da funktioniert alles wie konfiguriert.


    Wenn der IMAP Task gelegentlich neu gestartet werden muss (ein Programmdokument, das den Task nachts um 3 einfach neu startet tuts dann auch) liegt das oft an Speicher-Leaks durch nicht sauber beendeten Sessions, gerne auch mal durch zu häufige Abrufe oder Giganto-Mails verursacht. Da die IMAP Implementierung beim Domino kein IMAP IDLE (auch gern als IMAP Push bezeichnet) unterstützt muss vom IMAP-Client immer das gesamte Postfach ordnerweise nach neuen Mails abgesucht werden. Mehr Ordner, mehr Zeit. Bei einem großen Postfach mit vielen Ordnern kommt da einiges zusammen. Und wenn der Vorgang länger dauert als dein Intervall oder eine große Mail konvertiert und abgerufen wird startet der nächste Abruf während der erste noch gar nicht beendet ist. Notes wäre das egal, IMAP aber nicht. Ein User darf zu jeder Zeit nur eine IMAP-Session zu seiner Mailbox offen haben. Das ist kein Domino Limit sondern in den Protokollen IMAP4 und POP3 festgelegt. Um dieses sinnlose alle x Minuten "alles" abrufen zu verkürzen wurde IMAP IDLE entwickelt, hier hält der Client permanent die Netzwerk-Session nach dem ersten Abruf offen und bekommt vom Server über die permanent offen gehaltene Leitung dann ein Signal, wenn sich etwas getan hat. Aber wie gesagt, Domino unterstützt die IDLE Erweiterung nicht. Beim Notes eigenen Protokoll NRPC hingegen ist ein vergleichbarer Mechanismus schon ewig Standard, wer einen Client hat nutzt es automatisch.


    Wenn es aber beim Mail-Abruf keine Ordnerstrukturen zu beachten oder Mails zwischen Ordnern zu verschieben gibt und man wirklich einfach nur möglichst effektiv und schnell neue Mails (mit einem anderen als dem Notes Client) abrufen möchte ist POP3 die bessere Wahl. Hier wird automatisch nur die Inbox und auch da nur ungelesene Mails abgerufen. Mails die man nie braucht schiebt man per Regel während der Zustellung in irgendeinen anderen Ordner, die ignoriert POP dann.


    Was bei allen Internet-Protokollen (HTTP, IMAP, POP) übrigens noch dazu kommt: jede abgerufene Mail wird zuerst geprüft, ob sie bereits im MIME-Format vorliegt. Wenn nicht durchläuft sie am Server eine vollständige MIME-Konvertierung bevor sie an den fremden Client übertragen wird. Das braucht zusätzlich Zeit. Der Abruf per Notes-Client braucht die Konvertierung nicht, da dieser sowohl RichText als auch MIME anzeigen kann.


    Mit servergestützten Mailregeln kann man zwar keine EML-Weiterleitung als Anhang erreichen. Aber man kann auf diesem Weg entweder weitere Empfänger hinzufügen oder mit der Journaling-Funktion die originale Mail unverändert an eine weitere Adresse schicken. MIME-Mails gehen dabei sogar mit den originalen Headern raus.


    Einen Agenten zu schreiben der die bereits zugestellte, originale Mail mit anderem Empfänger in die Mailbox kopiert ist suboptimal, er vereint die Nachteile mehrerer vorher genannten Lösungen - und wir reden noch gar nicht vom Aufwand und den möglichen Problemen bei der selbst geschriebenen EML-Erzeugung. Da ich das schon zweimal durch habe weiß ich, wovon ich rede. Wenn man EMLs von Mails als Anhang erzeugt kann man die Mail übrigens auch normal verschicken, da braucht man dann keine Tricks mehr über die Mailbox ;)


    HTH

    Carsten

  • was genau meinst Du mit servergestützten Mailregeln? Selber geschriebene Agenten oder was anderes?

    Kann man mit Journaling eMails auch an eine andere (externe) Adresse senden außer MAILJRN.NSF

    Ich weiß dass es das gibt, habe es aber nie selber konfiguriert.


    Danke für die Zeit, die Du in die ausführlichen eMails investierst.

    VG

    husko

  • Servergestützte Mailregeln werden im Konfigurationsdokument hinterlegt (zu finden unter Router/SMTP => Beschränkungen und Steuerungen => Regeln).

    Sie werden vom Router ausgeführt nachdem Mails angenommen wurden aber bevor sie weiter verarbeitet oder ausgeliefert werden.


    Das Journaling wird über die o.g. serverbasierten Regeln getriggert die man dafür anlegen und mit den nötigen Bedingungen versehen muss.

    Journaling kann wahlweise storebasiert (Datenbank) oder mailbasiert (Mailadresse kann auch eine externe SMTP-Adresse sein) eingerichtet werden.

    Man muss bei den Bedingungen natürlich etwas Hirnschmalz einsetzen, damit (in deinem Fall) nicht der komplette Mailverkehr des Dominos auf diesem Weg nach draußen gepustet wird.


    HTH

    Carsten

  • sorry, sehe jetzt erst Deine Antwort.

    Das Konfigurationsdokument kannte ich schon, aber ich hatte dort noch nie Mail-Regeln eingestellt.

    Ich gehe davon aus, dass auch eine Weiterleitung an dieser Stelle, den Absender bzw. weitere Header Daten verändert hätte.

    Der Sub-Dienstleister wollte aber diese eMails unverändert.

    Daher werden wir vermutlich mit einer eMail Adresse unter einer Sub-Domäin arbeiten und die eMails gehen per MX Record direkt an den Dienstleister.

    Danke für Deine Tipps