29 Дек
2011
Рубрика: Asterisk
Автор:    Комментариев нет

Asterisk от элементарного — к более сложному. Часть 2

О файле extensions.conf.

Этот файл — ключевой файл во всей системе Asterisk, потому что в нем описываются основные правила работы практически с любым голосовым трафиком, который появляется в системе. Это похоже на стратегическую таблицу маршрутизации.

О структуре файла, которая довольно понятна:

-внутри файла прописываются все важнейшие параметры, конечно же и переменные;

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

Примерная структура контекста имеет следующий вид:

exten => МАСКА, ПОРЯДОК, ДЕЙСТВИЕ, где соответственно

МАСКА — означает маска номера, или статически задающийся номер

ПОРЯДОК — означает порядок действия для определенной МАСКИ (также возможна последовательность необходимых действий)

ДЕЙСТВИЕ — означает команду, которая выполняется системой при попадании звонка на существующее правило.

Тестовые пользователи, как правило, создаются в контексте default, по этой причине, если просто запустить приложение астериск и позвонить на совершенно любой номер, то можно услышать так называемое тестовое демо-меню системы Астериск.

Если нужно открыть для редактирования extensions.conf, то надо задать поиск по [default], а следующей строке после [default] смело внести правило для локального звонка:

Существует статическое правило для звонка:

exten => 1001,1,Dial(SIP/1001)

exten => 1002,1,Dial(SIP/1002)

Есть еще и динамическое правило для звонка:

exten => _XXXX,1,Dial(SIP/${EXTEN}); здесь X сообщает о том, что далее будет набрана абсолютно любая цифра, также о методах составления масок (так называемых экстеншинов ) — об этом чуть позже.

Эти правила позволят осуществлять локальные звоноки между тестовыми пользователями.

В заключении: о работе с консолью сервера.

Сервер запускается с помощью команды asterisk из под рута, или /usr/sbin/asterisk.

Чтобы зайти в консоль, нужно из под рута ввести команду asterisk -r, или /usr/sbin/asterisk -r

Для возможности перечитать Астериском конфиги из консоли вполне достаточно выполнить команду reload.

Что вы думаете об этом?