I know the sms gateway for my cell phone provider so I can just send an email to it.

I am looking for examples of entries in contacts.cfg and commands.cfg that are mobile specific.

link|improve this question

feedback

3 Answers

up vote 1 down vote accepted

on contacts_nagios2.cfg

define contactgroup{
        contactgroup_name       admins
        alias                   Nagios Administrators
        members                 user
        }
define contact{
        contact_name                    name
        alias                           name
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r
        host_notification_options       d,r
        service_notification_commands   notify-by-sms
        host_notification_commands      host-notify-by-sms
        email                           mail
        pager                          MOBILENUMBER
        }

And on commands.cfg

define command{
        command_name notify-by-sms
        command_line script-to-sms-service
}
define command{
            command_name host-notify-by-sms
            command_line script-to-sms-service
    }
link|improve this answer
How would I be able to limit the texts to 160 characters? Is there any standard way of doing that? – ckliborn Jan 26 at 23:18
You can either impose that limit through your script (trim) or check that your plug-ins never produce more than 160 characters. – user Jan 27 at 9:57
feedback

The first answer will do what you need.

You can send SMS messages through an SMS service, send them via the cell providers email to SMS addresses, or use a local SMS server. We did the latter. This link will give you details on how to do it:

http://www.linuxjournal.com/magazine/using-sms-server-provide-robust-alerting-service-nagios

This has been running for 1.5 yrs. Very reliable, and not dependent on email servers, or third party services.

link|improve this answer
feedback

Using a 3rd-party SMS service, or (even better) using a GSM device as Craig suggests, is going to be much more reliable/robust.

If you're dead set on using the provider's email->SMS gateway, you can use slimmed-down contact commands like this:

define command {
    command_name    notify-host-by-sms
    command_line    /usr/bin/printf "%b" "$NOTIFICATIONTYPE$\n$HOSTNAME$ is $HOSTSTATE$\n$HOSTOUTPUT$\n" | /usr/bin/mail -s "[Nagios] ($HOSTNAME$ $HOSTSTATE$)" $CONTACTEMAIL$

}

define command {
    command_name    notify-service-by-sms
    command_line    /usr/bin/printf "%b" "$NOTIFICATIONTYPE$\n$SERVICEDESC$ ($HOSTNAME$) is $SERVICESTATE$\n$SERVICEOUTPUT$" | /usr/bin/mail -s "[Nagios] ($HOSTNAME$/$SERVICEDESC$)" $CONTACTEMAIL$

If any of these end up being too long, you can remove or substitute different macros in several places, as necessary. See the macro list for info on what's available in a notification command.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.