Новости
Обзоры и тесты
Техно
Советы
Разное
Главная » Техно

Пример конфигурации IP АТС Asterisk

Добавлено на 26.04.2015 – 16:58 3 Коммент.

В материале приводится небольшой пример конфигурации Asterisk. Этот пример можно использовать для понимания работы Asterisk, а также как основу для более сложных конфигураций. В качестве “железа” использовалась платформа Intel INTEL NUC DE3815TYKHE с 2 Гб оперативной памяти, HDD объёмом 320 Гб. Операциционная система Linux Debian 7.

Начальные условия
В качестве “железа” использовалась платформа Intel INTEL NUC DE3815TYKHE с установленной оперативной памятью KINGSTON VALUERAM KVR16LS11S6/2 DDR3L  объёмом 2Гб 1600, SO-DIMM и жёстким диском SEAGATE (SAMSUNG) Momentus ST320LM001 объёмом 320Гб. На момент покупки системы, это были самые доступные комплектующие, к тому же, хотелось использовать именно x86 архитектуру системы, а не ARM. Хотя использование ARM, например, платформы Raspberry Pi, почти вдвое бы удешевило стоимость «железа», но немного добавило бы сложности с инсталляцией Linux, к тому же, хотелось использовать HDD а не SD-карту в качестве накопителя.
В итоге, получился мини-сервер с пассивным охлаждением и отсутствием шума от вентиляторов, низким энергопотреблением порядка 5 Ватт и совсем не большими размерами. К несущественным минусам я бы отнес одноядерный процессор Intel® Atom™ E3815 1,46 ГГц, в моей конфигурации DE3815TYKHE, один интерфейс Ethernet, но со скоростью до 1000 Мбит/с. Если процессор на платформе не заменить, так как он припаян к материнской плате, то от проблемы одного сетевого интерфейса Ethernet можно уйти путем настройки нужного количества VLAN-интерфейсов, правда, для этого, понадобится дополнительное оборудование, которое понимает VLAN-теги, например, самый доступный коммутатор, который я смог найти это D-Link DGS-1100-05.

Внешний вид мини-ПК Intel NUC на картинках ниже.

Intel INTEL NUC DE3815TYKHE

Intel INTEL NUC DE3815TYKHE
Интересно, что где-то в интернете я нашёл отчет о тестировании, в котором говориться, что конфигурация аналогичная моей “тянет” до 100 одновременных вызовов с проксированием через Asterisk. Но думаю, что для такой нагрузки лучше взять “железо” помощнее.
Железо выбрано, теперь рассмотрим схему сети:
Схема работы Asterisk

IP АТС Asterisk находится за маршрутизатором с публичным IP, внутренняя сеть, 192.168.2.0/24, внешний IP=84.52.XX.XX, на коммутаторе настроен проброс порта 9966 с 84.52.XX.XX на 192.168.2.254 – IP адрес АТС Asterisk. Для связи с телефонной сетью общего пользования используется оператор Телфин (номера 3091111 и 3091112 в примере). IP-телефоны получают IP адреса по протоколу DHCP из сети 192.168.2.0/24 в заранее определенном диапазоне. В реальной конфигурации использовались перепрошитые IP телефоны Cisco 7942 и 7945.
Инструкции о том как перепрошить и настроить телефоны Cisco 79XX для работы с IP АТС Asterisk описаны в данной статье.

Итак, ставим Linux на Intel NUC, я поставил дистрибутив Debian 7.8(другой рекомендуемый вариант дистрибутив CentOS), далее, настраиваем все необходимые сервисы для работы IP телефонов Cisco, это описано в данной статье.

Ставим Asterisk, это делается довольно просто, существует два способа установки:
1) Из пакетов Debian, но тогда версия Asterisk будет старой, установщик aptitude предложил мне 1.8, другой способ — добавить репозитории Asterisk и поставить, последнюю версию.

2) Скачать исходные коды asterisk, распаковать их и затем собрать Asterisk, этот вариант больше подходит тем кто хочет собрать Asterisk с определенными опциями и аддонами, в нашем случае это не требуется.
Более подробно ознакомиться с методами инсталляции Asterisk можно на соответствующих wiki-страницах сайта asterisk.org на английском языке. Для нашей конфигурации подойдет любая версия Asterisk начиная с 1.6. Я рекомендую для простых конфигураций использовать установку Asterisk из пакетов. Также рекомендую установить пакеты звуковых файлов на русском языке. Например, устанавливаем версию 1.8 из стандартного репозитория Debian:

