SendMail workflow trigger

Smartsite 8.0 - ...

Vanaf Smartsite 8.0 is er een standaard workflow trigger beschikbaar: SendMail.

Deze workflow trigger maakt het mogelijk om een mail te versturen naar één of meerdere gebruikers op het moment dat een item is gewijzigd en (bijvoorbeeld) wordt toegekend aan een specifiek persoon en/of een gebruikersgroep.

Naar wie een mail wordt verstuurd gaat in principe automatisch. Indien het betreffende item aan een specifieke gebruiker is toegekend, zal de mail naar deze persoon verstuurd worden. Indien het item niet aan een specifieke gebruiker is toegekend maar aan een groep, dan zal naar alle leden van deze groep een mail verstuurd worden (voor zover er een e-mailadres beschikbaar is).

Daarnaast is er nog een specifieke instelling (SendToGroupNotUser) om toch naar de leden van de groep een e-mail te sturen in plaats van de gebruiker, op het moment dat het item aan een specifieke gebruiker is toegekend.

Configuratie

Workflow triggers worden geconfigureerd in het triggers veld voor de betreffende workflow, i.h.a. de Complete workflow. In onderstaand voorbeeld is de SendMail trigger geconfigureerd.

<triggers xmlns="http://smartsite.nl/namespaces/workflowtriggers/1.0">
  <trigger type="Smartsite.Cms.Workflow.SendMail, CmsServer" async="true" tostate="Assigned" targetstate="Assigned">
    <parameters>
    </parameters>
  </trigger>
</triggers>

De trigger wordt aangeroepen op het moment dat een item aan een specifieke gebruiker of een groep wordt toegekend (door zowel targetstate als tostate op te geven wordt de trigger op het juiste moment uitgevoerd).

Verder zijn er diverse instellingen om o.a. het mail subject op te geven, de mail html template, de inhoud van de mail, etc. Indien er geen parameters worden opgegeven, wordt er gebruik gemaakt van interne default teksten en templates, e.e.a. afhankelijk van de targetstate.

Parameters

De volgende parameters worden ondersteund door de SendMail workflow trigger.

mailsubject

Met deze parameter kan het mail subject worden ingesteld. In de opgegeven tekst kan gebruik gemaakt worden van placeholders voor bijvoorbeeld de titel en het nummer van het item (zie verderop).

mailtemplate

De optionele mailtemplate parameter is geen vaste tekst maar moet een code bevatten van een item binnen Smartsite waarin de mailtemplate is vastgelegd. Als deze parameter niet is opgegeven wordt de built-in html template gebruikt.

mailbody

Middels de optionele mailbody parameter kan de inhoud van de mail opgegeven worden. Ook in dit geval is dat geen vaste tekst, maar moet het een code bevatten van een item binnen Smartsite. Als deze parameter niet is opgegeven wordt gebruikt gemaakt van built-in mailbody templates (targetstate afhankelijk).

Ook binnen de mailbody kunnen placeholders gebruikt worden, zie verderop.

SendToGroupNotUser

Instelling om toch naar de leden van de groep een e-mail te sturen, ook al is het item aan een specifieke gebruiker toegekend.

Placeholders

In zowel het subject als de inhoud van de e-mail kunnen placeholders gebruikt worden. De beschikbare placeholders worden hier beschreven.

Placeholder Omschrijving
{itemname} De title van het betreffende item. 
{itemnumber}  Het nummer van het betreffende item. 
{managerurl}  De url naar de manager. 
{fullname}  De "fullname" van de specifieke gebruiker naar wie de mail verstuurd wordt. 

Voorbeeld

Onderstaand een voorbeeld van een mailbody, waarin deze placeholders gebruikt worden.

 <h1>Beste {fullname}</h1>
<p>Item {itemname} ({itemnumber}) is afgekeurd.</p>
<p>Ga naar {managerurl}?id={itemnumber} om het item te bekijken en te bewerken.</p>