Enviando e-mails via javascript em workflows Activiti no Alfresco
- Escrito por Marcio Junior Vieira
- Publicado em Tutoriais Alfresco ECM e BPM
- Hits: 2345
É possível enviar emails em diversos pontos de uma tarefa no Workflow do Alfresco / Activiti, porém alguns pontos devem estar bem claros para usar estes recursos.
Eventos de Execução - Event
Um User Task assim como outros elementos da BPMN podem ter 3 eventos (Event) que podemos adicionar uma regra usando Alfresco Javascript API:
- create - Executa no momento de criação da tarefa (logo após a finalização da anterior).
- complete - Executa no momento de finalização de uma tarefa.
- all - Neste caso é executado nos dois momentos (create e complete).
JavaScript para Envio de Email - Com e-mail fixo
Deve ser adicionado a um dos 3 eventos a regra a seguir em JavaScript a seguir, neste exemplo estamos adicionando o envio fixo para o email informado na regra, com a opção Alfresco Task script.
var mail = actions.create("mail"); // cria ação de email
mail.parameters.to = "Este endereço de email está sendo protegido de spambots. Você precisa do JavaScript ativado para vê-lo.";
mail.parameters.subject = "Uma Tarefa foi criada para seu usuário no Alfresco";
mail.parameters.from = "Este endereço de email está sendo protegido de spambots. Você precisa do JavaScript ativado para vê-lo."; // Deve ser o mesmo email configurado no SMTP no alfresco-global.properties.
mail.parameters.text = "Uma tarefa foi criada para o seu usuário, acesse o Alfresco no menu Tarefas";
mail.execute(bpm_package.children[0]); // executa ação contra um documento, neste caso o primeiro documento da lista anexa ao workflow
JavaScript para Envio de Email - Capturando variável de formulário.
Neste exemplos o Email e capturado do formulário vinculado ao Fluxo, o Form tem nome : wfap01 e o campo EMAIL , a seguir como foi definido no Content Model:
<property name="wfap01:EMAIL">
<title>E-MAIL</title>
<type>d:text</type>
<mandatory>true</mandatory>
</property>
para isso devemos usar o método getVariable e converter o resultado para String na regra JavaScript.
var mail = actions.create("mail"); // cria ação de email
mail.parameters.to = execution.getVariable("wfap01_EMAIL").toString();
mail.parameters.subject = "Uma Tarefa foi criada para seu usuário no Alfresco";
mail.parameters.from = "Este endereço de email está sendo protegido de spambots. Você precisa do JavaScript ativado para vê-lo."; // Deve ser o mesmo email configurado no SMTP no alfresco-global.properties.
mail.parameters.text = "Uma tarefa foi criada para o seu usuário, acesse o Alfresco no menu Tarefas";
mail.execute(bpm_package.children[0]); // executa ação contra um documento, neste caso o primeiro documento da lista anexa ao workflow
Sobre a Ambiente Livre
A Ambiente Livre é especialista em Open Source e Free Software e tem uma divisão especialista em ECM e BPM. Fornece implantação, integração, suporte, consultoria e treinamento em ECM e BPM com as plataformas Alfresco , Activiti, Flowable e Camunda a mais de 10 anos.
Já capacitou centenas de empresas para trabalhar com Business Intelligence, ECM, BPM, CRM e Big Data e usa uma metodologia própria de ensino.
Conheça também as divisões de Business Intelligence, CRM e CMS e Big Data e Data Science.