#aptitude install asterisk asterisk-core-sounds-ru asterisk-voicemail

После установки IP АТС Asterisk рекомендую добавить автоматический запуск asterisk после перезагрузки, например для Debian:

#update-rc.d asterisk defaults

Описание конфигурации Asterisk которая будет реализована
При исходящих вызовах с префиксом “9” перед набираемым номером, вызов будет уходить на второй транк Телфин с номером 78123091111, при вызовах на остальные номера(те без набора 9ки перед номером) вызов будет уходить с АОНом 78123091112 на первый транк с Телфином.
При звонке на номер 700 с внутреннего номера, вызов отправляется на приложение voicemail для работы с голосовой почтой. Наборы на номера с маской 1XX –вызовы на внутренние телефоны. У каждого абонента есть голосовая почта, в случае недоступности или занятости абонента, вызов переадресуется на голосовую почту, для возможности оставить голосовое сообщение. При появлении нового голосового сообщения, владельцу голосового ящика отправляется уведомление с вложенным аудио файлом сообщения. Также на телефоне загорается индикатор о наличии новых голосовых сообщений.
Предусмотрена возможность установки переадресации при помощи набора специальных номеров с внутренних телефонов. Если переадресация установлена таким способом, вызов сразу же будет переадресован на указанный номер без проговаривания IVR.
Для установки безусловной переадресации с номера 78123091112 набрать #00#Номер телефона, для снятия переадресации набрать #00#.
Для установки переадресации безусловной переадресации с номера 78123091111 набрать #01#Номер телефона, для снятия переадресации набрать #01#.
Второй способ установки переадресации – прямо с IP-телефона, в таком случае вызов придет из группы поиска на телефон и будет переадресован на указанный номер для переадресации. При этом остальные телефоны в группе продолжат звонить. Перехват вызова при помощи набора *8 с телефона. Функции перевода вызова осуществляются через кнопки на IP-телефоне.

При входящем вызове на любой из двух номеров Телфина включается соответствующий набранному номеру сценарий обработки вызова. Перед номером вызывающего абонента добавляется префикс с номером транка Телфина, чтобы понимать с какого из двух номеров пришел вызовов, этот префикс отобразиться на экране IP-телефона. Сначала проверяется установлена ли безусловная переадресация, если нет, проигрывается заранее загруженный звуковой файл приветствия 78123091111.wav или 78123091112.wav из директории /var/lib/asterisk/sounds/ru/, файл должен быть в формате Аудио: 8 000 Гц; 16 Bit; Моно; PCM. Во время воспроизведения приветствия и после, в течение 6 секунд, абонент может набрать внутренний номер абонента в формате 1XX или 1XX#, если номер набран неправильно(номера не существует) предлагается еще раз ввести номер в течение 6 секунд, если опять набран не правильно, вызов переводится на группу. Если вызывающий абонент “донабрал” внутренний номер, который существует но занят или недоступен(не зарегистрирован), звонящий переводится на соответствующий занятому абоненту голосовой ящик. чтобы оставить голосовое сообщение. Если абонент ничего не “донабрал”, вызов переадресуется по таймауту на группу из двух номеров, для номера 78123091111 одновременно вызываются 100 и 101 номера, для 78123091112 вызываются 102 и 103 в течение 30 секунд. Если никто не подошел вызов переводится на голосовую почту абонета 100.

Для реализации на IP АТС Asterisk такой конфигурации нужно минимум сконфигурировать три  файла в директории где хранятся конфигурационные файлы /ets/asterisk. Кстати, примеры всех конфигурационных файлов чаще всего инсталлируются в указанную директорию по умолчанию, при установки Asterisk из пакетов (или командой make samples при сборке из исходных кодов). Первый из них sip.conf, в этом файле настраиваются  общие параметры сигнального протокола SIP, учетные записи IP-телефонов, в примере это 4 номера 100-103, а также подключения к внешнему миру – два номера Телфин. Второй файл voicemail.conf описывает настройки голосовой почты. Третий файл extensions.conf, описывает сценарий работы IP АТС на языке дайлплана Asterisk в виде последовательности действий с вызовом.

