E-Mail Channels
- Konfigurierbare E-Mail Versandwege
- Getrennte Versandwege für Transaktions- und Marketingsmails
- Erweiterbare Versandverfahren (Adaptoren)
Ein E-Mail Channel ist ein konfigurierbarer Versandweg für ausgehende E-Mails. Im Channel können Absender und Empfänger Adressen für die E-Mails eingestellt werden und das Versandverfahren (z.B. Sendmail oder SMTP) ausgewählt werden. Über Adaptoren können andere Versandverfahren einfach in E-Mail Channels integriert werden.
Über verschiedene E-Mail Channels für Transaktionsmails (z.B. Bestellbestätitung oder Passwort-vergessen) und Marketingsmails (z.B. Newsletter oder Gutscheine) kann der E-Mail-Versand über verschiedene Mail-Server geleitet werden. Dadurch lässt sich der Mail-Traffic voneinander treffen und ein Spam-Blacklisting des Marketing E-Mail Channels hat keinen Einfluss auf das Versenden von Transaktionsmails.
Über Alias Channels können Channels miteinander verknüpft werden und so der Konfigurationsaufwand minimiert werden.
Im Standard-Setup wird ein E-Mail Channel "default" erstellt. In diesem ist das Standard-Versandverfahren für E-Mails festgelegt. Weitere System E-Mail Channels werden als Alias zum "default" Channel erstellt. So muss nur einmalig der "default" Channel für den Mail-Versand konfiguriert werden und alle anderen Channels nutzen dessen Versandweg fürs Versenden von E-Mails. Wenn ein anderer Channel ein abweichendes Versandverfahren nutzen soll, kann die Alias-Verknüpfung zum "default" Chanel gelöst werden und im Channel der Versandweg konfiguriert werden.
Über die Mail-Adressen in den E-Mail Channels lassen sich unterschiedliche Typen von Channels realisieren.
Für den Versand von Mails an einen variablen Empfängerkreis (z.B. Shop-Kunden) empfiehlt es sich, nur die Default Absender Adresse zu setzen. So kann beim Mail-Versand alle Mail-Adressen abweichend gesetzt werden und es bleibt ein großer Freiheitsgrad erhalten.
Für den Versand von Mails an einen fixen Empfänger/-kreis (z.B. Server-Admin oder Report-Empfängerliste) empfiehlt es sich, die Absender und Empfänger in den Default-Adressen zu hinterlegen. So kann der Mail-Versand nur mit Angabe des Channels erfolgen und es muss keine eigene Konfiguration von Mail-Adresse realisiert werden, da dies bereits im Channel vorhanden ist.
Über E-Mail Adaptoren können verschiedene Versandverfahren für E-Mail Channels bereitgestellt werden. Für andere Versandverfahren können eigene Adaptoren ("em_emailadaptor_base" Schnittstelle) nachgerüstet werden.
Für einen E-Mail Channel wird ein Adaptor eingestellt und konfiguriert. Der Adaptor kann über die Methode "emailAdaptor_getConfigDialog" seinen Konfigurationsdialog bereitstellen.
Aktuell sind die folgenden Adaptoren unterstützt:
- em_emailadaptor_smtp - Mail Versand über SMTP Server
- em_emailadaptor_sendmail - Mail Versand über Sendmail Binary auf dem Server
- em_emailadaptor_alias - Mail Versand über anderen E-Mail Channel
- em_emailadaptor_blackhole - Kein Mail Verand. Adaptor nimmt Mails entgegen und meldet den Versanderfolg zurück, ohne weitere Aktionen.
Der Versand einer E-Mail über einen Channel kann mit der Methode " $eCMS->email_send(...)" durchgeführt werden.
Code-Beispiel
$eCMS->email_send( 'email_channel' => 'system', 'from' => 'production.server@example.com', 'to' => 'hostmaster@example.com', 'subject' => 'Server Status ...', 'body_text' => 'Mail body in plain text..', 'body_html' => '<p>Mail body in HTML ...</p>', ) );
Über den Parameter " email_channel" wird der E-Mail Channel für den Versand adressiert. In diesem Beispiel der Channel "system". Wird kein E-Mai Channel in den email_send-Parametern gesetzt, wird der "default" Channel verwendet.
Der Versand einer E-Mail über einen Channel kann mit der Methode " $eCS->email_send(...)" durchgeführt werden.
Code-Beispiel
$eCS->email_send( 'email_channel' => 'ecs-customer-marketing', 'from' => 'auftrag@example.com', 'to' => 'max.mustermann@domain.com', 'subject' => 'Ihre Bestellung A03933', 'body_text' => 'Mail body in plain text..', 'body_html' => '<p>Mail body in HTML ...</p>', ) );
Über den Parameter " email_channel" wird der E-Mail Channel für den Versand adressiert. In diesem Beispiel der Channel "ecs-customer-marketing". Wird kein E-Mai Channel in den email_send-Parametern gesetzt, wird der "default" Channel verwendet.
In der eCommerceSuite werden die folgenden System Channels bereitgestellt:
- ecs-customer-marketing - Über diesen Channel sollen Marketingmails an die Kunden verschickt werden.
- ecs-customer-transaction - Über diesen Channel sollten Transaktionsmails an die Kunden verschickt werden.
- ecs-internal-transaction - Über diesen Channel sollten Transaktionsmails an den Shop-Betreiber verschickt werden.
In den Comproc Prozessobjekte können die E-Mail Channels für den Versand ausgewählt werden.