Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Notificações Alerts

Como configurar

Primeira coisa é rodar o check DS para confirmar se não tem nenhum coluna do alerts a ser criada.

Criar um Grupo ou Tópico no Alerts

Antes de enviar de fato é necessário configurar um Grupo ou Tópico no Alerts para enviar mesmo que seja para um usuário, a ideia principal é utilizar essa estrutura de agrupamento.

Se o cliente usar o Alerts vai ter um menu exclusivo Simova Alerts selection_001.png

Criar Usuário

No NFS acesse Simova Alerts > Usuários SimovaAlerts

ao criar um usuário o Tipo Usuário deve ser NFS, se for Externo não vai funcionar, e depois selecionar o usuário.

Se o Grupo já existir é possível selecionar ele na Aba de Associações.

Criar Grupo

No NFS acesse Simova Alerts > Grupo de Usuários Simova Alerts

ao criar o grupo além da associações que tem um item obrigatório é necessário marcar a flag

Notificar Push ao Painel Web igual a verdadeiro.

Se o usuário já existir é possível adicionar na Aba de Associações.

Criar Tópico

No NFS acesse Simova Alerts > Tópicos de envio ao Simova Alerts

ao criar o grupo além da associações que tem um item obrigatório é necessário marcar a flag

Notificar Push ao Painel Web igual a verdadeiro.

Se o Grupo já existir é possível adicionar na Aba de Associações.

Como enviar

Para enviar pelo entry point pode ser enviado para um grupo ou tópico

Grupo

$result = Alerts::sendNotificationToGroup(
	'DESCRICAO_GRUPO',
  'TITULO', 
  'CORPO_HTML',
  $arrayOptions
 );
 
// Exemplo
$result = Alerts::sendNotificationToGroup(
  'TEST_GROUP',
  'Teste alerts '.date('d/m/Y H:i:s'),
  '<h2>My html body</h2>',
  ['TYPE_WEB_NOTIFY' => 2, 'NOTIFY_DISPLAY_TIME' => 10]
 );

Tópico

$result = Alerts::sendNotificationToTopic(
	'TEST_TOPIC',
  'TITULO', 
  'CORPO_HTML',
  $arrayOptions
 );
 
// Exemplo
Alerts::sendNotificationToTopic(
	'NOTIFICCO',
  'Teste alerts '.date('d/m/Y H:i:s'), 
  '<h2>My html body</h2>',
  ['TYPE_WEB_NOTIFY' => 2]
 );

Parâmetros

TYPE_WEB_NOTIFY : padrão = 0

É o tipo da notificação web que será exibida, pode ser os seguintes valores:

  • 0 : success, vai exibir uma mensagem de sucesso verde
  • 1 : warning, vai exibir uma mensagem de atenção laranja/amarelo
  • 2 : error, vai exibir uma mensagem de erro vermelha
  • 3 : info, vai exibir uma mensagem de informação

Se essa flag não for passada o padrão é success.

NOTIFY_DISPLAY_TIME : padrão = 3

É o tempo de exibição da notificação, pode acontece de o cliente mesmo ter o desejo de deixar notificações de erros sendo exibidas com maior tempo do que de sucesso para realmente chamar a atenção do usuário do painel.

Se esse parâmetro não for passado o valor padrão é 3.

WebPush

Notificações do navegador, podem ser recebidas fora da página do NFS.

Tabela nfs_web_push_notification precisa estar devidamente criada (check DS) para armazenar o endereço do navegador e realizar o envio da notificação.

Exemplo notificação windows 11 Alerta visual e sonoro notificacao_w11.png

Exemplo pós-alerta (sessão de notificações não lidas/visualizadas) notificacao_w11_lateral.png

A notificação web push enviada para o navegador poderá ser configurada NFS adicionando os seguintes parametros ao envio convencional do Alerts:

Grupo

Alerts::sendNotificationToGroup(
   'AL_TRANSPORTES_LTDA',
   'Título notificação '.date('d/m/Y H:i:s'),
   '<h2>Alerta push</h2>',
   ['TYPE_WEB_NOTIFY' => 2, 
   'NOTIFY_DISPLAY_TIME' => 5, 
   'PUSH' => true, /* opção que habilita o envio */
   'PUSH_TITLE' => 'Título', 
   'PUSH_BODY' => 'Corpo da notificação',
   'PUSH_URL' => 'https://www.google.com', 
   'PUSH_ICON' => './assets/img/webpush/captain_simova.png']
);

Tópico

