Usar metadatos en una notificación por correo electrónico

Usar metadatos para rellenar información en una notificación de correo electrónico del flujo de trabajo de formularios

Puede utilizar el paso Asignar tarea para crear y asignar tareas a un usuario o grupo. Cuando se asigna una tarea a un usuario o grupo, se envía una notificación por correo electrónico al usuario definido o a cada miembro del grupo definido. Una notificación por correo electrónico contiene el vínculo de la tarea asignada y la información relacionada con la tarea.

Puede utilizar metadatos en una plantilla de correo electrónico para rellenar dinámicamente la información en una notificación por correo electrónico. Por ejemplo, el valor del título, la descripción, la fecha de vencimiento, la prioridad, el flujo de trabajo y la última fecha de la siguiente notificación de correo electrónico se seleccionan de forma dinámica en el tiempo de ejecución (cuando se genera una notificación por correo electrónico).

default-email-template

Los metadatos se almacenan en pares clave-valor. Puede especificar la clave en la plantilla de correo electrónico y la clave se sustituye por un valor en tiempo de ejecución (cuando se genera una notificación por correo electrónico). Por ejemplo, en el siguiente ejemplo de código, "$ {workitem_title}" es una clave. Se reemplaza con el valor "Loan-Request" en tiempo de ejecución.

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\

Uso de metadatos generados por el sistema en una notificación por correo electrónico

Una aplicación de AEM Forms proporciona varias variables de metadatos (pares clave-valor) listas para usar. Puede utilizar estas variables en una plantilla de correo electrónico. El valor de la variable se basa en la aplicación de formularios asociada. La siguiente tabla enumera todas las variables de metadatos disponibles de forma predeterminada:

Clave Descripción
elemento de trabajo_título Título de la aplicación de formularios asociada.
workitem_url URL para acceder a la aplicación de formularios asociada.
workitem_description Descripción de la aplicación de formularios asociada.
workitem_priority Prioridad especificada para la aplicación de formularios asociada.
workitem_due_date Última fecha para actuar en la aplicación de formularios asociada.
workitem_workflow Nombre del flujo de trabajo asociado a la aplicación de formularios.
workitem_assign_timestamp Fecha y hora en que se asignó el elemento de flujo de trabajo al usuario asignado actual.
workitem_assignee Nombre del cesionario actual.
host_prefix URL del servidor de creación. Por ejemplo, https://10.41.42.66:4502
publish_prefix URL del servidor de publicación. Por ejemplo, https://10.41.42.66:4503

Uso de metadatos personalizados en una notificación por correo electrónico

También puede utilizar metadatos personalizados en una notificación por correo electrónico. Los metadatos personalizados contienen información además de los metadatos generados por el sistema. Por ejemplo, los detalles de directivas recuperados de una base de datos. Puede utilizar un paquete ECMAScript o OSGi para agregar metadatos personalizados en el repositorio crx:

Usar ECMAScript para agregar metadatos personalizados

ECMAScript es un lenguaje de script. Se utiliza para scripts del lado del cliente y aplicaciones de servidor. Realice los siguientes pasos para utilizar ECMAScript para agregar metadatos personalizados a una plantilla de correo electrónico:

  1. Inicie sesión en CRX DE con una cuenta administrativa. La URL es https://[server]:[port]/crx/de/index.jsp.

  2. Vaya a /apps/fd/dashboard/scripts/metadataScripts. Cree un archivo con la extensión .ecma. Por ejemplo, usermetadata.ecma

    Si la ruta mencionada anteriormente no existe, créela.

  3. Agregue código al archivo .ecma que tenga la lógica de generar metadatos personalizados en pares clave-valor. Por ejemplo, el siguiente código ECMAScript genera metadatos personalizados para una póliza de seguro:

    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;
    }
    
  4. Haga clic en Guardar todo. Ahora, la secuencia de comandos está disponible para su selección en AEM modelo de flujo de trabajo.

    assigntask-metadata

  5. (Opcional) Especifique el título de la secuencia de comandos:

    Si no especifica el título, el campo Metadatos personalizados muestra la ruta completa del archivo ECMAScript. Siga estos pasos para especificar un título significativo para la secuencia de comandos:

    1. Expanda el nodo del script, haga clic con el botón derecho en el nodo jcr:content y haga clic en Mixins.

    2. Mezcla de tipos:título en el cuadro de diálogo Editar mezclas y haga clic en +.

    3. Agregue una propiedad con los siguientes valores.

      Nombre jcr:title
      Tipo Cadena
      Valor Especifique el título de la secuencia de comandos. Por ejemplo, metadatos personalizados para el titular de la directiva. El valor especificado se muestra en el paso asignar tarea.

Usar un paquete OSGi y la interfaz Java para agregar metadatos personalizados

Puede utilizar la interfaz Java WorkitemUserMetadataService para agregar metadatos personalizados para plantillas de correo electrónico. Puede crear un paquete OSGi que utilice la interfaz Java WorkitemUserMetadataService e implementarla en el servidor de AEM Forms. Hace que los metadatos estén disponibles para su selección en el paso Asignar tarea .

Para crear un paquete OSGi con la interfaz Java, agregue SDK de cliente de AEM Forms jar y tarro de granito archivos como dependencias externas al proyecto de paquete OSGi. Puede utilizar cualquier IDE de Java para crear un paquete OSGi. El siguiente procedimiento proporciona los pasos para utilizar Eclipse para crear un paquete OSGi:

  1. Abra Eclipse IDE. Vaya a Archivo > Nuevo proyecto.

  2. En la pantalla Seleccionar un asistente, seleccione Proyecto Maven y haga clic en Siguiente.

  3. En este nuevo proyecto llamado Maven, mantenga los valores predeterminados y haga clic en Siguiente. Seleccione un arquetipo y haga clic en Siguiente; por ejemplo, maven-archetype-quickstart. Especifique el ID de grupo, el ID de artefacto, la versión y el paquete del proyecto y haga clic en Finalizar. El proyecto se ha creado.

  4. Abra el archivo pom.xml para editarlo y reemplace todo el contenido del archivo por lo siguiente:

    
    
  5. Agregue código fuente que utilice la interfaz Java WorkitemUserMetadataService para agregar metadatos personalizados para plantillas de correo electrónico. A continuación se muestra un ejemplo de código:

    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;
      }
    }
    
  6. Abra un símbolo del sistema y vaya al directorio que contiene el proyecto del paquete OSGi. Utilice el siguiente comando para crear el paquete OSGi:

    mvn clean install

  7. Cargue el paquete en un servidor de AEM Forms. Puede utilizar AEM Administrador de paquetes para importar el paquete en el servidor de AEM Forms.

Una vez importado el paquete, puede seleccionar los metadatos en el paso Asignar tarea y utilizarlos en una plantilla de correo electrónico.

En esta página