Skip to content

Nvoip/nvoip-zabbix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nvoip-zabbix

CI Nvoip API v2 Docs Postman Stack License: GPL-3.0

Integração oficial da Nvoip para alertas do Zabbix via API v2 com SMS e torpedo de voz.

O que mudou

Os scripts antigos usavam a API v1 com token_auth.

Esta versão já usa:

  • OAuth da API v2
  • numbersip + user-token
  • endpoint /v2/sms
  • endpoint /v2/torpedo/voice

Arquivos principais

  • Scripts/send_sms_nvoip_zabbix.sh
  • Scripts/send_torpedovoz_nvoip_zabbix.sh
  • Scripts/nvoip_zabbix_common.sh
  • Scripts/check_nvoip_zabbix_config.sh
  • templates/media-types.md

Variáveis de ambiente necessárias

Defina no host do Zabbix ou no ambiente do serviço:

export NVOIP_NUMBERSIP="seu_numbersip"
export NVOIP_USER_TOKEN="seu_user_token"
export NVOIP_OAUTH_CLIENT_ID="seu_client_id"
export NVOIP_OAUTH_CLIENT_SECRET="seu_client_secret"
export NVOIP_CALLER="1049"
export NVOIP_SMS_MAX_CHARS="160"

Não use Basic Auth fixo salvo em arquivo. Os scripts montam o cabeçalho OAuth em tempo de execução a partir de NVOIP_OAUTH_CLIENT_ID e NVOIP_OAUTH_CLIENT_SECRET.

Instalação

  1. Copie os scripts para o AlertScriptsPath do seu Zabbix, normalmente /usr/lib/zabbix/alertscripts.
  2. Ajuste permissões para o usuário do serviço Zabbix.
  3. Garanta que curl, sed, base64 e cut estejam disponíveis.
  4. Defina as variáveis de ambiente no serviço do Zabbix ou em arquivo carregado pelo serviço.
  5. Configure os Media Types com base em templates/media-types.md.

Exemplo de instalação:

sudo cp Scripts/*.sh /usr/lib/zabbix/alertscripts/
sudo chown zabbix:zabbix /usr/lib/zabbix/alertscripts/*.sh
sudo chmod 750 /usr/lib/zabbix/alertscripts/*.sh

Teste sem enviar SMS ou torpedo:

/usr/lib/zabbix/alertscripts/check_nvoip_zabbix_config.sh

Media Types

SMS Nvoip

  • Script: send_sms_nvoip_zabbix.sh
  • Parâmetros:
    • {ALERT.SENDTO}
    • {ALERT.SUBJECT}
    • {ALERT.MESSAGE}
    • {HOST.NAME1}

Torpedo de Voz Nvoip

  • Script: send_torpedovoz_nvoip_zabbix.sh
  • Parâmetros:
    • {ALERT.SENDTO}
    • {ALERT.SUBJECT}
    • {ALERT.MESSAGE}

Teste manual

Scripts/send_sms_nvoip_zabbix.sh "11999999999" "Teste Zabbix" "Mensagem de teste" "zabbix-server"
Scripts/send_torpedovoz_nvoip_zabbix.sh "11999999999" "Teste Zabbix" "Mensagem de teste"

Observações

  • o token OAuth é gerado em cada execução do script
  • isso simplifica a configuração e evita depender de token manual expirado
  • o SMS é limitado a 160 caracteres por padrão por causa da regra do endpoint /sms
  • para uso muito intenso, vale considerar cache local de token com controle de expiração

Links oficiais

About

Zabbix media type scripts for Nvoip API v2 alerts over SMS and voice using OAuth.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages