Utilisation de métadonnées dans une notification électronique use-metadata-in-an-email-notification
Utilisation de métadonnées pour renseigner des informations dans une notification électronique de processus de formulaires
Vous pouvez utiliser l’étape Affecter une tâche pour créer et affecter des tâches à un utilisateur ou à un groupe. Lorsqu’une tâche est assignée à un utilisateur ou à un groupe, une notification est envoyée par e-mail à l’utilisateur défini ou à chaque membre du groupe défini. Un notification électronique contient le lien de la tâche affectée et des informations relatives à la tâche.
Vous pouvez utiliser des métadonnées dans un modèle de courrier électronique pour remplir de manière dynamique les informations d’une notification électronique. Par exemple, la valeur du titre, de la description, de l’échéance, de la priorité, du workflow et de la dernière date dans la notification électronique suivante est sélectionnée dynamiquement au moment de l’exécution (lorsqu’une notification électronique est générée).
Les métadonnées sont stockées dans des paires clé-valeur. Vous pouvez spécifier la clé dans le modèle de courrier électronique et la clé est remplacée par une valeur au moment de l’exécution (lorsqu’une notification électronique est générée). Par exemple, dans l’exemple de code ci-dessous, la clé est « $ {workitem_title} ». Il est remplacé par la valeur "Demande de prêt" au moment de l’exécution.
subject=Task Assigned - ${workitem_title}
message=<html><body>\n\
<table>\n\
<tbody>\n\
<tr>\n\
<td>\n\
Sample Company\n\
</td>\n\
</tr>\n\
<tr>\n\
<td>\n\
<pre style="font-size: 13px; font-family: Helvetica, Arial, sans-serif; font-weight: normal; color: #323232;"> Hello ${workitem_assignee},\n\
The following task has been assigned to you:</pre>\n\
</td>\n\
</tr>\n\
<tr>\n\
<td>\n\
<table>\n\
<tbody>\n\
<tr style="border-bottom: solid 2px #FFFCF9;">\n\
<td> TITLE</td>\n\
<td>\n\
<p>${workitem_title}</p>\n\
</td>\n\
</tr>\n\
<tr style="border-bottom: solid 2px #FFFCF9;">\n\
<td> DESCRIPTION</td>\n\
<td>\n\
<p>${workitem_description}</p>\n\
</td>\n\
</tr>\n\
<tr style="border-bottom: solid 2px #FFFCF9;">\n\
<td> DUE DATE</td>\n\
<td>\n\
<p>${workitem_due_date}</p>\n\
</td>\n\
</tr>\n\
<tr style="border-bottom: solid 2px #FFFCF9;">\n\
<td> PRIORITY</td>\n\
<td>\n\
<p>${workitem_priority}</p>\n\
</td>\n\
</tr>\n\
<tr>\n\
<td> WORKFLOW</td>\n\
<td>\n\
<p>${workitem_workflow}</p>\n\
</td>\n\
</tr>\n\
</tbody>\n\
</table>\n\
</td>\n\
</tr>\n\
<tr style = "text-align: center; vertical-align: middle;">\n\
<td> \n\
<a href="${workitem_url}" target="_blank" style="background-color: #1EBBBB; font-size: 18px; line-height: 25px; font-weight: bold; color: #FFFFFF; text-decoration: none; padding: 15px 15px 15px 15px;">Open Task</a>\n\
</td>\n\
</tr>\n\
<tr>\n\
<td>\n\
<p><span style="font-size: 12px; font-weight: normal; font-style: italic; color: #919191;">This is an automatically generated email. Please do not reply to this email.</span></p>\n\
</td>\n\
</tr>\n\
</tbody>\n\
</table>\n\
</body>\n\
</html>\n\
Utilisation de métadonnées générées par le système dans une notification électronique using-system-generated-metadata-in-an-email-notification
Une application AEM Forms fournit plusieurs variables de métadonnées (paires clé-valeur) prêtes à l’emploi. Vous pouvez utiliser ces variables dans un modèle de courrier électronique. La valeur de la variable est basée sur l’application de formulaires associée. Le tableau suivant répertorie toutes les variables de métadonnées prêtes à l’emploi :
Utilisation de métadonnées personnalisées dans une notification électronique using-custom-metadata-in-an-email-notification
Vous pouvez également utiliser des métadonnées personnalisées dans une notification électronique. Les métadonnées personnalisées contiennent des informations en plus des métadonnées générées par le système. Par exemple, les détails de la stratégie récupérés à partir d’une base de données. Vous pouvez utiliser une offre groupée ECMAScript ou OSGi pour ajouter des métadonnées personnalisées dans le référentiel crx :
Utilisation de ECMAScript pour ajouter des métadonnées personnalisées use-ecmascript-to-add-custom-metadata
ECMAScript est un langage de script. Il est utilisé pour les applications de script et de serveur côté client. Pour utiliser ECMAScript afin d’ajouter des métadonnées personnalisées pour un modèle de courrier électronique, procédez comme suit :
-
Connectez-vous à CRX DE avec un compte d’administration. L’URL est
https://[server]:[port]/crx/de/index.jsp
-
Accédez à /apps/fd/dashboard/scripts/metadataScripts. Créez un fichier avec l’extension .ecma. Par exemple, usermetadata.ecma
Si le chemin d’accès mentionné ci-dessus n’existe pas, créez-le.
-
Ajoutez du code au fichier .ecma qui possède la logique pour générer des métadonnées personnalisées dans des paires clé-valeur. Par exemple, le code ECMAScript suivant génère des métadonnées personnalisées pour une police d’assurance :
code language-none function getUserMetaData() { //Commented lines below provide an overview on how to set user metadata in map and return it. var HashMap = Packages.java.util.HashMap; var valuesMap = new HashMap(); valuesMap.put("policyNumber", "2017568972695"); valuesMap.put("policyHolder", "Adobe Systems"); return valuesMap; }
-
Cliquez sur Enregistrer tout. Désormais, le script peut être sélectionné dans AEM modèle de workflow.
-
(Facultatif) Spécifiez le titre du script :
Si vous ne spécifiez pas le titre, le champ Métadonnées personnalisées affiche le chemin d’accès complet au fichier ECMAScript. Pour définir un titre significatif pour le script, procédez comme suit :
-
Développez le nœud du script, cliquez avec le bouton droit de la souris sur jcr:content, puis cliquez sur Mixins.
-
Type mix:title dans la boîte de dialogue Modifier les mixins, puis cliquez sur +.
-
Ajoutez une propriété avec les valeurs suivantes.
table 0-row-2 1-row-2 2-row-2 Nom jcr:title Type Chaîne Valeur Indiquez le titre du script. Par exemple, des métadonnées personnalisées pour le détenteur de la stratégie. La valeur spécifiée s’affiche à l’étape Affecter une tâche.
-
Utilisation d’un lot OSGi et d’une interface Java pour ajouter des métadonnées personnalisées use-an-osgi-bundle-and-java-interface-to-add-custom-metadata
Vous pouvez utiliser l’interface Java WorkitemUserMetadataService pour ajouter des métadonnées personnalisées pour les modèles de courrier électronique. Vous pouvez créer un lot OSGi qui utilise l’interface Java WorkitemUserMetadataService et le déployer sur le serveur AEM Forms. Les métadonnées peuvent être sélectionnées à l’étape Affecter une tâche .
Pour créer un lot OSGi avec une interface Java, ajoutez SDK client AEM Forms jar et jar granite comme dépendances externes au projet de bundle OSGi. Vous pouvez utiliser n’importe quel IDE Java pour créer un bundle OSGi. La procédure suivante décrit l’utilisation d’Eclipse pour créer un lot OSGi :
-
Ouvrez Eclipse IDE. Accédez à Fichier > Nouveau projet.
-
Sur l’écran de sélection de l’assistant, sélectionnez Projet Maven puis cliquez sur Suivant.
-
Sur le projet New Maven, conservez les valeurs par défaut, puis cliquez sur Suivant. Sélectionnez un archétype et cliquez sur Suivant. Par exemple, maven-archetype-quickstart. Indiquez l’ID de groupe, l’ID d’artefact, la version et le package du projet, puis cliquez sur Terminer. Le projet est créé.
-
Ouvrez le fichier pom.xml pour modifier et remplacer tout le contenu du fichier par ce qui suit :
code language-none -
Ajoutez le code source qui utilise l’interface Java WorkitemUserMetadataService pour ajouter des métadonnées personnalisées aux modèles de courrier électronique. Voici un exemple de code :
code language-java package com.aem.impl; import com.adobe.fd.workspace.service.external.WorkitemUserMetadataService; import org.apache.felix.scr.annotations.Component; import org.apache.felix.scr.annotations.Properties; import org.apache.felix.scr.annotations.Property; import org.apache.felix.scr.annotations.Service; import org.osgi.framework.Constants; import java.util.HashMap; import java.util.Map; @Component @Service @Properties({ @Property(name = Constants.SERVICE_DESCRIPTION, value = "A sample implementation of a user metadata service."), @Property(name = WorkitemUserMetadataService.SERVICE_PROPERTY_LABEL, value = "Default User Metadata Service")}) public class WorkitemUserMetadataServiceImpl implements WorkitemUserMetadataService { public WorkitemUserMetadataServiceImpl() {} public Map<String, String> getUserMetadataMap() { HashMap<String, String> metadataMap = null; metadataMap = new HashMap(); metadataMap.put("test_metadata", "tested-interface implementation"); return metadataMap; } }
-
Ouvrez une invite de commande et accédez au répertoire contenant le projet de bundle OSGi. Utilisez la commande suivante pour créer le lot OSGi :
mvn clean install
-
Chargez le lot sur un serveur AEM Forms. Vous pouvez utiliser AEM Package Manager pour importer le lot vers le serveur AEM Forms.
Une fois le bundle importé, vous pouvez sélectionner les métadonnées dans l’étape Affecter une tâche et les utiliser dans un modèle de courrier électronique.