Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Соответствие каналов астерисков

Соответствие каналов астерисков

Сообщений: 54

Соответствие каналов астерисков

Есть 2 астериска. Они соединены между собой SIP (или IAX) транками. Необходимо определить соответствие каналов на 1 и 2 астериске. Т.е. Взять канал любого активного звонка на 2 астериске и определить соответствующий sip канал на 1. Активных звонков может быть много. Я делал так:
на 2 астериске
show channel имя_нужного_sip_канала
Смотрел параметр SIPCALLID
sipcallid = 3d3e05cf206e24ab76e685894eb1a383@192.168.1.1
Далее на 1 астериске последовательно перебирал все активные каналы и искал канал у которого такой же sipcallid. Правильный ли такой подход ?
В цепочке может быть несколько астерисков, соединенных между собою транками с разными кодеками (ulaw, g729), необходимо полностью отследить путь звонка. Звонок в последующем будет контролироваться сторонней программой через менеджер.

И еще одна проблема. При IAX транках часто случались "глухие звонки", т.е. Человек на телефоне (from-pstn) слышит голос, а оператор на астериске нет, после перевода транков на SIP, проблема исчезла, может кто сталкивался с этим.
Схема расположения астерисков следующая:
Definity - E1 - A[1] - ulaw - A[2] - g729 - A[3] - SIP телефоны

С ув. Сергей Горшенков
2006-04-12 17:17

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: Соответствие каналов астерисков

А можно вопрос? :)
Зачем ЭТО?
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2006-04-12 19:57

Сообщений: 54

Re: Соответствие каналов астерисков

2litnimax
Я ожидал это, если честно. Может я конечно и через одно место подхожу, но расскажу схему работы.
У провайдера стоит Definity с подсоединенным по E1 транку с астериском. У провайдера была поставлена наша машина с астериском (A1), соединенная с астериском провайдера по кодеку ulaw, т.к. эта машина находится в непосредственной близости и в одном сегменте сети провайдера, любые коллизии просто исключаются, на эту машина (A1) и предполагалось возложить функции факсового сервера. От провайдера в оффис идет выделенный узкий канал, в оффисе стоит астериск (A2), соединен с астериском (А1) у провайдера транком по g729 кодеку. Раньше был еще и транк ulaw, но в связи с не очень стабильной работой канала были проблемы с работой факсов. Факс подключался через CISCO ATA, как SIP клиент к астериску. Сейчас ведется работа, что бы полностью исключить "железные" факсовые аппараты, а пользоваться функциями астериска (rxfax, txfax).
Definity - E1 А0 - A[1] - ulaw - A[2] - (узкий канал g729) - A[3] - SIP телефоны
Звонок приходит в оффис, в момент разговора клиент предлагает передать факс. Менеджер должен набрать комбинацию клавиш на телефоне, что бы звонок оказался на астериске у провайдера (A1), там звонок попадает на специальный exten, на котором срабатывает прием факса (rxfax), далее принятый факс отсылается на e-mail менеджера. Далее звонок возвращается обратно менеджеру и они продолжают разговор. Нужно сделать такой "хитрый" трансфер, что бы звонок полностью оказался на астериске провайдера (A1).

Как я это реализовал.
Менеджер делает безусловную переадресацию (#exten), на специальный exten, на котором запускается agi скрипт. Этот скрипт смотрит на каком канале сидит звонок, заходит в (A1) порт 5038 через функции Asterisk Call Manager, ищет этот самый канал (show channels, далее анализирует все активные каналы), когда находится нужный канал делает Redirect

ACTION: Redirect
Channel: SIP/x7065558529-8f54
Context: default
Exten: 5558530
Priority: 1

То есть заворачивает полностью звонок на А1, где и срабатывает прием факса.

2006-04-13 11:07

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: Соответствие каналов астерисков

Как насчет такого варианта.
Первый астер настраивается на fax detect = yes, на нем в контексте передачи всех звонков на 2-ой астер делаеться exten => fax,..., во время разговора первый астер понимает что пошел факс, и кидает звонок на fax екстен, где он обрабатывается, а потом пусть снова делает Dial на того же юзера. Запомнить номер набранного можно в переменной. Грубый пример:

[e1]
exten => _X.,1,Set(NUMBER=${EXTEN})
exten => _X.,2,Dial(IAX2/aster2/${EXTEN})
exten => _X.,3,Hangup
exten => fax,1,Set(TIFF=${NUMBER}-${uniqeueid})\
exten => fax,2,RxFax(${TIFF})
exten => fax,3,Agi(fax2mail|${TIFF}) -- Тут скрипт найдет на какое мыло слать, отковертирует в PDF и удалит TIFF
exten => fax,4,Dial(IAX2/aster2/${NUMBER})


Что скажете?
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2006-04-13 12:21

Сообщений: 1530

Re: Соответствие каналов астерисков

А fax detect с помощью NVLineDetect?
А есть бесплатный аналог? ;)
http://www.telecomtechnology.net - premium терминация
2006-04-13 12:43

Сообщений: 54

Re: Соответствие каналов астерисков

Спасибо, за простой и мудрый совет! Я попробую сейчас...
2006-04-13 12:46

Сообщений: 54

Re: Соответствие каналов астерисков

litnimax,
вы имеете в виду на счет faxdetect zaptel.conf ?
А возможно ли это именно на SIP канале ? Я поставил nvfaxdetect. Все что я добился (на СИП) - это определение факса в самом начале, если после Answer идет факс оно сразу прыгает на exten => fax, иначе звонит на телефон. А в момент разговора ничего не происходит :(
2006-04-13 18:47

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: Соответствие каналов астерисков

У меня такая конфигурация:
- Asterisk с PRI
- Asterisk без PRI.
Так вот, звонки пробрасываются с PRI на 2-й астериск. В момент разговора с другой стороны начинают передавать факс, и звонок обрывается и переходит на 1-й астериск в екстен fax.
Да, faxdetect zapata.conf, а не zaptel. У меня стоит both.
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2006-04-13 19:24

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru