Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

Мониторинг состояния транков

База знаний Настройка Asterisk

Иногда есть необходимость мониторинга транков,а если этот процесс еще и автоматизировать, то получается вполне себе неплохой инструмент администрирования.

И так, что же нам понадобится для создания такого инструмента?! Совсем немного: знание команд линукса, астериска и чуть-чуть логического мышления.
Если коротко, то скрипт будет работать так:

  1. Смотрит статус транков

  2. Проверяет сколько транков в системе

  3. Ищет проблемные транки и если находит то пробует «починить» их (и отправляет на email оповещение), если все ок то спим спокойно дальше.

Теперь сам скрипт (можно скачать тут)

#!/bin/bash
# Задаем переменные
ALLTRUNKSMINIMUM="`/usr/sbin/asterisk -rx "sip show registry"`" # Смотрим статусы транков
ALLTRUNKS=`echo "$ALLTRUNKSMINIMUM" |grep "SIP registrations" |awk '{print $1}'` # Смотрим сколько всего транков в системе
REGTRUNKS=`/usr/sbin/asterisk -rx "sip show registry" |grep Registered |wc -l` # Зарегистрированные  транки (все транки со статусом Registered)
# Задаем условие
if [ "$REGTRUNKS" -lt "$ALLTRUNKS" ]; then # Если есть хоть один проблемный транк (В одном или более транке встретился статус отличный от Registered) то
sleep 5 # Ждем 5 секунд
echo `/usr/sbin/asterisk -rx "sip reload"` # Делаем sip reload
sleep 5 # Ждем 5 секунд
VAR=`/usr/sbin/asterisk -rx "sip show registry"` # Смотрим статусы транков после проверки
# Уведомляем на почту о том какие статусы стали после проверки
echo "$VAR" | mail -s "Мониторинг транков" your@mail.ru
# Если условие ложно (т.е. с  транками все хорошо)
else
echo “ALL STATUS OK” # Просто выводим что со всеми статусами все хорошо и ничего не делаем больше
fi

Теперь остается добавить скрипт в cron и настроить его на выполнение каждые 2-3 минуты (минимально 1 минута) Как настроить cron можно прочитать например тут
Должно получится примерно следующее, где
*/2 * * * * означает что скрипт будет выполняться каждые две минуты
/usr/local/bin/test.sh директория где находится сам скрипт (убедиться что скрипт имеет права на запуск)
> /dev/null 2>&1 используется для подавления нежелательного вывода в консоль.

И так, мы рассмотрели элементарный скрипт который мониторит статусы транков, и делает sip reload если что-то      не так и сообщает об этом на нужный email.
Основываясь на этом примере, можно создать более сложный скрипт, который будет делать несколько проверок, при чем статусы Request Sent или Auth. Sent в первой проверке он будет считать нормальными и лишь на второй или третей проверке будет делать sip reload для этих статусов. Все зависит от вашей фантазии, можно добавить в скрипт отсылку письма в суппорт вашему оператору, в котором будут необходимые данные из скрипта и заранее подготовленный текст для открытия заявки.

Скрипт можно скачать тут

sip, asterisk, VoxLink