Árvore de páginas

Índice

Introdução

Diversos e-mails são disparados no Fluig, variando de notificações simples a alertas urgentes. O onNotify é um evento global do Fluig que pode ser criado para interceptar notificações padrão do Fluig, permitindo alterações ou a geração de logs.

Sintaxe

funcion onNotify(subject, receivers, template, params) {
}

Parâmetros

subject

Uma lista de string que, quando adicionada algum item, modifica o assunto do e-mail para todos os destinatários. Apesar de ser uma lista, apenas o primeiro item da lista será considerado. Então, caso sejam adicionados dois assuntos, somente o primeiro item será usado.

receivers

Uma lista de Strings com os e-mails dos destinatários. Também é possível adicionar outros e-mails, de usuários do sistema ou mesmo e-mails externos, caso seja necessário notificar uma pessoa que não tenho acesso ao sistema.

template

Uma String contendo o código do template (ou tipo) de e-mail que está sendo enviado, permitindo que seja alterado apenas um tipo específico de e-mail. É recomendável que sempre seja verificado o código do template, para evitar que ocorram alterações em outros tipos de e-mail, que não necessitariam de personalização. Este parâmetro é fixo e alterações nele não mudaram o tipo de template a ser utilizado.

params

É um mapa de dados que permite alterar/incluir parâmetros para que sejam apresentados no e-mail. O nome dos parâmetros informados nesse mapa devem ser os mesmos que são utilizados dentro do arquivo de template.

Exemplos

Alterando o Assunto quando o e-mail for do tipo "Tarefa sob sua responsabilidade em atraso"

function onNotify(subject, receivers, template, params) {
	if (template.equals("TPLOVERDUE_TASK_USER_RESPONSIBLE") != null) {
		log.info("Modificando o assunto do e-mail para 'URGENTE: Uma tarefa que você é responsável está atrasada');
		subject.add("URGENTE: Uma tarefa que você é responsável está atrasada");
	}
}

Adicionando um destinatário quando o e-mail for do tipo "Notificação de nova atividade sob sua gerência"

function onNotify(subject, receivers, template, params) {
	if (template.equals("TPLPROCESS_NEW_STATE_TO_MANAGER") != null) {
		log.info("Adicionando o e-mail '[email protected]' a lista de destinatários da notificação de 'Nova atividade sob sua gerência'");
		receivers.add("[email protected]");
	}
}

Adicionando um parâmetro o e-mail for do tipo "Solicitação cancelada"

function onNotify(subject, receivers, template, params) {
	if (template.equals("TPLPROCESS_CANCELED") != null) {
		log.info("Adicionando o parâmetro 'MEU_CAMPO' com o valor 'VALOR'");
		params.put("MEU_CAMPO","VALOR");
	}
}