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>