Mail senden¶
Die Mail Factory erstellt das \Alvine\Net\Mail\Mail
Objekt.
Damit eine Mail erstellt werden kann, muss der Empfänger, Betreff und ein Inhalt gesetzt werden.
Wenn der Absender nicht definiert wurde , wird die hinterlegte eMail Adresse in contactCustomerService
des Standart Mandanten verwendet.
$factory = new \Alvine\Application\Platform\Communication\Mail\Factory();
$mail = \Alvine\Net\Mail\MailAddress::getAddress('[email protected]');
$subject = 'Das ist ein Betreff';
$content = new \Alvine\Types\Mime\Text('Das ist eine Mail');
$factory->setTo($mail);
$factory->setSubject($subject);
$factory->setContent($content);
$mail = $factory->create();
$smtpClient = \Alvine\Application\Assembly::getInstance()->getDefaultSmtpClient();
$smtpClient->sendMail($mail);
Adressen¶
Die Adressen To , Cc und Bcc können als Adresse oder Collection definiert werden.
Die Collection muss auf \Alvine\Net\Mail\MailAddress
eingeschränkt sein.
Platzhalter¶
Die Factory ersetzt keine Platzhalter, das ersetzten muss die Klasse übernehmen die diese Factory verwendet.
Senden per Workflow¶
Die Action \Alvine\Application\Platform\Logic\Workflow\Action\Communication\SendMail
sendet eine Mail. Der Betreff und der Inhalt wird
direkt in der Action definiert.
Es können Platzhalter im Betreff und Inhalt verwendet werden die aus dem Trait \Alvine\Application\Platform\Logic\Workflow\Implementation\Container\Placeholder
definiert werden
<action class="\Alvine\Application\Platform\Logic\Workflow\Action\Communication\SendMail">
<parameters>
<parameter name="to" type="ArrayType" >[email protected]</parameter>
<parameter name="cc" type="ArrayType" >[email protected]</parameter>
<parameter name="bcc" type="ArrayType" >[email protected]</parameter>
<parameter name="subject">Container ${containerID} wurde bearbeitet</parameter>
<parameter name="content"><![CDATA[Container ${containerID} wurde bearbeitet.
History:
${history}]]></parameter>
</parameters>
</action>
Deprecatd¶
Die Aktion \Alvine\Application\Platform\Logic\Workflow\Action\Communication\Mail
ist Deprecatd
Senden mit Commerce Plugin und Dokumente¶
Das Plugin muss min. die Version 1.83.0 haben.
In dem Parameter subjectDocumentEquipmentClass
wird das Dokumenten EQ definiert , welches den Mail Betreff liefert.
In dem Parameter contentDocumentEquipmentClass
wird das Dokumenten EQ definiert , welches den Mail Inhalt liefert.
<action class="\Alvine\Application\Platform\Plugin\Commerce\Logic\Workflow\Action\Equipment\Document\SendMail">
<parameters>
<parameter name="to" type="ArrayType">[email protected]</parameter>
<parameter name="contentDocumentEquipmentClass" >\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Container\Equipment\Order\Document\Html\Mail</parameter>
<parameter name="subjectDocumentEquipmentClass" >\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Container\Equipment\Order\Document\Html\MailSubject</parameter>
</parameters>
</action>
Senden mit Order Plugin¶
Das Plugin muss min. die Version 0.79.0 haben.
Das Plugin holt sich die UID aus der Bestellung
die in das Equipment Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Container\Equipment\Order
geladen wurde.
Die Aktion \Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Action\Equipment\Order\LoadOrderFromContainerID
kann das zum Beispiel laden.
<!-- Bestellung Laden-->
<action class="\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Action\Equipment\Order\LoadOrderFromContainerID"></action>
<!-- eMail Senden -->
<action class="\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Action\Equipment\Document\SendMail">
<parameters>
<parameter name="contentDocumentEquipmentClass" >\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Container\Equipment\Order\Document\Html\Mail</parameter>
<parameter name="subjectDocumentEquipmentClass" >\Alvine\Application\Platform\Plugin\Order\Logic\Workflow\Container\Equipment\Order\Document\Html\MailSubject</parameter>
</parameters>
</action>