Como requisitos en la parte servidor necesitamos Python 2.6 como mínimo y el modulo dateutil. También necesitamos un teléfono que no haga uso de whatsapp para poder recibir el código de registro.
Empezamos descargando "Whatsapp Messenger" por llamarlo de alguna manera
desde la siguiente web: https://github.com/tgalal/yowsup Esto nos servirá para poder enviar los mensajes de notificación.
Empezamos desde la consola
# cd /usr/local/nagiosEmpezamos a editar el archivo de configuración, es simple, por ahora solo es necesario el cc y el teléfono.
# wget --no-check-certificate https://github.com/tgalal/yowsup/archive/master.zip
# unzip master.zip
# cd yowsup-master
# vi configY pegamos lo siguiente:
cc= 34 #Código de paísAhora registramos el móvil.
phone=34600000000 # Número de teléfono con el código de país
id=
password=
# python yowsup-cli -r voice -c configOs llamará una máquina que será la que os provenga del código, la llamada es en inglés
Ya tenemos los código, ahora vamos a registrarlo:
# python yowsup-cli -R 658789 -c config.exampleY ahora pegamos el ID de la llamada y la password que hemos obtenido del anterior comando en el archivo config, quedando de la siguiente manera:
Detected cc: 34
status: ok
kind: paid
pw: rjgFryc3d34Bfi5IBXe
price: 0,89 €
price_expiration: 1386405621
currency: EUR
cost: 0.89
expiration: 4444444444.0
login: 34600000000
type: existing
# cat configAhora es cuando procedemos ha hacer una prueba a otro móvil:
cc= 34
phone=34600000000
id=658789
password=rjgFryc3d34Bfi5IBXe
python yowsup-cli -c config -s 34600000001 "Esto es una prueba"Ya tenemos confirmado que todo funciona. Ahora vamos a la parte de Nagios
Editamos el archivo commands.cfg
# vi commands.cfgY pegamos lo siguiente:
# 'host-notify-by-whatsapp' command definition
define command{
command_name host-notify-by-whatsapp
command_line python /usr/local/nagios/yowsup-master/src/yowsup-cli -c /usr/local/nagios/yowsup-master/src/config -s $CONTACTADDRESS1$ "Host '$HOSTALIAS$' is $HOSTSTATE$ - Info: $HOSTOUTPUT$"
}
# 'notify-by-whatsapp' command definition
define command{
command_name notify-by-whatsapp
command_line python /usr/local/nagios/yowsup-master/src/yowsup-cli -c /usr/local/nagios/yowsup-master/src/config -s $CONTACTADDRESS1$ "$NOTIFICATIONTYPE$ $HOSTNAME$ $SERVICEDESC$ $SERVICESTATE$ $SERVICEOUTPUT$ $LONGDATETIME$"
}
Y en el archivo contacts.cfg añadimos lo siguiente a un usuario:
address1 34600000001Con esto valdría. Ahora reiniciamos el nagios y esperamos a que se caiga algun servicio. El resultado final sería este:
service_notification_commands notify-by-whatsapp
No hay comentarios:
Publicar un comentario