Что касается дополнительных конфигурационных файлов Asterisk которые должны быть в директории /etc/asterisk, то это:
asterisk.conf – его можно оставить без изменений
cdr.conf – его можно оставить без изменений, но я бы изменил параметры
unanswered = yes
congestion = yes
тогда будут сохраняться и неуспешные вызовы.
Еще один параметр usegmtime=no – чтобы время в CDR сохранялось в местном часовом поясе.
cli.conf можно установить больший уровень отладки
core set verbose 9999 = yes
core set debug 999 = yes
features.conf – оставить все по умолчанию
logger.conf – оставить все по умолчанию
modules.conf – оставить все по умолчанию
musiconhold.conf – оставить все по умолчанию, а если хотите поменять музыку по удержанию то отредактировать
indications.conf – если этого файла не будет в директории конфигурации Asterisk, при входящем вызове не будет слышно КПВ, вместо этого тишина, например при вызове в очередь или вызов внутреннего абонента приложением Dial с ключем r.

Пример файлов конфигурации для настройки Asterisk

Сначала настроим каналы SIP, SIP-транки на оператора Телфин и учетные записи IP телефонов. А также общие настройки SIP.

#cat /etc/asterisk/sip.conf
[general]
context=default ;Контекст по умолчанию для входящих вызовов
allowoverlap=no 
allowguest=no;отбивать все вызовы с неизветстный IP.
alwaysauthreject=yes;Присылать одно и тоже SIP сообщение вне
;зависимости неверный пароль или пользователь не существует. 
;Опция усложняет взлом.
useragent=PBX; То что будет отображаться в UA вашего Asterisk.
defaultexpiry=360;Интервал обязательной перерегистрации абонентов.
callevents=no;Означает что RTP для все вызовов должен проксироваться.
limitonpeer=yes ;Считаем исходящие и входящие вызовы пиров вместе.
rtptimeout=10 ;Таймаут отсутствия RTP-трафика
language=ru
;Язык в системе по умолчанию. Например для голосовых файлов.
bindport=9966
;Заменяем стандартный порт SIP 5060 на нестандартный
;9966 уменьшает вероятность нахождения сканнером порта SIP.
bindaddr=0.0.0.0 ;Слушаем на всех интерфейсах
srvlookup=yes 
;Активировать поиск DNS SRV-записей для исходящих вызовов
disallow=all
;сначала запрещаем все кодеки затем, разрешаем только те,
;что хотим использовать.
allow=ulaw
allow=alaw
allow=g729 ;можно использовать если очень узкий канал
allow=g722 ;для звонков между IP-телефонов, кодек с повышенным
;качеством звука
dtmfmode=auto
rtpholdtimeout=300
rtpkeepalive=5
externip=84.52.XX.XX;Указываем наш внешний IP, Asterisk за NAT.
localnet=192.168.2.0/255.255.255.0 
;Указываем внутреннюю сеть где находятся наши IP-телефоны
register => 00081111:pass@voice.telphin.com:5068/00081111 
; номер 78123091111, регистрируем для входящих вызовов
register => 00081112:рass2@voice.telphin.com:5068/00081112 
; номер 78123091113, регистрируем для входящих вызовов
[78123091111] ; Первый номер
context=inbound
type=peer
username=000115272
fromuser=000115272
secret=pass
host=voice.telphin.com
port=5068
promiscredir=yes
qualify=yes
insecure=port,invite
[000115272]
context=inbound
type=peer
username=000115272
host=voice.telphin.com
port=5068
qualify=yes
[78123091112] ; второй номер
context=inbound
type=peer
username=00083807
fromuser=00083807
secret=H3QJgzPN
host=voice.telphin.com
port=5068
promiscredir=yes
;qualify=yes
insecure=port,invite
[00083807]
context=inbound
type=peer
username=00083807
host=voice.telphin.com
port=5068
qualify=yes

;Теперь опишем внутренних абонентов:

[100]
deny=0.0.0.0/0.0.0.0
permit=192.168.2.0/255.255.255.0
;регистрироваться только из локальной сети
type=friend
context=phones
;контекст для телефонов
host=dynamic
secret=Z1gL4Z1gL4
dtmfmode=rfc2833
call-limit=2
;Разрешим максимум 2 одновременных вызова
disallow=all
allow=ulaw
allow=alaw
pickupgroup=1
callgroup=1
;Все телефоны в одной группе перехвата, перехват по умолчанию
;комбинацией *8
qualify=yes
mailbox=100@voicemail
;Ящик для голосовой почты

