Ricezione di chiamate telefoniche con le notifiche Centreon

Bene, Bene… Le curve stanno arrivando… se si dispone di un sistema di monitoraggio Centreon, o basato su Nagios o simili, Potresti essere interessato a questo post. Quello che vedremo è come generare gli avvisi tradizionali del nostro monitoraggio, ma questa volta non utilizzeremo avvisi via email o Telegram, ma effettuerà una telefonata utilizzando un IP PBX che abbiamo nell'organizzazione, con esso ci chiamerà al numero di telefono che indichiamo e in perfetto spagnolo indicherà il problema che esiste.

 

Quindi quello che ho detto, se si dispone di un IP Voice PBX e si desidera che il monitoraggio sia in grado di effettuare telefonate per avvisare l'utente con un messaggio che il servizio o il server è andato giù, Basta seguire questi semplici passaggi. Se non hai un centralino VoIP, ti incoraggio a farlo Supporti FreePBX, vedrai quanto velocemente sarai in grado di effettuare chiamate IP vocali all'interno della tua organizzazione, o esterno se, ad esempio, usi la fibra Movistar, Vodafone… Ecco i passaggi che devi seguire sulla tua macchina Centreon se vuoi che sia in grado di effettuare chiamate automaticamente.

 

Abbiamo iniziato installando Festival e PJPROJECT che andremo a compilare:

[Codice sorgente]Yum Install Expect Festival
WGET HTTP://www.pjsip.org/release/2.8/pjproject-2.8.tar.bz2
tar xjf pjproject-2.8.tar.bz2
CD PJPROJECT-2.8
./Mettere
Fare dep
fare[/Codice sorgente]

 

Genererà questo binario per noi:

[Codice sorgente]/root/pjproject-2.8/pjsip-apps/bin/pjsua-x86_64-unknown-linux-gnu[/Codice sorgente]

 

Avremo bisogno di creare un file di configurazione per PJSUA, dove indicheremo l'accesso al nostro centralino IP con le credenziali corrette per registrarsi e poter effettuare chiamate. Nel mio caso lo lascio qui '/root/pjproject-2.8/pjsip-apps/bin/pjsua.conf’ e questo è il suo contenuto:

[Codice sorgente]–null-audio
–Registra SIP:DIRECCION_IP_CENTRALITA
–regno=*
–Vai sì:USUARIO@DIRECCION_IP_CENTRALITA
–nome utente UTENTE
–password PASSWORD[/Codice sorgente]

 

Ora, Quello che faremo è creare uno script che utilizzeremo per effettuare la chiamata, Nel mio caso un nome super intuitivo 'llama.sh', questo script verrà eseguito da Centreon quando deve notificare, al quale passerà come argomento il messaggio che deve leggerci nella chiamata. Indichiamo le directory per Expect, PJSUA e il suo file di configurazione che abbiamo appena creato; Possiamo anche aggiungere un file WAV con il suono di un avviso che suonerà prima dell'audio, indicheremo il percorso del binario Text2wave, la durata massima della chiamata e, naturalmente,, Il numero di telefono che devi comporre per effettuare la chiamata, infine l'indirizzo IP dell'IP PBX. Quindi quello che ho detto, Il contenuto di 'llama.sh’

[Codice sorgente]#! /bin/bash
EXPECT=/usr/bin/expect
PJSUA=/root/pjproject-2.8/pjsip-apps/bin/pjsua-x86_64-unknown-linux-gnu
PJSUACONFIG=/root/pjproject-2.8/pjsip-apps/bin/pjsua.conf
SOUNDFILE=/tmp/alert.wav
TEXT2WAVE=/usr/bin/text2wave
DURATA=20
NUMERO=NUMERO_DE_TELEFONO_A_MARCAR
ECU = DIRECCION_IP_DE_LA_CENTRALITA
MESSAGE="Avviso di monitoraggio"

# Impostazione di un file di blocco
# Non possiamo effettuare più di una chiamata
# alla volta, Perché pjsua blocca la porta
# Quindi dobbiamo assicurarci che nessun altro provi a chiamare
# Se c'è già una chiamata dobbiamo aspettare.

bloccato=falso
mentre $locked == falso ; fare
se ! -f /tmp/caller.lock ; allora
Toccare /tmp/caller.lock
bloccato=vero
altro
dormire 5
Fi
fatto

# Generazione del messaggio
$TEXT2WAVE -o $SOUNDFILE -f 8000 << EOF
$MESSAGGIO
EOF

# Fare la chiamata da soli.
# Aspettatevi di avviare pjsua e lavorare con
# in modo che si concluda automaticamente

$ASPETTARE << EOF
$PJSUA di spawn –file di configurazione $PJSUACONFIG –$SOUNDFILE del file di riproduzione –Riproduzione automatica –durata $DURATION –max-chiamate 1 Sì:$NUMBER@$CENTRALITA
aspettatevi "VAD riattivato"
sonno $DURATION
invia "qn"
EOF

