E-Mail Verteiler (SQL, PHP, Python?)

  • Hallo!

    Ich versuche gerade einen Verteiler aufzubauen.
    Über eine SQL Datenbank pflege ich über PHP eine Verteilerliste (E-Mailadressen).
    Jetzt möchte ich, dass mein Raspberry irgendwie (Python, PHP, ganz egal) meinen Posteingang regelmäßig überprüft und falls eine neue E-Mail eingeht, diese an alle in der Verteilerliste weiterleitet.

    Mit PHP konnte ich bisher die E-Mails anzeigen, die im Posteingang sind, aber dann kam nur wirrwarr. Auch intensives googeln hat bisher keine Lösung gebracht, die mir wenigstens den reinen Text abspeichern kann.
    Mit python genau das gleiche Problem. Scheinbar ist es nicht so einfach eine E-mail auszulesen, rsp. den body.

    Hat jemand schon etwas in der Richtung programmiert?
    Vielleicht ein Fingerzeig?
    Oder vielleicht ohne selbst Programmieren?Gibt es ein Programm was das schon als Plugin o.ä. kann (also E-Mail an das Ergebnis einer SQL Abfrage weiterleiten?)

  • Das geht ohne Probleme mit Fetch_Body von PHP. Dann kannst du den Body auch in Plain Text auslesen.

  • Hi,
    geht das nicht besser über fetchstructure ?
    Weiter unten sind auch ein paar Beispiele wie mit Attachments umzugehen ist.

    zb das Beispiel von raulggonzalez:
    [code=php]
    <?php
    $inbox = imap_open($hostname,$username,$password) or die('Cannot connect to mail: ' . imap_last_error());
    $struct = imap_fetchstructure($inbox,$uid,FT_UID);
    $existAttachments = existAttachment($struct);

    function existAttachment($part){
    if (isset($part->parts)){
    foreach ($part->parts as $partOfPart){
    existAttachment($partOfPart);
    }
    }
    else{
    if (isset($part->disposition)){
    if ($part->disposition == 'attachment'){
    echo '<p>' . $part->dparameters[0]->value . '</p>';
    // here you can create a link to the file whose name is $part->dparameters[0]->value to download it
    return true;
    }
    }
    }
    }
    ?>
    [/php]

    Schönen Gruss
    Markus

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!