[101]
deny=0.0.0.0/0.0.0.0
permit=192.168.2.0/255.255.255.0
type=friend
context=phones
host=dynamic
secret=Z1gL4Z1gL4
dtmfmode=rfc2833
call-limit=2
disallow=all
allow=ulaw
allow=alaw
pickupgroup=1
callgroup=1
qualify=yes
mailbox=101@voicemail

[102]
deny=0.0.0.0/0.0.0.0
permit=192.168.2.0/255.255.255.0
type=friend
context=phones
host=dynamic
secret=F8iIhF8iIh
dtmfmode=rfc2833
call-limit=2
disallow=all
allow=ulaw
allow=alaw
pickupgroup=1
callgroup=1
qualify=yes
mailbox=102@voicemail
[103]
deny=0.0.0.0/0.0.0.0
permit=192.168.2.0/255.255.255.0
type=friend
context=phones
host=dynamic
secret=F8iIhF8iIh
dtmfmode=rfc2833
call-limit=2
disallow=all
allow=ulaw
allow=alaw
pickupgroup=1
callgroup=1
qualify=yes
mailbox=103@voicemail

На этом настройка каналов закончена, мы описали 2 внешних SIP-транка и 4 внутренних
номера. Теперь настроим голосовые почтовые ящики для наших абонентов:

#cat /etc/asterisk/voicemail.conf
[general]
format=wav49|gsm|wav
serveremail=root@asteriskserver.com
attach=yes ; прикрепить запись сообщения
maxmsg=100  ;максимальное кол-во сообщений для ящика.
maxsecs=180 ;максимальная длинна сообщения, 3 минуты макс.
minsecs=3 ;минимальная длина
maxgreet=60 ;Максимальное время приветствия
skipms=3000
maxlogins=3
moveheard=yes
charset=UTF-8  
pbxskip=yes
fromstring=Voicemail server ; от этого "лица" будут приходить сообщения
emailsubject=Новое голосовое сообщение ${VM_MSGNUM} в ящике ${VM_MAILBOX}
; Subject электронного письма с оповещением
emailbody=Вам пришло новое голосовое сообщение длительностью ${VM_DUR} под номером ${VM_MSGNUM} \nв ящик ${VM_MAILBOX} от ${VM_CALLERID}, в ${VM_DATE}.
; текст сообщения электронного письма
emaildateformat=%A, %B %d, %Y at %r
pagerdateformat=%A, %B %d, %Y at %r
;mailcmd=/usr/sbin/sendmail –t
;если у вас какой-то особенный MTA агент, укажите его.
delete=yes              
; Если голосовая почта отправляется только на email – yes,
;удаляется сразу же просле отправки
[zonemessages]
eastern=America/New_York|'vm-received' Q 'digits/at' IMp
central=America/Chicago|'vm-received' Q 'digits/at' IMp
central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours'
military=Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
european=Europe/Copenhagen|'vm-received' a d b 'digits/at' HM

[voicemail]  ; контекст голосовой почты
100 => 0,Ignat_100,info@mail.ru ;укажите почту получения сообщения
101 => 0,Ignat_101,ignat101@gmail.com 
102 => 0,Ignat_102,ignat102@gmail.com 
103 => 0,Ignat_103,ignat103@gmail.com

Теперь пришло время настроить логику работы Asterisk.

#cat /etc/asterisk/extensions.conf

[general]

[inbound]
;####### Начало обработки 78123091111(00081111)
exten => 00081111,1, Verbose(!!! 78123091111 IVR Started !!!) 
	;Начало  обработки вызова при звонке на номер 78123091111
same => n,Set(REDIRECTNUM=${DB(redirect/78123091111)}) 
	;Проверяем в AstDB установлена ли переадресация для номера
same => n,GotoIf($[${ISNULL(${REDIRECTNUM})}]?proceed:redirect) 
	;Если да, то отправляем вызов на redirect, если нет то на proceed
same => n(redirect),Set(CALLERID(num)=00081111)
	;Если вызов переадресован, устанавливаем CallerID для Телфина
