Histórico da Página
A partir da versão 1.2.0 é possível criar novas formas de envio notificações para os usuáriosdo Fluig. Isto pode ser feito através de aplicativos. Estes aplicativos podem ser instalados no Fluig e, a partir daí, o sistema utilizará o aplicativo para enviar notificações. Este tutorial tem o objetivo de ensinar passo-a-passo como criar, instalar e utilizar um aplicativo de envio de notificações no Fluig.
Projeto de exemplo
Para facilitar o entendimento e desenvolvimento de aplicativos, foi gerado um projeto de exemplo. Neste projeto, foi implementado um aplicativo que salva as notificações em arquivos ".txt". Para testá-lo, basta seguir os seguintes passos:
- Baixar o projeto: Clique aqui
- Condigurar no arquivo "/alert-sender-sample-impl/src/main/resources/config.properties" a pasta onde o aplicativo irá salvar as notificações
- Compilar o projeto (é um projeto padrão maven, para compilar, executar "mvn clean install" na raíz do projeto)
- Fazer deploy do arquivo "/alert-sender-sample-server/target/alert-sender-sample-server.ear" em um servidor com o Fluig instalado (não fazer este teste em produção!)
- Acessar o Fluig e gerar eventos que enviem notificações (ex. apoiar um post)
API de Notificações
Para trabalhar com notificações no Fluig, é necessário criar um projeto Java que será publicado no servidor do produto. Este projeto deve importar a API de Notificações, com o seguinte trecho de código no arquivo "pom.xml":
...
Para que um aplicativo possa ser utilizado pelo Fluig para enviar notificações, este deve ser cadastrado na Central de Notificações do sistema. Para isto, é necessário realizar uma chamada ao método " comcom.totvs.technology.foundation.alert.service.AlertAppSenderService.registerApplication()", presente na API de Notificações do Fluig. Abaixo um exemplo de código que realiza esta chamada:
Bloco de código | ||
---|---|---|
| ||
@EJB(lookup = AlertAppSenderService.JNDI_REMOTE_NAME) private AlertAppSenderService appSenderService; public void registerMyApplicationApplication() { appSenderService .registerApplication( "MyApplication", "My custom application to send notifications", "java:global/myapplication/MyApplication", myTenantId); } |
Os parâmetros necessários são:
- applicationKey: É uma String que servirá de identificador único para o aplicativo. Através desta String a Central de Notificações fará todo o gerenciamento do aplicativo.
- description: É a descrição do aplicativo. Pode ser um texto plano ou uma chave para tradução (ex: app.my.application). Para que seja feita a tradução, a chave deve estar previamente cadastrada no módulo I18n, no bundle "foundation_alert". Caso seja inserido um texto plano, este será exibido sem tradução.
- jndiName: É o nome JNDI que a Central de Notificações utilizará para fazer lookup e invocar o aplicativo para envio de notificações.
- tenantId: O id do tenant onde o aplicativo será instalado.
OBS: Uma boa prática é fazer o cadastro do aplicativo no momento do deploy no servidor ou no momento da criação de um novo tenant. O projeto de exemplo já contém código com este comportamento.