Domino 9 und frühere Versionen > ND7: Entwicklung
In E-Mail Rückantwort fehlt das FROM-Feld
Legolas:
Hallo Forum,
ich habe folgendes Problem und weis nicht weiter.
Ich habe einen Mail-In Agenten in einer Maildatenbank der eine Bestätigungsmail (Autoreply) versenden soll.
Das Problem was ich habe ist allerdings, dass in der Reply-Mail das "From" Feld nicht mehr vorhanden ist, ovbwohl es explizit befüllt wurde.
Hierdurch wird die Mail (z.B in GMX) als Mail ohne Absender angezeigt und somit als Spam behandelt.
Wird die Mail "normal" vom Client mit diesem Code versendet, funktioniet es.
Client Server: 7.x
Hat hier jemand eine Idee woran das liegen kann?
Gruß und danke im Voraus
Bernd
Hier der Code:
Sub Initialize
Dim s As New NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim IncomEmail As NotesDocument
Dim ReplyEmail As NotesDocument
Dim stRecipient As String
stRecipient = "max.mueller@firma.de"
Set db = s.CurrentDatabase
Set dc = db.UnprocessedDocuments
Set IncomEmail = dc.GetFirstDocument
While Not IncomEmail Is Nothing
Dim stFrom As String
Dim stSendTo As String
Dim Position As Long
Dim Temp As String
stFrom = IncomEmail.From(0)
stSendTo = Ucase$( IncomEmail.SendTo(0) )
' Wenn Mailempfänger = "max.mueller@firma.de" dann Rückantwort erstellen und an den Absender zurücksenden
If Instr(1, stSendTo, Ucase(stRecipient )) <> 0 Then
'if an internet address format as name@internetdomain@notesdomain,
'regardless if with my notesdomain
If Instr(1, stFrom, "@") <> 0 Then
Position = Instr(1, stFrom, "<")
Temp = Right(stFrom, (Len(stFrom) - Position))
stFrom = Left(Temp, (Len(Temp) - 1))
Elseif IncomEmail.hasitem("Principal") Then
stFrom = IncomEmail.Principal(0)
End If
'create Memo
Set ReplyEmail = db.CreateDocument
ReplyEmail.SendTo = stFrom
ReplyEmail.Subject = "Re.: " + IncomEmail.Subject(0)
ReplyEmail.Body = "Thank you"
ReplyEmail.Principal = stRecipient
ReplyEmail.From = stRecipient
ReplyEmail.SaveMessageOnSend = True
Call ReplyEmail.Send(False)
End If
Call s.UpdateProcessedDoc(IncomEmail)
Set IncomEmail = dc.getnextdocument(IncomEmail)
Wend
End Sub
m3:
Lotus Notes/Domino Agent FAQ updated 4/18/07 by Julie Kadashevich
1) How to change the apparent sender of the agent generated mail.
Information on three different ways to do it with code samples has been moved to the "Troubleshooting agents" article.
http://www-10.lotus.com/ldd/today.nsf/62f62847467a8f78052568a80055b380/ef1565a0b202808285256c94004fd0fb?OpenDocument&Highlight=0,kadashevich
Related information not covered in the article:
What is $INetFrom:
http://www.notes.net/46dom.nsf/55c38d716d632d9b8525689b005ba1c0/7de5b937e6b113438525680f006f3597?OpenDocument&Highlight=0,inetfrom
http://www.notes.net/46dom.nsf/55c38d716d632d9b8525689b005ba1c0/0a2fb58af0864fff852568e30055b386?OpenDocument&Highlight=0,inetfrom
And if you have problems even if you have used the right syntax and followed instructions:
http://www.notes.net/46dom.nsf/7d6a87824e2f09768525655b0050f2f2/61c58ede8a7178458525693c006129b6?OpenDocument
From field has format name%doman@company.com, how do to drop %doman portion:
http://www.notes.net/46dom.nsf/7d6a87824e2f09768525655b0050f2f2/9253ec348d06535b852569f20067617b?OpenDocument
2
Legolas:
Hallo,
bin mir nicht ganz sicher ob ich diese Antwort richtig verstehe! ???
Um Missverständnissen vorzubeugen:
Ich möchte nicht den Absender der ursprünglichen E-Mail abändern sonder ein neues Mail an den Absender zurücksenden.
Der Absender für die Replay-Mail ist immer auch der Besitzer der Maildatenbank.
koehlerbv:
Hallo Bernd,
was Du richtig verstehen musst (und das findest Du auch in den verlinkten Artikeln) ist das Funktionieren der Methode NotesDocument.Send: Diese setzt immer den Namen des aktuellen Benutzers ein. Wenn es sich um eine Internet-Adresse handeln muss, hast Du bei einem Server natürlich schlechte Karten ...
Du solltest darüber nachdenken, dass Mail nicht zu "Senden", sondern in der MAIL.BOX (oder MAILx.BOX - das solltest Du gleich mit berücksichtigen) anzulegen und zu speichern. Den Rest übernimmt dann der Router - ohne Send-Methode.
Weiterhin:
Du willst immer mit dem aktuellen Eigentümer des Mailfiles anworten, hast das aber hardcodiert. Warum liest Du das nicht aus dem "(CalendarProfile)" aus? Ich finde auch weitere Teile in diesem Code, die völlig unnötig sind und darauf hindeuten, dass Du das Zeugs irgendwo "gefunden" hast. Mach sowas nicht! Nimm derartigen Code als Beispiel und Lernstoff oder Anti-Beispiele und baue es nach dem Durchdenken immer ganz neu auf entsprechend Deiner Kenntnisse und Standards.
HTH,
Bernhard
Legolas:
Hallo Bernhard,
der Code ist reiner Testcode.
Der soll so nicht zum Einsatz kommen.
Mir ging's hier vor allem um das Verständnis warum die Reply-Mail nicht korrekt versendet wird.
Eine Frage ist aber für mich immer noch offfen!
Warum wir das Feld "From" nicht mit übertragen?
Gruß
Bernd
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln