Zum Inhalt springen

VB.NET - POP-Connector - SMTP-Forward?


Denny

Empfohlene Beiträge

Moin!

Da mir die rückständige Oberfläche und unübersichtliche Bedienung von diversen POP-Connectoren auf die Nerven geht, habe ich mich entschlossen, meinen eigenen zu schreiben.

Ziel ist, eingehende Mails vom Provider abzuholen und an den internen Exchange Server (2007 bzw. 2010) weiterzuleiten.

Mit dem pop3-Receiver von openpop (OpenPop.NET - Robust POP3 client and MIME parser written in C#) funktioniert das Abholen schon mal ganz gut, doch beim Weiterleiten hapert's dann. Es gibt zwar die Methode Message.ToMailMessage (Message.ToMailMessage Method), mit der man das ganze dann über die SMTP-Funktionen von .NET weiterleiten kann - aber, wie hier schon richtig aufgeführt wird, erhält jeder, der im To und Cc aufgeführt ist, die Mail nochmal:

You should be aware of the following about this method:

All sender and receiver mail addresses are set. If you send this email using a SmtpClient then all receivers in To, From, Cc and Bcc will receive the email once again.

If you view the source code of this Message and looks at the source code of the forwarded MailMessage returned by this method, you will notice that the source codes are not the same. The content that is presented by a mail client reading the forwarded MailMessage should be the same as the original, though.

Content-Disposition headers will not be copied to the MailMessage. It is simply not possible to set these on Attachments.

HTML content will be treated as the preferred view for the Body. Plain text content will be used for the Body when HTML is not available.

Das bedeutet, dass ich bei einer Mail von extern, die beispielsweise an zwei interne Empfänger in meiner Organisation gerichtet ist, die Mail von beiden Postfächern beim Provider abhole und dann beim SmtpClient.send ungklücklicherweise jeweils an beide versende. D.h. jeder würde die Mail zwei Mal bekommen.

Gewünscht ist allerdings, dass nur dem Empfänger, der im "Envelope-To" steht, sie auch zugestellt bekommt.

Wie machen das die gängigen POP-Connectoren? Oder gibt es eine andere lib, die das kann?

Wäre über Antworten sehr dankbar :)

Grüße,

Den

Link zu diesem Kommentar
Auf anderen Seiten teilen

Servus,

vielleicht solltest Du mal die Methode posten, die für die Weiterleitung der Mails verantwortlich ist.

Am POP-Connector kann das wohl nicht liegen.

Im POP-Connector habe ich gelesen, dass Du auch den Header auslesen kannst.

Dann dürfte es doch kein Problem sein, Envelope-To auszulesen und diese Adresse in Mail-To zu schreiben.

... denke ich mir mal so ;)

Bearbeitet von uenetz
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hm? Hab ich doch :) -> SmtpClient.send

Das ist die .NET-Methode für den SMTP-Versand aus System.Net.Mail - SmtpClient-Klasse (System.Net.Mail)

Aber vielleicht bin ich auch auf dem komplett falschen Weg, das zu erreichen?

Wenn ich allerdings MailMessage.To.clear mache und den To aus dem envelope-to einfüge, sieht der Empfänger nicht mehr, an wen die Mail ursprünglich alles gerichtet war. Z.B. um ein "Antworten an alle" zu starten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Aber die Zustellung über SmtpClient.send funktioniert doch über die To, Cc und Bcc-Properties, oder?

Hab' mir auch gerade mal die .eml angeschaut, die OpenPop nach dem Konvertieren in die MailMessage-Klasse erzeugt... Ist auf jeden Fall keine 1:1-Kopie mehr und der envelope-to wird auch rausgeschmissen.

Gibt's vielleicht noch andere Möglichkeiten, das zu bewerkstelligen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Sodala... Problem behoben!

Benutze jetzt einen anderen POP-Receiver, und zwar den hier:

Send (SMTP) and Receive (POP3) Email with Ease under VB.NET by David Ross Goben

Astrein dokumentiert und liefert die komplette Mail als POP3Message.Message, die man per SMTP an den Empfänger leitet.

Und zwar hiermit:

SMTP with .NET Micro Framework - Netduino Plus and Netduino Plus 2 - Netduino Forums

Im Grunde simple SMTP-Kommandos, die man dem Server mitsamt der runtergeladenen Message schickt. Damit kann sich nun jedermann einen eigenen POP-Connector basteln und Lizenzkosten sparen ;)

Wer noch Infos möchte, kann sich ja gerne melden.

Danke auch für die Denkanstöße :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...