Пришлось перейти на систему мониторинга Zabbix, поставил на ubuntu 12.04, все хорошо работает.
Но столкнулся с проблемой настройки sms уведомления.
Настроил gnokii, он отправляет смс нормально из консоли. А вот zabbix не в какую слать не хочет.
Прошу помощи, кто использует данную систему помогите в настройке.
Сам скрипт, выглядит вот так
у меня заббиск 2.2.2, для смс использую службу smsc.ru, к ихнему api обращаюсь через curl.
так вот, заббикс вызывая мой скрипт, передает ему параметры, и во втором параметр ($2) содержится само сообщение, а у тебя в скрипте я её не вижу.
и можно удивить логи работы скрипта?
если вызвать скрипт вручную, и передать параметры, например так
Посмотрел на ваш скрипт и не могу понять, чему вы удивляетесь? Этот скрипт написан так, чтобы либо не работать, либо работать неправильно. Вот вам на первое время пища для размышлений:
1. Куда делся параметр $2? Параметры $1 и $3 есть, а $2 что-то не видно.
2. Сдвоенные парные кавычки в следующих двух строках - это что-то за гранью добра и зла. :) Избавьтесь от них.
Для начала проверьте указанные мной два пункта, а затем попробуйте запустить ваш скрипт вручную. Если сработает, значит и Zabbix должен будет нормально его запустить.
Recipient='' Message=''
echo | /usr/bin/sudo /usr/bin/gnokii --config /usr/lib/zabbix/alertscripts/sms.conf --sendsms
GNOKII Version 0.6.30
usage: --sendsms destination recipient number (msisdn)
--smsc message_center_number number (msisdn) of the message
center
--smscno message_center_index index of the message center stored
in the phone memory
-r
--report request delivery report
-v n
--validity n set message validity
-C n
--class n set message class; possible values
are 0, 1, 2, or 3
-8
--8bit set 8bit coding
-i
--imelody send imelody message, text is read
from stdin
-a file;file;file;file
--animation file;file;file;file send animation message
-o this;total;serial
--concat this;total;serial send 'this' part of all 'total' parts
identified by 'serial'
-w url
--wappush url send wappush to the given url
Message text is read from standard input.
Так понимаю не верно передаются парметры, $2 как лучше подставить?
Recipient='+7926,,,,,,,,' Message='Pewts'
echo Pewts | /usr/bin/sudo /usr/bin/gnokii --config /usr/lib/zabbix/alertscripts/sms.conf --sendsms +79265504470
GNOKII Version 0.6.30
usage: --sendsms destination recipient number (msisdn)
--smsc message_center_number number (msisdn) of the message
center
--smscno message_center_index index of the message center stored
in the phone memory
-r
--report request delivery report
-v n
--validity n set message validity
-C n
--class n set message class; possible values
are 0, 1, 2, or 3
-8
--8bit set 8bit coding
-i
--imelody send imelody message, text is read
from stdin
-a file;file;file;file
--animation file;file;file;file send animation message
-o this;total;serial
--concat this;total;serial send 'this' part of all 'total' parts
identified by 'serial'
-w url
--wappush url send wappush to the given url
Message text is read from standard input.
Recipient='+792687.......' Message=' Tets Pewts'
GNOKII Version 0.6.30
Send succeeded with reference -1!
Двойные кавычки пришлось вернуть, т.к. в локах тогда вот что
Tets Pewts | /usr/bin/sudo /usr/bin/gnokii --config /usr/lib/zabbix/alertscripts/sms.conf --sendsms +79268.......
Плюс не понятно за каким лешим, две строчки было, когда все в одну нормально работает.
Но Zabbix не присылает уведомление. Хотя, в админке пишет что смс отправил. В логе при этом пусто. На почту приходит исправно.
И начнем, пожалуй, с наших параметров, передаваемых скрипту - $1 и остальных. Вы, насколько я могу судить, скрипту передаете только номер получателя и текст сообщения. Если так, то используются только $1 и $2. Поэтому совсем уберите из скрипта $3.
Далее, gnokii у вас, похоже, все-таки не отрабатывает как надо. Это видно, во-первых, по тому, что эта утилита выдает в консоль. А выдает она краткую справку по использованию. Это в переводе на человеческий означает примерно следующее: "вы что-то сделали неправильно, посмотрите, что я могу понять и исправьте свою ошибку". Во-вторых, строка "Send succeeded with reference -1!" является сообщением об ошибке. Переводится это как "отправка завершилась с кодом -1!". Код нормального, успешного завершения работы - это 0 (ноль), если же код не равен нулю, значит что-то пошло не так.
Поэтому рекомендую сначала добиться успешной отправки SMS вручную, командой gnokii, запущенной из терминала, а потом уже и до скрипта дело дойдет.
Замечательно, рад за вас. :) Если все работает, как надо, подправьте, пожалуйста, название темы - добавьте в него слово "решено". Этим вы очень поможете тем, кто в будущем может столкнуться с подобной проблемой. На всякий случай подскажу: название темы можно изменить, открыв первое сообщение в режиме "полное редактирование".