Valoriser le formulaire à l’ouverture
Nous souhaitons renseigner automatiquement le sujet du mail, à l’ouverture du MailEditor, à partir de la valeur du tag Objet du courrier
. Nous devons ajouter l’option subject
au MailEditorPlugin :
To
et Cc
respectivement avec les options to
et cc
.
Appliquer automatiquement un modèle
Afin d’aider les utilisateurs dans la rédaction du contenu, un modèle peut être appliqué à celui-ci.
L’utilisateur peut sélectionner un des modèles disponibles depuis le MailEditor. Il est également possible d’appliquer automatiquement un modèle à l’ouverture du MailEditor.
Pour cela il est nécéssaire de renseigner l’identifiant du modèle au niveau de l’option template
du plugin. Dans le cadre de notre module, nous appliquerons automatiquement le modèle Corps par défaut
.
'template': '<templateId>'
signature
.
Restreindre les modèles proposés à l’utilisateur
Par défaut tous les modèles du scope sont sélectionnables depuis le MailEditor. Cependant il est possible de filtrer les modèles de corps de mail et de signatures disponibles grâce aux options respectives templates
et signatures
En prérequi de ce module, 2 templates de corps de mail ont été ajouté à votre scope. Vous devriez donc pouvoir les sélectionner au sein de l’éditeur de mail. Nous souhaitons maintenant restreindre les modèles disponibles dans l’éditeur au modèle Corps par défaut
.
Pour cela nous définirons le modèle qui pourra être proposé à l’utilisateur :
'templates': () => { return {
subscribe: subscriber => { subscriber([
{id:'EmailDefault', label:'Mon modèle'}
])}}
}
Utilisation des variables
Les variables utilisées au sein des modèles sont résolues automatiquement en fonction du context. Il est possible d’ajouter ou de surcharger ses variables en les ajoutant en options du MailEditorPlugin.
'<Nom de la variable>' : '<Valeur>'
Dans notre exemple nous souhaitons valoriser la variable team
, utilisée dans le modèle Corps par défaut
, avec la valeur Equipe des formateurs FlowerDocs
JSAPI.get().registerForComponentChange(function(api, results, phase) {
var actions = api.getActions().getHeaderActions();
var actionAPI = JSAPI.get().getActionFactoryAPI();
var action = actionAPI.buildMenu("send-email", labels.getLabel("sendEmail"), "fas fa-envelope-open-text", function(actionPresenter){
var objetCourrier = JSAPI.get().getComponentFormAPI(results.getId()).getComponent().getTagValue("ObjetCourrier");
new MailEditorPlugin({
'subject': 'Réponse '+ objetCourrier,
'template': 'EmailDefault',
'templates': () => { return {
subscribe: subscriber => { subscriber([
{id:'EmailDefault', label:'Mon modèle'}
])}}
},
'team': 'Equipe des formateurs FlowerDocs'
}).open();
});
actions.add(action);
});
Vous devez maintenant observer que la ligne du corps de mail Equipe FlowerDocs
a été surchargé par Equipe des formateurs FlowerDocs
lorsque vous ouvrez le MailEditor avec ce modèle.
Envoyer l’email
L’email est maintenant entièrement configuré, il est maintenant temps de l’envoyer. Pour cela, il faut spécifier la configuration du serveur SMTP à utiliser. Deux possibilités sont ainsi disponibles :
- Utiliser directement le serveur SMTP sans traitement préalable
- Traiter de manière applicative l’email pour un envoi depuis un processus Camunda
SMTP en direct
Afin d’utiliser directement le serveur SMTP sans traitement au préalable de l’email, ajoutez l’option configuration
en valorisant avec l’identifiant de la configuration SMTP à utiliser
JSAPI.get().registerForComponentChange(function(api, results, phase) {
var actions = api.getActions().getHeaderActions();
var actionAPI = JSAPI.get().getActionFactoryAPI();
var action = actionAPI.buildMenu("send-email", labels.getLabel("sendEmail"), "fas fa-envelope-open-text", function(actionPresenter){
var objetCourrier = JSAPI.get().getComponentFormAPI(results.getId()).getComponent().getTagValue("ObjetCourrier");
new MailEditorPlugin({
'subject': 'Réponse '+ objetCourrier,
'template': 'EmailDefault',
'templates': () => { return {
subscribe: subscriber => { subscriber([
{id:'EmailDefault', label:'Mon modèle'}
])}}
},
'team': 'Equipe des formateurs FlowerDocs',
'configuration': '<identifiant du serveur SMTP>'
}).open();
});
actions.add(action);
});
Traitement préalable et envoi à travers un processus Camunda
Il est possible d’effectuer un traitement de façon programmatique à l’envoi du mail puis d’utiliser un processus Camunda afin d’envoyer le mail.
Cela peut être utile par exemple pour conserver une trâce du mail envoyé en créant un composant avec le mail en contenu.
Pour cela, ajoutez l’option postProcessor
au plugin.