E-Mail-Versand
Ereignisaktion - Kurzfassung
Zweck: Dient zum automatischen Erstellen eines E-Mail-Objekts und/oder zum Versenden von E-Mails über den Server von Lobster Data Platform / Orchestration.
Die Ereignisaktion E-Mail-Versand dient zum automatischen Erstellen und Versenden von E-Mails über den Server von Lobster Data Platform / Orchestration. Der Versand erfordert geeignete Einstellungen für die Serverkonfiguration (s. Abschnitt "Notwendige Anpassungen der Serverkonfiguration (startup.xml)" ganz unten).
Der Inhalt der Nachricht (Betreff, Mail-Body, Anhänge) und die Adressen der Beteiligten (Absender, Empfänger, Cc, Bcc) können statisch per Direkteingabe als Text oder dynamisch - also über Wertauflöser - definiert werden. Per Standard berücksichtigen viele Wertauflöser dabei das Bezugsobjekt, in dessen Kontext die Ereignisaktion E-Mail-Versand ausgeführt wird. Die Daten des Bezugsobjekts können - ggf. zusammen mit anderen Datenquellen - auf vielfältige Weise (Textverkettung, Vorlage, ...) in den E-Mail-Versand eingebunden werden.
Optional kann die erstellte Nachricht (ggf. abhängig von Bedingungen) als E-Mail-Objekt (core:Mail, s. E-Mails) in Lobster Data Platform / Orchestration gespeichert werden. Dieses beinhaltet zusammen mit den unmittelbar in der Nachricht enthaltenen Informationen (Betreff, Mail-Body, Absender-/Empfängeradressen und ggf. Anhänge) noch je ein Feld für das "Erstellungsprotokoll" (mailLog) und den "Status" (state, s. Mailstatus), die durch die Ereignisaktion E-Mail-Versand zur Laufzeit automatisch mit Werten belegt werden.
►HINWEIS◄ Der Zugriff auf E-Mail-Objekte erfordert zwar ausreichende Rollenberechtigungen und ist an den Besitz bzw. Firmenfreigaben gebunden. Allerdings wird die Berechtigung zum Das Erstellen von E-Mail-Objekten durch die Ereignisaktion E-Mail-Versand erfolgt allerdings grundsätzlich ohne die Berücksichtigung von Zugriffsbeschränkungen. Sofern der gewählte Mail-Speichermodus dies vorsieht, können E-Mail-Objekte also unabhängig vom anwendbaren Anmeldekontext immer erstellt werden. Dabei wird automatisch die Firma der Session als Besitzer des E-Mail-Objekts zugewiesen. Bei Bedarf kann diese Zuweisung per Ausführen als durch eine statische Zuweisung einer anderen Firma übersteuert werden.
Voraussetzungen für den Versand von E-Mails
Damit per Lobster Data Platform / Orchestration automatisiert E-Mails versendet werden können, muss der Zugriff auf einen SMTP-Server als Service für Lobster Data Platform / Integration gewährleistet sein.
Wie die folgende Übersicht zeigt, kann dies auf unterschiedlichen Wegen erreicht werden:
|
|
E-Mail-Einstellungen unter "StartupService" (startup.xml)
Die bei der Installation bereitgestellte Version der Konfigurationsdatei ./etc/startup.xml enthält bereits ein Element mit der Klasse com.ebd.util.net.mail.HubStartupConfiguration, in dem die spezifischen Details für den gewünschten Mailserver-Zugriff angegeben werden müssen.
<
Call
name
=
"addApplication"
>
<
Arg
>
<
New
class
=
"com.ebd.util.net.mail.HubStartupConfiguration"
>
<
Call
name
=
"setMailSettings"
>
<!--SMTP via TLS should be used
<
Arg
>smtps</
Arg
>
-->
<
Arg
>localhost</
Arg
> <!-- server -->
<
Arg
type
=
"int"
>25</
Arg
> <!-- port -->
<
Arg
/> <!-- user -->
<
Arg
/> <!-- password -->
</
Call
>
<!-- or use mail channel instead
<
Call
name
=
"setMailChannel"
>
<
Arg
>PartnerName</
Arg
>
<
Arg
>ChannelName</
Arg
>
</
Call
>
-->
<!-- Uncomment the next line and set with fitting values to change the list of mechanisms to be used for authentication -->
<!--
<
Set
name
=
"sMTPAuthMechanisms"
>LOGIN PLAIN MD5-DIGEST NTLM</
Set
>
-->
</
New
>
</
Arg
>
</
Call
>
Konfiguration
Da die Konfiguration für den E-Mail-Versand umfangreichere Konfigurationsmöglichkeiten vorsieht, werden diese auf unterschiedliche Tabs in einem Tab Panel (Registerkarten)-Element verteilt angeboten.
Der Tab Mailversand fasst Parameter für die Ablaufsteuerung mit den Konfigurationen für den eigentlichen Inhalt der Nachricht zusammen:
Tab "E-Mail-Versand" / Parameter für die Ablaufsteuerung |
|
Die Option Mail-Body erst beim Commit erzeugen ist per Standard abgewählt (AUS), was bewirkt dass alle Wertauflöser in der E-Mail-Versand-Konfiguration sofort beim Ausführen der Ereignisaktion verarbeitet werden.
Die Option Sofort versenden ist per Standard abgewählt (AUS), was bewirkt, dass der Versand der Mail nur und erst dann ausgelöst wird, wenn die laufende Transaktion komplett und erfolgreich (ohne Fehler/Rollback bzw. Abbrechen) abgeschlossen wird. Abhängig von der Auswahl für die Option Mail-Body erst beim Commit erzeugen werden Wertauflöser in der E-Mail-Versand-Konfiguration sofort oder erst beim Commit verarbeitet.
Wird für Folgeschritte innerhalb der Ereignisverarbeitung die "ID" (id) der erzeugten E-Mail-Entität (s. E-Mails) benötigt, kann diese in eine Variable gespeichert werden. Zu diesem Zweck muss im Feld Mail-ID in Variable speichern der Name einer Variable angegeben werden. |
|
Die Auswahl für den Mail-Speichermodus definiert, ob und ggf. unter welchen Voraussetzungen beim Ausführen der Ereignisaktion E-Mail-Versand die Nachricht als E-Mail-Objekt gespeichert werden soll. Das Erstellen von E-Mails kann wahlweise ...
... erfolgen. |
|
Die Auswahl für den Log level betrifft die Detailtiefe für das "Erstellungsprotokoll", das die Verarbeitungsschritte der Ereignisaktion E-Mail-Versand dokumentiert und abhängig von der Auswahl für den Mail-Speichermodus im Feld "Erstellungsprotokoll" (mailLog) von gespeicherten E-Mails nachvollziehbar ist.
►HINWEIS◄ Falls für den Mail-Speichermodus die Auswahl Mail nicht speichern gewählt wird, sollte für optimale Performance der Log level "OFF" gewählt werden, sonst wird das Protokoll temporär angefertigt und dann verworfen. |
|
Tab "E-Mail-Versand" / Parameter für den Mail-Inhalt |
|
Der Text für den Betreff der E-Mail ist ein Pflichtfeld. Er kann entweder per Direkteingabe als statischer Text oder - nach einem Klick auf den kleinen grauen Pfeil im Textfeld - als Rückgabewert aus einer Wert-Konfiguration (z. B. über den Wert aus Sprachverwaltung-Wertauflöser) definiert werden. |
|
Der Parameter Body content type erfordert als Pflichtfeld eine statische Auswahl für den MIME-Typ des Textkörpers der Nachricht. Ob der ausgewählte Typ von einem Empfänger korrekt angezeigt werden kann, hängt letztendlich am verwendeten Mail-Client. Das Feld listet per Autovervollständigung Typen auf, die von den meisten Mailprogrammen interpretiert werden können. Abweichende Eingaben sind möglich, aber nur insoweit sinnvoll, wie sichergestellt werden kann, dass der Mail-Client des Empfängers diese Formate auch unterstützt. |
|
Der Parameter Mail-Body-Erzeuger definiert den inhaltlichen Hauptteil der E-Mail als Zeichenfolge, deren Inhalt dem angegebenen Body content type entsprechen sollte. Der Text für den Mail-Body kann auf unterschiedlichen Wegen erzeugt werden. Die Beispiele rechts demonstrieren nur einige ausgewählte Vorgehensweisen, die einzeln oder in Kombination eingesetzt werden können, um den "passenden" Inhalt für die zu versendende Nachricht systematisch zu erzeugen:
|
|
Tabs für die Definition von Adressen von "Beteiligten" (Absender/Empfänger) an der Mail |
|
Der Von-Tab enthält drei Parameter, über die der Versand der E-Mail auf einem der beiden alternativen Wege (s. oben "Voraussetzungen für den Versand von E-Mails") veranlasst werden kann.
Initial erscheinen immer alle drei Textfelder als Pflichtfelder (s. Screenshot rechts oben). Der Text kann wahlweise per Direkteingabe oder - nach einem Klick auf den kleinen grauen Pfeil links unten im Element - über eine Wert-Konfiguration zur Laufzeit definiert werden.
|
Beispiel 1: Absenderadresse (Von) als statischer Text
Beispiel 2: Absenderadresse (Von) mit Wert-Konfiguration (Mailadresse Benutzer)
Beispiel 3: Verweis auf einen "Partnerkanal" über Partner Name und Kanal Name
|
Die Tabs Empfänger, Cc (Empfänger für Kopie) und Bcc (Empfänger für Blindkopie) sehen die Angabe von E-Mail-Adressen von Empfängern einer Nachricht vor, die analog zum Tab Von entweder als Direkteingabe oder über Wertauflöser definiert werden können. Während der Absender (s. Tab Von) einer E-Mail per Definition eindeutig bestimmt sein muss, können für jeden Empfängertypen mehrere Adressen angegeben werden. Aus diesem Grund wird für die Adresseingabe ein Wiederholendes Element angeboten, in dem über die Symbole Anhand der Wertzuweisungen für diese Instanzen werden nach folgender Logik E-Mail-Beteiligte der jeweiligen Typen ("An", "Cc", "Bcc") für die Nachricht generiert:
Beispiele (rechts):
|
Beispiel: Direkteingabe für mehrere verkettete Empfänger
Beispiel: Wertauflöser für Empfänger einer Kopie (CC)
Beispiel: Wertauflöser für Empfänger einer Blindkopie (BC)
|
Tab "Anhänge" / Parameter für die Definition von Mail-Anhängen |
|||||||||||||||||
Der Tab Anhänge stellt ein Wiederholendes Element bereit, in dem Parameter für einen oder mehrere Dateianhänge für die Nachricht definiert werden können. Über die Symbole
►HINWEIS◄ Sofern das als Inhalt bereitgestellte Datenobjekt Angaben für Dateiname und/oder MIME-Typ mitliefert (s. Tabelle unten), übersteuern diese die entsprechenden Konfigurationsparameter. Das ist insbesondere dann hilfreich, wenn der Inhalt über einen Wertauflöser wie Angehängte Dokumente definiert wird, der mehrere Inhalte zurückgeben kann.
►ANMERKUNG◄ Der Datentyp "Inhalt" eignet sich auch, um per Erzeuge Instanz mit Werten eine "Hülle" für einen anderen Inhalt (z. B. Text oder ByteArray) herzustellen, über die dann ein Dateiname und ein MIME-Typ zugewiesen werden können. Beispiele:
|
Beispiel: XML des Bezugsobjekts (Bestellung) wird als Datei "order.xml" angehängt
Beispiel: Dokumente mit Bezug zum Bezugsobjekt werden angehängt
|