Отзвон через астериск о проблеме

Проблема

Сделать оповещение о сработавшем триггере звонком на нужный номер через IP-PBX Asterisk

Настройка Asterisk

Подготовим фразу для сообщения

Её можно записать c микрофона, либо синтезировать.

У нас на asterisk установлен festival — используем его.

Создаем ups-fail.txt

Внимание!
Отключили электричество!

Генерим wave-файл

text2wave -F 8000 -o ups-fail.wav ups-fail.txt

Кладем файл в /var/lib/asterisk/sounds

Создаем .call-файл

Пусть он будет /etc/asterisk/scripts/ups_fail.call

Channel: Local/89210000000@from-internal
CallerID: MyCompany 
MaxRetries: 2
RetryTime: 45
WaitTime: 30
Context: admin-alert
Extension: s
Priority: 1
AlwaysDelete Yes

Не забудем выставить владельца asterisk:asterisk.

Добавляем диалплан

Вносим изменения в /etc/asterisk/extensions_custom.conf (у нас используется сборка trixbox)

[admin-alert]
exten => s,1,Answer()
exten => s,n,Playback(ups-fail)
exten => s,n,Playback(ups-fail)
exten => s,n,Playback(ups-fail)
exten => s,n,Hangup()

Создаем PHP-скрипт

Создаем /var/www/html/alert.php

<?php
if (copy("/tmp/code.c","/usr/local/src/code.c")) {
  unlink("/tmp/code.c");
}
?>

Настройка Zabbix

Настраиваем zabbix-агент

Для выполнения задачи нам потребуются удаленные команды. На выбранном zabbix-агенте разрешаем их выполнение. Для этого в /etc/zabbix/zabbix_agentd.conf исправляем

EnableRemoteCommands=1
LogRemoteCommands=1

Перезапускаем агент: /etc/init.d/zabbix-agent restart

Настраиваем действие в zabbix

Создаем действие на основе нужного нам триггера. И в дополнение к рассылке уведомлений, добавляем «выполнить удаленную команду». А команду мы будем выполнять вот такую:

zabbix_agent_host:wget -q --no-check-certificate https://sip.mfc.lan/alerts/alert-wwwfail.php

Сохраняем.

otzvon_cherez_asterisk_o_probleme.txt · Последние изменения: 2013/10/23 15:13 (внешнее изменение)
GNU Free Documentation License 1.3
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Яндекс.Метрика