# Pulizia
rm $SOUNDFILE

# Rimozione del file di blocco
rm /tmp/caller.lock[/Codice sorgente]

 

Podremos hacer si queremos una prueba ahora para ver si va todo bien, Sarà sufficiente eseguire lo script precedente e mettere il messaggio che vogliamo che ci dica sul telefono come argomento:

[Codice sorgente]./llama.sh "Ciao, Questo è un messaggio di prova che sentirete in inglese dalla morte".[/Codice sorgente]

 

Se vogliamo che la chiamata sia in spagnolo o in spagnolo, Dobbiamo compiere anche questi ultimi passi. Installeremo le voci di HISPAVOCES, un progetto di Guadalinex dove ci lasciano 2 voci che parlano perfettamente lo spagnolo, Non suonano come un robot 🙂 Sceglieremo se usare la voce femminile o maschile.

[Codice sorgente]Yum install hispavoces-pal-diphone hispavoces-sfl-diphone[/Codice sorgente]

 

Modifichiamo il file del Festival, dove indicheremo che utilizza le nuove voci, Modifichiamo '/usr/share/festival/lib/voices.scm’ e in linea 328 Possiamo modificare e aggiungere direttamente una di queste due voci

[Codice sorgente]…
(defvar default-voice-priority-list
‘(JuntaDeAndalucia_es_pa_diphone
nitech_us_slt_arctic_hts
…[/Codice sorgente]

 

E se ti dico la verità, Non ricordo le seguenti note perché le ho scritte… Forse non avrebbe riconosciuto il 2 Voci… Ma wow, quello che vediamo qui è come installare le voci che la brava gente di Guadalinex ci dà attraverso RPM (ricordiamo che la distro di Centreon è basata su un CentOS), Ma ovviamente, quello che possiamo scaricare da loro è in DEB, Quindi quello che facciamo è scaricare, Costruisci e installa Alien (e i suoi requisiti) e poi scaricare la voce in formato . DEB e convertirlo in . RPM e installarlo. Alla fine spostiamo i file che avrà generato per noi nel percorso corretto di Festival e le sue voci in spagnolo

[Codice sorgente]Yum Installa RPM-Build
cd /usr/src
WGET HTTP://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.92.tar.gz
tar -xf alien_8.92.tar.gz
Ricarica aliena
Perla Makefile.PL
fare
fare installare

wget https://github.com/guadalinex-archive/hispavoces/raw/master/packages/festvox-palpc16k_1.0-1_all.deb
Alieno -VR festvox-palpc16k_1.0-1_all.deb
rpm -ivh festvox-palpc16k-1.0-2.noarch.rpm

mv /usr/share/festival/voices/spagnolo/ /usr/share/festival/lib/voices/es/[/Codice sorgente]

 

Ora di nuovo puoi provare a fare la chiamata come prima e vedrai come ora un uomo o una donna ci parla perfettamente in spagnolo,

[Codice sorgente]./llama.sh "Ciao, Questo è un messaggio di prova che sentirete perfettamente".[/Codice sorgente]


Dopo aver preparato tutta la configurazione e lo script funzionante, dobbiamo dire a Centreon che quando genera una notifica chiamaci per telefono, per questo, la prima cosa sarà quella di registrare le Notifiche Comados, Così abbiamo creato 2, uno per quando ci comunichi gli Host e uno per i Servizi. Poiché “Configurazione” > “Comandi” > “Notifiche” Li definiamo noi, Soggiornare:

 

Llamadas_servicios

[Codice sorgente]/home/llama.sh "Sul dispositivo $HOSTNAME$, il servizio $SERVICEDESC$ è in stato $SERVICESTATE$"[/Codice sorgente]

 

Llamadas_hosts

[Codice sorgente]/home/llama.sh "Il team $HOSTNAME$ è in stato $HOSTSTATE$"[/Codice sorgente]

 

E poi non resta altro da fare che associarlo, Per esempio, all'utente o al gruppo che vogliamo ricevere la chiamata, Li associamo a te in “Comandi di notifica dell'host” e in “Comandi di notifica del servizio”. Come al solito, dopo qualsiasi modifica della configurazione, esportiamo e registriamo la configurazione Centreon e da questo momento in poi, quando c'è un avviso nel nostro data center o nella nostra azienda, Riceveremo telefonate che ci dicono qual è il problema. Non dirmi che non è il massimo per quando abbiamo personale in servizio e vogliamo svegliarlo in qualsiasi momento per agire, Una meraviglia!

Come sempre, spero che siate stati interessati e vi ringrazio per la condivisione sui social network.

 

Post consigliati

Autore

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Non esitate a contattarmi, Cercherò di aiutarti ogni volta che potrò, Condividere è vivere ;) . Goditi i documenti!!!