Outlook Mail-Retoure auslesen

  • Hallo zusammen,

    ich benötige Hilfe beim Auslesen von E-Mails.

    Anbei meine bisherige Funktion:

    Spoiler anzeigen

    Falls eine Mail unzustellbar ist, kann ich diese Rückmeldung nicht korrekt auslesen. (siehe Anhang)

    Wie muss ich den Body auslesen, damit ich mir die Empfänger-Adresse und das Eingangsdatum der Mailretoure mit StringRegEx ziehen kann?

    Viele Grüße
    Espyre

    Mail_unzustellbar.jpg
    Result _OL_ItemGet.jpg

  • Ich würde mal vom Kopf her sagen:

    Du liest die Rückmeldung an und zeigst sie doch im unteren Bild an. Also ist das doch ein Array.
    Dann kannst Du doch bei StringRegEx das jeweilige Array[??] übergeben. Also meine ich, das es gar nicht nötigt ist, die Daten in eine Textdatei zu speichern, wenn ich das richtig sehe.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • SenderEmailAddress und ReceivedTime ist leer, da ja die Mail nicht direkt vom Empfänger zurückkommt.

    Daher würde ich den Body auslesen, da dort alle Informationen enthalten sind. Wie im Array ersichtlich ist, besteht der Body nur aus chinesischen Schriftzeichen. Habe leider noch keine Möglichkeit gefunden, den Body so auszulesen, damit ich ihn weiter verarbeiten kann.

    Lg
    Espyre

  • Moin Espyre.

    Zeit doch erst einmal das Script, das das Array erstellt. Also so, das wir den Weg bis zum Array mitverfolgen können und da ansetzen können.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • Um festzustellen, dass es sich um ine Retoure handelt, würde ich die MessageClass prüfen. Die steht auf "Report.IPM.Note.NDR" - NDR steht dabei für Non-Delivery-Report.
    Zum Thema NDR findest Du hier eine sehr umfassende Beschreibung - auch warum der Text auf Chinesisch dargestellt wird.
    Hier eine gute Übersicht, was die Codes bedeuten.

  • Alina: Das Array diente nur zur Veranschaulichung. Habe ich mit _OL_ItemGet($oOutlook, $oItem, Default) erstellt.
    $Body = $oItem.Body (Zeile 7) ist der Befehl vom Originalscript.

    water: Vielen Dank für den Hinweis mit der MessageClass. Auch deine Links haben mir sehr geholfen.

    für Interessierte ein Auszug:

    Spoiler anzeigen

    NDR und Sprache

    Die unzustellbarkeit wird per Default immer in der Sprache installiert, in der der Server installiert ist. Das mag nett sein, wenn Sie selbst intern unzustellbarkeiten erhalten, aber ist im internationalen Gebrauch nur bedingt nutzbar. Besonders problematisch wird dies, wenn Sie z.B. einen japanischen Server installiert haben. Dessen unzustellbarkeitsmeldungen sind für nicht Japaner schwer zu verstehen. Daher gibt es auch einen TechNet Artikel, wie einem japanischen Server eine englische Fehlermeldung abzuringen ist:

  • :)