.. _advanced/sms-with-gateway: =================== Send sms by gateway =================== Shinken can be used to send sms to you and other people when you got an alert. I will tell you how to do it with ovh gateway. If you need for another one you need to modify a little bit the information. 1. you need to go to your contact file which is for linux in /etc/shinken/contacts/ ============================================================================================== For each user you need to add her phone number in the pager line. (For ovh you need to do it with 0032 for example and not +32 , all phone number must be with the international prefix). In the same file you need also to add these lines in each contact you want that I receive ams. :: host_notifications_enabled 1 // This will activate the notifications for the hosts service_notifications_enabled 1 // This will activate the notifications for the services notificationways SMS // This is the name of your notifications ways ( You can write what you want but remember what you set ) Then you need to add this at the end of the contacts.cfg :: define notificationway{ notificationway_name SMS // Here you need to put the name of the notifications ways you write up service_notification_period 24x7 // Here I will receive ams all the time, If you want to receive them for only the night replace 24x7 by night. host_notification_period 24x7 // Same as above service_notification_options w,c,r // It tell that I want receive a sms for the hosts who are in warning / critical / recovery host_notification_options d,r // It tell that I want receive a sms for the services who are down and recovery service_notification_commands notify-service-by-ovhsms // The name of the notifications host_notification_commands notify-host-by-ovhsms } 2. you need to go to your commands file which is in /etc/shinken/commands/ ====================================================================================== And add these line at the end. :: # Notify Service by SMS-OVH define command { command_name notify-service-by-ovhsms // Should be the same as in the contacts.cfg command_line $PLUGINSDIR$/ovhsms.sh $CONTACTPAGER$ $NOTIFICATIONTYPE$ $SERVICEDESC$ $HOSTNAME$ $SE$ // Tell which script shinken as to use to send sms. We will create it after. } # Notify host by SMS-OVH define command { command_name notify-host-by-ovhsms * * Should be the same as in the contacts.cfg command_line $PLUGINSDIR$/ovhsms.sh $CONTACTPAGER$ $NOTIFICATIONTYPE$ $SERVICEDESC$ $HOSTNAME$ $SER$ // Tell which script shinken as to use to send sms. We will create it after. } 3. Add the script ================== First you need to be the shinken user so do a : su shinken do a : cd /var/lib/shinken/libexec/ and then create and edit your new script with the name you set above : nano -w ovhsms.sh :: #!/bin/bash date > ~/datesms NOTIFICATIONTYPE=$2 HOSTALIAS=$3 SERVICEDESC=$4 SERVICESTATE=$5 textesms="**"$NOTIFICATIONTYPE" alerte - "$HOSTALIAS"/"$SERVICEDESC" is "$SERVICESTATE" **" // This is the message who will be send. You can add something if you want. wget -o ~/logenvoisms -O ~/response "https://www.ovh.com/cgi-bin/sms/http2sms.cgi?smsAccount=sms-XXXXXXXX-1&login=XXXXXXXX&password=XXXXXXXX&from=XXXXXXXXXXX&to=$1&contentType=text/xml&message=$textesms" // This is the command who will send the sms. You need to adapt it with you gateway settings. exit 0 4. Test It =========== Save your file and do : "exit" To exit the shinken user. Then set down one of your host or service to test if you receive it.