same => n,Dial(SIP/78123091111/${REDIRECTNUM})
	;Звоним на номер переадресации
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail) 
	;Если никто не подошел или абонент недоступен,
;отправляем на голосовую почту
same => n(unavail),Voicemail(100@voicemail,u)
;Если абонент недоступен отправить на голосовую почту
same => n,Hangup()
;Отбой
same => n(busy),VoiceMail(100@voicemail,b)
;Если занято переадресация на голосовую почту
same => n,Hangup()
;Отбой

same => n(proceed), Set(CALLERID(name)=78123091111_)
;Добавляем признак что это звонок с номера 78123091111
same => n, Answer ;Ответ
same => n, Background(78123091111)
;Проиграть заранее загруженный файл приветствия
;находящийся в /var/lib/asterisk/sounds/ru/78123091111.wav
same => n,WaitExten(6)
;Ожидание ввода добавочного номера

exten => i,1, NoOp(!!!! INVALID!!!!)
;Так же для функция NoOp для отладки
exten => i,n,Playback(pbx-invalid)
;Проигрываем звуковой файл pbx-invalid
exten => i,n,WaitExten(6)
;Ждем повторного набора еще 6 секунд
;exten => i,n,Goto(inbound,00081111,1)
;Кидаем вызов снова на IVR если номер набран неправильно,
;раскоментировано
exten => _1XX,1,Dial(SIP/${EXTEN},15,m)
;Вызов на IP-телефон из пула сотых номеров
;вызов в течение 15 секунд
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
;Если никто не ответил, или занято отправлять на voicemail
same => n(unavail),Voicemail(${EXTEN}@voicemail,u)
;Сообщение о недоступности далее, на голосовую почту
same => n,Hangup()
same => n(busy),VoiceMail(${EXTEN}@voicemail,b)
;Сообщение о занятости далее, на голосовую почту
same => n,Hangup()

exten => _1XX#,1,Dial(SIP/${EXTEN:0:3},15,m)

;Трансфер если донабрали номер из сотого пула с#
далее все тоже что и в первом случае с _1XX
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
same => n(unavail),Voicemail(${EXTEN:0:3}@voicemail,u)
same => n,Hangup()
same => n(busy),VoiceMail(${EXTEN:0:3}@voicemail,b)
same => n,Hangup()

exten => t,1,Playback(pbx-transfer)
;Обработка вызова по таймауту если абонент ничего не донабрал
exten => t,n,Dial(SIP/100&SIP/101,30,m)
;Отправляем вызов на 100 и 101, звоним 30 секунд
;100 и 101 звонят одновременно
same => n,Playback(followme/sorry)
;Проговариваем сообщение, если никто не ответил
same => n,NoOp( trans to voicemailVoicemail )
;Вывод отладочного сообщения
same => n,Set(CDR(accountcode)=voicemail)
;Добавляем код voicemail в CDR
same => n,VoiceMail(100@voicemail)
;Переводим вызов на голосовую почту
same => n,Hangup

;###### 78123091111(00081111) Конец

;###### 3092545(00081112) Начало

exten => 00081112,1, Verbose(!!! 78123091112 Started !!!) ; Начало IVR 78123091112
same => n,Set(REDIRECTNUM=${DB(redirect/78123091112)})
;Проверяем установлена ли переадресация для 00081112, второй транк Телфин
same => n,GotoIf($[${ISNULL(${REDIRECTNUM})}]?proceed:redirect)
same => n(redirect),Set(CALLERID(num)=00081112)
same => n,Dial(SIP/78123091112/${REDIRECTNUM})
;Звоним на номер куда установлена переадерсация
;для второго транка Телфин с номером 78123091112
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
same => n(unavail),Voicemail(100@voicemail,u)
same => n,Hangup()
same => n(busy),VoiceMail(100@voicemail,b)
same => n,Hangup()
same => n(proceed), Set(CALLERID(name)=78123091112_)
same => n, Answer
same => n, Background(78123091112) ;IVR 78123091112
same => n,WaitExten(6)
same => n,Dial(SIP/102&SIP/103,30,m)
same => n,Playback(followme/sorry)
same => n,NoOp(Voicemail Started!!!)
same => n,Set(CDR(accountcode)=voicemail)
same => n,VoiceMail(100@voicemail)
same => n,Hangup

;####### 78123091112 Конец

include => redirect
;Добавим контекст для установки переадресации

[phones]

include => internal
include => outbound
include => redirect
include => voicemail
;Добавляем возможности нашим телефонам которые
;находятся в контексте phones

[internal]
;Контекст для внутренних вызовов
;если не дозвониться, возможность оставить голосовое сообщение
exten => _1XX,1,Dial(SIP/${EXTEN},10)
exten => _1XXX,1,Dial(SIP/${EXTEN},10)
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
same => n(unavail),Voicemail(${EXTEN}@voicemail,u)
same => n,Hangup()
same => n(busy),VoiceMail(${EXTEN}@voicemail,b)
same => n,Hangup()

[outbound]
;Контекст для исходящих вызовов с телефонов
;Исходящие вызовы с (00081112)78123091112

exten => _X.,1, Set(CALLERID(num)=00081112)
;Подставим внешний номер для Телфина
exten => _X.,n,Dial(SIP/78123091112/${EXTEN})
;Отправим вызов в транк 78123091112
exten => _+X.,1, Set(CALLERID(num)=00081112)
;Тоже, но если набран символ "+" перед номером
exten => _+X.,n,Dial(SIP/78123091112/${EXTEN:1})
exten => _X.,n, Hangup()

;Исходящие вызовы с (00081111)78123091111
;Самый простой способ отправить вызов на второй транк
;ввести префикс 9 перед номером.
exten => _9X.,1, Set(CALLERID(num)=00081111)
exten => _9X./00081111,n,Dial(SIP/78123091111/${EXTEN:1})
exten => _9X.,n, Hangup()

;Voicemail

exten => 700,1,VoiceMailMain(${CALLERID(num)}@voicemail)
;Возможность абонентам звонить и проверять голосовую почту
same => n,Hangup

[redirect]

;Установка переадресации 78123091112
exten => _#00#X.,1,Set(DB(redirect/78123091112)=${EXTEN:4})
;Абонент должен набрать #00#89627277780
exten => _#00#X.,2,Set(COUNT=${DB(redirect/78123091112)})
;Набранный номер 89627277780 запишется в БД
exten => _#00#X.,n,Answer()
exten => _#00#X.,n,SayDigits(${COUNT})
;Абоненту проговорится установленный номер
exten => _#00#X.,n,Hangup()

;Снятие переадресации 78123091112
exten => _#00#,1,Set(${DB_DELETE(redirect/78123091112)})
;Абонент должен набрать #00#, номер будет удален из БД
same => n,Answer
same => n,Playback(vm-goodbye)
same => n,SayDigits(${DB(redirect/78123091112)})

;Установка переадресации 78123091111
;аналогично предыдущему номеру но набирать нужно #01#
exten => _#01#X.,1,Set(DB(redirect/78123091111)=${EXTEN:4})
exten => _#01#X.,2,Set(COUNT=${DB(redirect/78123091111)})
exten => _#01#X.,n,Answer()
exten => _#01#X.,n,SayDigits(${COUNT})
exten => _#01#X.,n,Hangup()

;Снятие переадресации 78123091111
exten => _#01#,1,Set(${DB_DELETE(redirect/78123091111)})
same => n,Answer
same => n,Playback(vm-goodbye)
same => n,SayDigits(${DB(redirect/78123091111)})

Вот и все для минимальной конфигурации.

Для отладки конфигурации, можно пользоваться следующими командами из CLI консоли Asterisk для проверки переадресации:

#ast_cli>database put redirect 78123091111 89627277780

#ast_cli>database del redirect 78123091111

#ast_cli>database put redirect 78123091112 89627277780

#ast_cli>database del redirect 78123091112

Команды соответственно помещают и удаляют из базы данных Asterisk значения переменных для установки переадресации.
Для тестовых наборов из консоли:

#ast_cli>channel originate SIP/78123091111/89627277780 extension 100@outbound

Asterisk наберет с номера 100 номер.

В файле /etc/asterisk/logger.conf можно установить

console => notice,warning,error,debug

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

Автор: Игнат Кудрявцев

Tags: , ,

Комментарии:

3 Коммент. »

Оставить комментарий

Напишите Ваш комментарий ниже. Также Вы можете подписаться на комментарии к материалу через RSS

Вы можете использовать следующие теги:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

Мы поддерживаем Gravatar.

Контроль спама: * Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.