Alerts::sendNotificationToTopic(
     'NOTIFICCO',
   'Teste alerts '.date('d/m/Y H:i:s'),
   '<h2>My html body</h2>',
   ['TYPE_WEB_NOTIFY' => 2,     
   'PUSH' => true, /* opção que habilita o envio */
   'PUSH_TITLE' => 'Título',
   'PUSH_BODY' => 'Corpo da notificação',
   'PUSH_URL' => 'https://www.google.com', 
   'PUSH_ICON' => './assets/img/webpush/captain_simova.png'] 
  );

  • PUSH: Opção que habilita o envio da notificação também para o navegador, o comportamento padrão é mantido e passa a enviar a notificação também para os navegadores.
  • PUSH_TITLE: Substitui o título padrão para um texto que pode ser personalizado.
  • PUSH_BODY: Substitui o corpo padrão para um texto que pode ser personalizado.
  • PUSH_URL: Quando omitida essa propriedade ao clicar na notificação será aberta a rota "/nfs../assets/images/notifications", pode ser configurado "/" para direcionar a Home, ou incluir uma url completa para que seja feito o redirecionamento pra ela.
  • PUSH_ICON: Permite incluir um icone a notificação, mantendo o padrão do exemplo pode-se usar uma das imagens disponibilizadas pelo core.

Icons (Web Push Notify):

Ícones disponíveis para notificação (pb = preto e branco), pode receber link externo, precisa ser 192x192px.

  • Simova: './assets/img/webpush/simova.png'
  • Capitão simova: './assets/img/webpush/captain_simova.png'
  • Alerts: './assets/img/webpush/alerts.png'
  • SmartOS: './assets/img/webpush/smartos.png' ou './assets/img/webpush/smartos_pb.png'
  • Bob Agro: './assets/img/webpush/bobagro.png' ou './assets/img/webpush/bobagro_pb.png'
  • Contru Mobil: './assets/img/webpush/construmobil.png' ou './assets/img/webpush/construmobil_pb.png'

Comportamento (Web Push Notify):

Notificações web são enviadas para um determinado dispositivo/browser, o envio é independente de usuário logado NFS.

O navegador do usuário precisa estar com as notificações habilitadas para o domínio para que os dados do endpoint do dispositivo seja salvo e vinculado ao usuário simova.

Com o navegador habilitado a exibir notificações de xxx.simova.cloud, quando o usuário fizer o login, os dados do depoente do dispositivo serão atribuídos ao usuário que fez login, e a partir daí qualquer notificação que esse usuário receber pelo NFS uma notificação push será enviada para esse dispositivo.

A notificação chega independente do usuário estar logado ou não no NFS, estar com o NFS aberto ou não no navegador, porém o browser precisa estar em execução para que a notificação chegue corretamente.

Compartilhamento de dispositivos (Web Push Notify):

Cada usuário NFS só terá um endpoint vinculado ao seu usuário.

O NFS nunca permitirá dois usuários vinculados ao mesmo endpoint (dispositivo), ou seja, se eu logar no google chrome em uma determinada máquina que está com as notificações habilitadas, o endpoint desse dispositivo ficará atrelado ao meu usuário NFS, fazendo com que qualquer notificação enviada para meu usuário NFS chegue nesse dispositivo que acabei de logar e para mais nenhum, se outro usuário logar nesse mesmo dispositivo, também no google chrome, o meu usuário que antes estava vinculado a essa máquina ficará sem nenhum dispositivo vinculado, e o dispositivo passa a estar vinculado ao usuario que fez o login depois.

O mesmo se aplica para browsers, se eu habilitei para receber notificações tanto no chrome quanto no Edge, minhas notificações chegarão no último navegador que eu loguei, abordagem necessária para que não fiquem chegando notificações duplicadas ou triplicadas no mesmo dispositivo.

Uma forma de reduzir problemas, é orientar usuários com relação a máquinas compartilhadas sugerindo que não seja habilitado as notificações web push em navegadores cujo a máquina é compartilhada, o interessante é usar o recurso em dispositivos individuais.

Acesso a Noticações

Vai aparecer um ícone de um sino ao lado do logo da Empresa, onde vai mostrar a quantidade total de mensagens não lidas.

A mensagem ao ser enviada só mostrar uma vez e depois fica no contador até o usuário ler nesse popup ou acessar a tela de Notificações. {.is-warning}

É possível pesquisar pelo título e/ou corpo da mensagem, então se você colocar o horário 18:01:16 vai filtrar por todas as mensagens desse horário ou pelo corpo da mensagem ERROuuu segue a mesma ideia.

screenshot_from_2021-08-16_09-50-50.png

Para acessar a Tela de Notificações é possíl ir em ver todas no popup que é exibido ao clicar no sino ou clicar no nome do usuário e ir em Notificações.

screenshot_from_2021-08-16_09-51-27.png

Acreditamos que seja bom ter um local onde possa ser vista todas as mensagem enviadas, é sempre mostrado primeiro as Não lida e ao clicar é exibido seu conteúdo com outras informações como o horário de Envio e Leitura.

screenshot_from_2021-08-16_09-51-53.png