Domino 9 und frühere Versionen > ND8: Entwicklung
Eigene Mail SMTP Header in Nachricht einfügen - Lotus Client (kein Server)
(1/1)
thbrod:
Hallo Zusammen,
als absoluter Frischling in Lotus Notes ( Client, Designer) LS etc. und nach bisher erfolgloser Suche „Mail SMTP Header“ habe ich eine Frage:
Kann man eigene SMTP Mail Header ( keine MIME Header ) an eine Nachricht per Code einfügen?
Nachricht wird per NEW erzeugt, soll dann über einen Button „XYZ“ eigene SMTP Mail Header ( z.B. „x-notes-item…bla“ ) hinzufügen, bevor anschliessend die Nachricht gesendet wird.
Lotus Client angebunden an SMTP / POP3 Internet Mail. Kein Domino Server.
Verwende Lotus Notes 8 ( aktuellste Version mit Designer ).
( Mit Mail Anbindung an SMTP POP3 Server )
Danke euch! Für jeden Hinweis, auch wenn es nicht gehen sollte :)
Gruß Thomas
umi:
Hallo
Wenn Du das Mail über den Domino Server schicken würdest, könnte es klappen. Beim Server kann man konfigurieren, welche Felder zusätzlich aus dem Notesdokument mitgeschickt werden sollen.
lokal sehe ich da keine Möglichkeit, ausser Du würdest das Mail direkt erstellen z.B. via JavaMail API oder so ähnliches gebastel.
thbrod:
Hallo,
Vielen Dank für deine Antwort!
Yep! Es scheint leider so!
Man kann zwar Lokal unter ../Advanced/International MIME Settings nur Charset Einstellungen vornehmen.
Serverseitig die „private Header“ freischalten. (MIME - Advanced - Advanced Outbound Message Options..)
Ich dachte, vielleicht gibt es versteckte Konfigurationsschlüssel, die z.B. in die INI Datei einzutragen sind.
Scheint leider nicht so.
(Aktuell habe ich mir einen Trial Server installiert, und versuche gerade darüber zu testen)
Danke dir!
thomas
thbrod:
Was ich bisher herausgefunden habe:
Einfügen von sogenannten „Private Items“ als sogenannte zusätzliche „SMTP Mail X-Header“ funktioniert nur im/über den Domino Server, wenn dort die folgende Eigenschaft eingeschalten ist: „Internet mail server sends Notes private items in messages“
Diese eigenen Document Items werden dann in dem Mail Header folgendermaßen angezeigt:
X-Notes-Item:<wert (Text) des items>
name=<Name des Items>
Anders bei hinzugefügten MIME Headern:
--- Code: ---// ////////////////////////////////////
MIMEHeader header = body.createHeader("OwnMIMEHeader");
header.setHeaderVal("test content for OwnMIMEHeader");
//result:
//OwnMIMEHeader: test content for OwnMIMEHeader
--- Ende Code ---
Diese werden direkt als Mail Header eingetragen. (Ohne ein „X-Notes_“ etc. )
Voraussetzung, man hat den entsprechenden MIME Body.
Das Problem, dass ich in diesem Zusammenhang habe, ist, dass ich aus dem aktuellen RichText Document kein MIME Document machen kann, besser, es nicht weiß, wie es geht. Das ist dann aber auch ein anderer Thread, denke ich. :-)
Komplett Beispiel:
--- Code: --- session = getSession();
AgentContext agentContext = session.getAgentContext();
db = agentContext.getCurrentDatabase();
session.setConvertMIME(false);
Document mailDoc = db.createDocument();
mailDoc.appendItemValue("Form", "Memo");
mailDoc.appendItemValue("Subject", "Test - please reply if you get this");
mailDoc.appendItemValue("Comment", "Test - please reply if you get this");
mailDoc.appendItemValue("AppendOwnPrivateItem", "Test - please reply if you get this");
//Result as:
//X-Notes-Item: Test - please reply if you get this;
// name=AppendOwnPrivateItem
// create the MIME Body
MIMEEntity body = mailDoc.createMIMEEntity("Body");
// /////////////////////////////////////
Stream stream = session.createStream();
stream.writeText("Text of message for body 1.\n");
body.setContentFromText(stream, "text/plain;charset=UTF-8", MIMEEntity.ENC_NONE);
stream.truncate();
// add MIME Headers ///////////////////////////////////////
MIMEHeader mimeHeader = body.createHeader("From");
mimeHeader.setHeaderVal("From Header Value");
mimeHeader = body.createHeader("To");
mimeHeader.setHeaderVal("aaa@yxy.de");
mimeHeader = body.createHeader( "ReplyTo" );
mimeHeader.setHeaderVal( "ReplyTo Header Value");
mimeHeader = body.createHeader( "Principal");
mimeHeader.setHeaderVal( "Principal Header Value");
// ////////////////////////////////////
MIMEHeader header = body.createHeader("OwnMIMEHeader");
header.setHeaderVal("test content for OwnMIMEHeader");
//result:
//OwnMIMEHeader: test content for OwnMIMEHeader
// //////////////////sending
mailDoc.send(false);
session.setConvertMIME(true);
--- Ende Code ---
Ergibt die Header:
!MAIL FROM: <testUser1@somewhere.com>
!RCPT TO: <aaa@yxy.de>
X-Notes-Item: Memo;
name=Form
Subject: Test - please reply if you get this
X-Notes-Item: Test - please reply if you get this;
name=Comment
X-Notes-Item: Test - please reply if you get this;
name=AppendOwnPrivateItem
ReplyTo: ReplyTo Header Value
Principal: Principal Header Value
OwnMIMEHeader: test content for OwnMIMEHeader
MIME-Version: 1.0
Auto-Submitted: auto-generated
To: aaa@yxy.de
Message-ID: <OF72CB086F.E3077F1F-ONC1257936.002F6649-C1257936.002F6649@seeburger.de>
Sender: testUser1@somewhere.com
Date: Thu, 27 Oct 2011 10:37:43 +0200
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln