Thomas: Mehrere POP3-Konten zu einem IMAP-Konto vereinen

Hallo Leute

In unserer Firma haben wir bezüglich der Mails eine etwas kuriose Konstellation:

Jede Mitarbeiteradresse existiert als eigenes POP3-Konto, welche bei unserem Hoster eingerichtet sind. Auf unserem Server läuft nun ein Mailclient, der alle POP-Konten abruft und mittels Regel die Mails in den entsprechenden Mitarbeiter-Ordner eines ebenfalls eingerichteten IMAP-Kontos verschiebt.

Die IMAP-Adresse läuft auf unserem eigenen Server und wird über das Intranet von jedem abgerufen.

Diese Lösung hatte folgenden Grund: Und zwar arbeiten bei uns oft mehrere Leute an den selben Aufträgen. Um nicht jede Mail dauernd mehrfach in Kopie senden zu müssen, damit jeder den gleichen Informations-Stand hat, haben wir das nun mit einem zentralen IMAP-Konto gelöst.

Grundsätzlich läuft das und wir sind auch froh um die zentrale Mail-Verwaltung. Aber der Client auf dem Server ruft nun jede Minute gleichzeitig 10 POP-Konten ab. Wenn bei mehreren Adressen Mails reinkommen, vor allem mit Anhängen (wir arbeiten viel mit Anhängen), dann bremst das regelmässig (mehrmals am Tag) den kompletten Server ein, was sich auch auf die Performance unserer Datenbank auswirkt. Mehrmals am Tag kommt es vor, dass für einige Zeit (30-60 Sekunden) die ganze DB wie eingefroren ist und uns am Arbeiten hindert.

Das es mit dem Mailcient auf dem Server zusammenhängt, haben wir nach vielen Tests herausgefunden. Leider kann ich dem Client nicht sagen, dass er nicht alle Konten gleichzeitig sondern einzeln abholen soll. Übrigens: Wir haben Mac OSX 10.6, der Client ist der Standard OSX Mail Client.

Nun suchen wir nach einer Lösung, wie wir diese Konstellation beibehalten können, aber die Performance-Bremse beseitigen.

Meine Idee nun: Ein Script bzw. kleines Programm zu schreiben, welches dasselbe macht, aber eben ohne grossen GUI-Client und vor allem, jedes Konto einzeln nacheinander abzuholen. Zur Auswahl stehen Lazarus/Freepascal, Python und Perl.

Jetzt frage ich mich aber, der Client lädt ja alles auf den Rechner, d.h. er schiebt dann das Mail quasi als physische Datei einfach in den anderen Ordner, oder? D.h. ich muss wohl diese Ordnerstruktur auch physisch nachbauen, damit ich dasselbe machen kann, also heruntergeladenes Pop3-Mail in IMAP-Konto verschieben. Sehe ich das richtig? Und dann ist dann die Frage des Dateiformats, Mac hat da eine Art Container wie es aussieht, EMLX, bei dem auch alle Anhänge mit drinnen sind. Ich hab Angst, dass wenn ich dann mit meinem Programm die Mails umsortiere, ich Probleme mit dem Lesen des Mailformats bekomme.

Was meint Ihr? Oder gibt es mit bestehender Software (muss auf Mac laufen, wir haben hier nichts anderes) eine Möglichkeit, diese Konstellation so nachzubauen? Am Besten in der Konsole oder nur mit sehr rudimentärer GUI.

Liebe Grüsse
Thomas

  1. Jede Mitarbeiteradresse existiert als eigenes POP3-Konto, welche bei unserem Hoster eingerichtet sind. Auf unserem Server läuft nun ein Mailclient, der alle POP-Konten abruft und mittels Regel die Mails in den entsprechenden Mitarbeiter-Ordner eines ebenfalls eingerichteten IMAP-Kontos verschiebt.

    Aber der Client auf dem Server ruft nun jede Minute gleichzeitig 10 POP-Konten ab.

    Warum lasst ihr das IMAP-Konto nicht beim Hoster einrichten (statt der POP-Konten) bzw. warum lasst ihr Mails nicht direkt von einem Firmenserver empfangen? Beides wäre allemal besser als eure derzeitige Von-hinten-durchs-Klofenster-in-die-Kneipe-Methode.

    Ansonsten: Mittels Python POP3-Konten abfragen und in ein IMAP-Konto legen, ist nicht schwer. Da gibt es bestimmt jemanden, der Lust hat, euch ein Skript zu verkaufen.

    1. Warum lasst ihr das IMAP-Konto nicht beim Hoster einrichten (statt der POP-Konten) bzw. warum lasst ihr Mails nicht direkt von einem Firmenserver empfangen? Beides wäre allemal besser als eure derzeitige Von-hinten-durchs-Klofenster-in-die-Kneipe-Methode.

      Ansonsten: Mittels Python POP3-Konten abfragen und in ein IMAP-Konto legen, ist nicht schwer. Da gibt es bestimmt jemanden, der Lust hat, euch ein Skript zu verkaufen.

      Anfangs hatten wir das IMAP-Konto beim Hoster, doch da wir sehr viel mit Anhängen arbeiten, wächst die Mailbox sehr schnell, was beim limitierten Webspace gefährlich war. Um dem Platzproblem entgegen zu wirken, habe ich dann eben das IMAP-Konto quasi ausgelagert.

      Die Mails direkt zu empfangen, war auch mal kurz ein Thema, aber dafür ist unsere Infrastruktur nicht geeignet.

      Ich hab schon ewig nicht mehr programmiert, aber ich probiers mal selbst. Hab schon einige Codeschnipsel in Perl da.

      Bei mir herrscht momentan nur das Verständnisproblem, wie das "Mail-Verschieben" funktionieren soll.

      In einem anderen Antwortpost wurde fetchmail/getmail empfohlen. Ich hab ein bisschen gegoogelt und gesehen, dass ich mit fetch- bzw. getmail die Mails vom Pop3 abholen und dann an procmail übergeben kann. Procmail ist dann im Stande diese im IMAP abzulegen.

      Ich probier glaub mal letzteres, denn vorhande Tools zu verwenden ist immer noch besser als das Rad neu zu erfinden.

      Gruss, Thomas

      1. Hi,

        Anfangs hatten wir das IMAP-Konto beim Hoster, doch da wir sehr viel mit Anhängen arbeiten, wächst die Mailbox sehr schnell, was beim limitierten Webspace gefährlich war. Um dem Platzproblem entgegen zu wirken, habe ich dann eben das IMAP-Konto quasi ausgelagert.

        Und der Schuß ging jetzt nach hinten los. Welchen Preis hättet Ihr denn zahlen müssen, um beim Hoster mehr Speicherplatz für den IMAP-Server zu bekommen? Hat sich das Einsparen dieses Betrags wirklich gelohnt?
        Jetzt ist nicht nur der IMAP-Server nicht mehr richtig nutzbar, sondern auch der scheinbar auf derselben Hardware untergebrachte DB-Server.
        Und die Hardware ist offensichtlich nicht ausreichend für beide Anwendungen gleichzeitig.

        Kostet der Arbeitsausfall durch die Wartezeiten auf IMAP/DB mehr oder weniger als die Erweiterung des IMAP-Speichers beim Hoster gekostet hat?

        Da wäre dann wohl der erste Schritt, die beiden Dienste auf jeweils eigene Hardware zu verlagern.

        Ich hab schon ewig nicht mehr programmiert, aber ich probiers mal selbst.

        Es soll also wieder gespart werden, egal was es kostet?

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
  2. Tach,

    Was meint Ihr? Oder gibt es mit bestehender Software (muss auf Mac laufen, wir haben hier nichts anderes) eine Möglichkeit, diese Konstellation so nachzubauen? Am Besten in der Konsole oder nur mit sehr rudimentärer GUI.

    klingt nach einem Job für fetchmail/getmail/...

    mfg
    Woodfighter

  3. hi,

    so von der Grundidee errinert mich das an eine Sache die ich vor Jahren gemacht habe.
    Dabei ist aber beim Hoster nur ein Konto hinterlegt, mit catchall bzw. mehrere konten die alles weiterleiten und bei sich löschen. Dadurch hat man immernoch die richtige zieladresse (wegen den regeln ja wichtig) das ganze aber schon beim hoster in nur noch einem konto.

    Da Mails hintereinander abgerufen werden, könnte das die entlastung sein, die du wolltest.

    Zumindest musst du so nur noch ein konto abrufen lassen und nicht mehr 10 oder mehr.

    Gruß Niklas

    --
    Man muss nicht alles wissen, man sollte aber wissen, wo das nicht gewusste zu finden ist.