Email não é notificação em tempo real. Para um técnico saber na hora que um chamado mudou, o aviso precisa aparecer dentro do GLPI. Duas soluções resolvem isso por caminhos opostos: o plugin Unread destaca nas listagens o que ainda não foi visto, e o módulo Smart Notify (NexTool) coloca um sino global na navbar, com som e preferências por usuário. E há um fator que decide antes de qualquer recurso: a versão do GLPI que você opera.
O contexto: por que só email não basta
No GLPI padrão, toda notificação sai por email. Na prática, o técnico que fica com o sistema aberto o dia inteiro acaba tendo que:
- Alternar entre a fila do GLPI e a caixa de entrada o tempo todo;
- Garimpar os emails do GLPI no meio de dezenas de outros;
- Clicar no link do email só para voltar a um chamado que já estava na tela.
O resultado é conhecido: resposta atrasada, follow-up que ninguém viu, validação parada esperando um clique. A notificação interna corta esse vai-e-volta - mas "interna" tem dois significados bem diferentes, e é justamente aí que os dois plugins divergem.
Duas filosofias diferentes
Unread é um plugin da comunidade com escopo enxuto: marcar visualmente, nas listagens, os itens (chamados, follow-ups) que você ainda não abriu. É passivo - o destaque aparece quando você já está olhando a lista. Não tem som, não tem sino, não tem preferência por usuário. A grande vantagem é o custo operacional próximo de zero: nada roda em segundo plano.
Smart Notify (módulo do NexTool, GLPI 11) é ativo. Ele agrega 11 fontes de evento que já existem no GLPI - follow-ups, tarefas, validações e soluções de chamados, problemas e mudanças, mais documentos anexados e avisos manuais do administrador - e apresenta tudo num sino na navbar, visível em qualquer tela. Traz contador de não-lidas, som por prioridade, sincronização entre abas e um painel de preferências onde cada técnico liga ou desliga o que quer receber. Um ponto importante: ele não cria eventos novos, apenas reúne e sinaliza o que o GLPI já registrou.
Comparativo direto
| Critério | Smart Notify (NexTool) | Unread |
|---|---|---|
| Natureza | Módulo NexTool para GLPI 11 | Plugin da comunidade |
| Onde o aviso aparece | Sino global na navbar, em qualquer tela | Destaque na listagem de itens |
| Modelo de atualização | Polling em segundo plano (15 a 120s) | Ao carregar a listagem |
| Fontes de evento | 11 (follow-up, tarefa, validação, solução, documento e avisos manuais de chamado/problema/mudança) | Leitura / não-leitura de itens |
| Som por prioridade | Sim (4 tons: subtle, default, alert, alarm) | Não |
| Preferências por usuário | Sim (11 tipos + som, por técnico) | Não |
| Sincronização entre abas | Sim (BroadcastChannel + fallback localStorage) | Não |
| Separador "Novas mensagens" na timeline | Sim | Não |
| Indicador nas listagens | Pontos vermelhos por item não lido | Destaque da linha/item |
| Aviso manual do administrador (broadcast) | Sim (targeting: todos, usuário, grupo, entidade) | Não |
| Limpeza automática | Sim (cron diário, retenção configurável) | Não se aplica |
| Custo no banco por usuário ativo | 1 consulta por ciclo de polling | Próximo de zero em segundo plano |
| GLPI suportado | 11 (glpi_major 11 no manifesto) | Depende da versão do plugin instalado |
| Preço | Gratuito | Gratuito |
O trade-off que importa na operação
Na sustentação de GLPI para clientes, o ponto que sempre aparece não é a lista de recursos - é o custo do polling. O Smart Notify atualiza o sino por polling (intervalo configurável de 15 a 120 segundos), não por WebSocket. Cada técnico com a tela aberta dispara uma consulta ao banco a cada ciclo. Numa operação com dezenas de técnicos simultâneos, deixar o intervalo em 15s multiplica essas queries sem ganho real de percepção. Por isso, em produção, calibramos entre 30 e 45 segundos: é imperceptível para o usuário e mantém o banco tranquilo. O módulo ajuda de dois jeitos - pausa o polling quando a aba fica inativa (evento visibilitychange) e chama session_write_close() logo no início da requisição de leitura, para o poll não ficar preso atrás do lock da sessão do próprio usuário.
O erro mais comum que vemos no suporte é o técnico reclamar que "não recebe notificação do próprio follow-up". Isso é proposital: o Smart Notify exclui as ações do próprio usuário - você não é avisado do que você mesmo escreveu. Outro ajuste que sempre fazemos é desligar a notificação de documentos por padrão (ela é ruidosa em instância que anexa muito arquivo) e manter só os eventos que geram ação. E o fator que decide o projeto antes de tudo: Smart Notify é GLPI 11. Se o cliente ainda está no GLPI 10, a conversa muda - o realista ali é o Unread (ou um destaque em lista equivalente), porque o sino não roda no 10.
Configuração que usamos em produção
# Smart Notify - configuracao base (GLPI 11)
# Painel NexTool > Modulos > Smart Notify > aba Configuracoes
refresh_interval = 30 # segundos (faixa 15-120); 30-45 e o ponto de equilibrio
max_notifications = 50
retention_days = 90 # limpeza automatica via cron smartnotify_cleanup
notify_document = 0 # off: anexos geram muito ruido
notify_new_problem = 0 # off: evento pouco frequente
sound_urgent = alarm # tons por prioridade: subtle | default | alert | alarm
# 1) Conferir o config efetivo direto no banco
SELECT config FROM glpi_plugin_nextool_main_modules WHERE module_key = 'smartnotify';
# 2) Resetar o OPcache do FPM apos ativar/atualizar (validate_timestamps=Off)
docker exec glpi_app_prod kill -USR2 $(docker exec glpi_app_prod pgrep -o php-fpm)
# 3) Confirmar a limpeza automatica no GLPI:
# Configuracao > Acoes automaticas > smartnotify_cleanup
Veredito por cenário
Escolha o Smart Notify quando: a operação roda em GLPI 11, os técnicos ficam com a interface aberta o dia todo, há múltiplas entidades e perfis, e você precisa de um aviso ativo (sino + som) com preferência por pessoa e broadcast do administrador. É o cenário de service desk com volume, onde perder um follow-up custa SLA.
Escolha o Unread quando: você está em GLPI 10, ou quer apenas destacar o que não foi visto nas listagens sem nada rodando em segundo plano, ou a equipe é pequena e o email já dá conta do aviso - o Unread resolve só o "o que ainda não abri". É a opção de footprint mínimo.
Os dois não são concorrentes diretos: o Unread cobre um pedaço (não-leitura em lista) que o Smart Notify também entrega, com pontos vermelhos nas listagens e separador "Novas mensagens" na timeline. Rodar os dois juntos no GLPI 11 é redundância - escolha um.
Custo e esforço
Os dois são gratuitos. O esforço é que difere: o Unread instala e pronto, sem configuração e sem manutenção. O Smart Notify exige uma configuração inicial (intervalo de polling, tipos de evento, perfis autorizados) e tem uma tarefa de cron (smartnotify_cleanup) que limpa notificações lidas e logs conforme a retenção - roda diária, sem intervenção. Depois de calibrado também é "instala e esquece", mas a calibragem do polling e dos tipos é o que separa uma implantação boa de uma barulhenta.
Precisa de notificação também fora do GLPI - WhatsApp, Telegram, Teams? O sino resolve quem está dentro do sistema; para alcançar quem está fora, combine com os módulos de notificação externa do NexTool. Se quiser, ajudamos a desenhar a régua de avisos na sustentação do seu GLPI.
Revisado pela equipe NexTool Solutions.