Чат  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Маршрутизация исходящих вызовов приходящих с транка с Avaya

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модератор: april22

Маршрутизация исходящих вызовов приходящих с транка с Avaya

Сообщение Александр » 18 апр 2019, 16:19

Имеется транк между Avaya и Asterisk(FreePBX)
К астериску подключены транки провайдеров городской телефонии.
На avaya есть множество extension. Все экстеншены разбиты по группам. Соответствующая группа должна пользоваться только своим транком для исходящих вызовов, когда звонит по своему домашнему региону.
Т.е. добавочные номера на авае:
3100-3049 Звонят через транк 1
3150-3199 через транк 2
................................
5950-5999 звонят через транк N и т.д.

С аваи все эти вызовы маршрутизируются в транк авая-астериск. И далее должны уходить в соответствующий транк на астериске для выхода в город.
Какой выбрать правильный и удобный способ для разруливания выбора нужного транка?
Александр
 
Сообщений: 12
Зарегистрирован: 19 мар 2019, 17:59

Re: Маршрутизация исходящих вызовов приходящих с транка с Av

Сообщение ded » 18 апр 2019, 16:31

Несколько вариантов:

1) Разруливать через ограничения маршрута по Caller ID
Код: выделить все
; 3049-3100
exten => _7495ZXXXXXX/_30[4-9]X,1,Dial(SIP/operator_1/${EXTEN}) ; примерно так

;3150-3199
exten => _7495ZXXXXXX/_31ХX,1,Dial(SIP/operator_2/${EXTEN})  ; примерно так, масок CID будет больше.


2) Принимать каждую группу абонентов Avaya в отдельный контекст, де установить правил выхода в мир и сделать
include => form-internal

3) Объявить всех абонентов Avaya кастомными абонентами Астериска с кастомной строкой набора
SIP/Avaya/3101
SIP/Avaya/3102
SIP/Avaya/3103
и каждому назначить external Caller ID, по которму будет выходить в мир через соответствующий транк на Астериске..
ded
 
Сообщений: 13953
Зарегистрирован: 26 авг 2010, 19:00

Re: Маршрутизация исходящих вызовов приходящих с транка с Av

Сообщение Александр » 18 апр 2019, 18:10

Спасибо. Начал с 3го варианта.
Добавил custom extension на астерикс, с таким же добавочным как на avaya
Из плюсов:
На телефоне авая, добавочный которого прописан как кастом на астериске, начал отображать Display Name вызываемого абонента с астериск станции. Раньше отображался только добавочный.

С другой стороны нужно теперь разруливать как то обратные вызовы. Исходящий с астериска на добавочный аваи, теперь стал приземлятся на кастои экстеншн на астериске...
Александр
 
Сообщений: 12
Зарегистрирован: 19 мар 2019, 17:59

Re: Маршрутизация исходящих вызовов приходящих с транка с Av

Сообщение ded » 18 апр 2019, 19:11

Если обратные вызовы приходят в контекст from-internal, то всё будет ОК. То есть транк авая-астериск. должен иметь контекст from-internal.
Вы справитесь.
ded
 
Сообщений: 13953
Зарегистрирован: 26 авг 2010, 19:00

Re: Маршрутизация исходящих вызовов приходящих с транка с Av

Сообщение Александр » 14 май 2019, 10:51

Спасибо, с контекстом from-internal все заработало.Но почему то на кастом экстеншене не перезаписывается callerid.

Т.е . на авае есть добавочный 2050
Создаю на астериске кастом экстеншн 2050
Dial: SIP/avaya-tr/2050
Outbound CID: 4951111111

Прописываю данный CID(callerid) в соответствующий исходящий маршрут и в итоге получаю "набранный номер не может быть вызван"
При этом если я пропишу в данном исходящем маршруте callerid 2050, то вызов идет.
Т.е. похоже при исходящем вызове с аваевского 2050 игнорируется прописанный CID в кастом экстеншене на астериске..

Код: выделить все
== Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
       > 0x7fb2400658d0 -- Strict RTP learning after remote address set to: 10.0.110.6:2082
    -- Executing [89165532445@from-internal:1] Macro("SIP/avaya-tr-00000171", "user-callerid,LIMIT,EXTERNAL,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/avaya-tr-00000171", "TOUCH_MONITOR=1557817342.375") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/avaya-tr-00000171", "AMPUSER=2050") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/avaya-tr-00000171", "0?report") in new stack
    -- Executing [s@macro-user-callerid:4] ExecIf("SIP/avaya-tr-00000171", "1?Set(REALCALLERIDNUM=2050)") in new stack
    -- Executing [s@macro-user-callerid:5] Set("SIP/avaya-tr-00000171", "AMPUSER=2050") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/avaya-tr-00000171", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:7] Set("SIP/avaya-tr-00000171", "AMPUSERCIDNAME=Александр 2050") in new stack
    -- Executing [s@macro-user-callerid:8] ExecIf("SIP/avaya-tr-00000171", "0?Set(__CIDMASQUERADING=TRUE)") in new stack
    -- Executing [s@macro-user-callerid:9] GotoIf("SIP/avaya-tr-00000171", "0?report") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/avaya-tr-00000171", "AMPUSERCID=2050") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/avaya-tr-00000171", "__DIAL_OPTIONS=HhTtr") in new stack
    -- Executing [s@macro-user-callerid:12] Set("SIP/avaya-tr-00000171", "CALLERID(all)="Александр 2050" <2050>") in new stack
    -- Executing [s@macro-user-callerid:13] GotoIf("SIP/avaya-tr-00000171", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:14] ExecIf("SIP/avaya-tr-00000171", "1?Set(GROUP(concurrency_limit)=2050)") in new stack
    -- Executing [s@macro-user-callerid:15] NoOp("SIP/avaya-tr-00000171", "Macro Depth is 1") in new stack
    -- Executing [s@macro-user-callerid:16] GotoIf("SIP/avaya-tr-00000171", "1?report2:macroerror") in new stack
    -- Goto (macro-user-callerid,s,17)
    -- Executing [s@macro-user-callerid:17] GotoIf("SIP/avaya-tr-00000171", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,35)
    -- Executing [s@macro-user-callerid:35] Set("SIP/avaya-tr-00000171", "CALLERID(number)=2050") in new stack
    -- Executing [s@macro-user-callerid:36] Set("SIP/avaya-tr-00000171", "CALLERID(name)=Александр 2050") in new stack
    -- Executing [s@macro-user-callerid:37] GotoIf("SIP/avaya-tr-00000171", "0?cnum") in new stack
    -- Executing [s@macro-user-callerid:38] Set("SIP/avaya-tr-00000171", "CDR(cnam)=Александр 2050") in new stack
    -- Executing [s@macro-user-callerid:39] Set("SIP/avaya-tr-00000171", "CDR(cnum)=2050") in new stack
    -- Executing [s@macro-user-callerid:40] Set("SIP/avaya-tr-00000171", "CHANNEL(language)=ru") in new stack
    -- Executing [89165532445@from-internal:2] NoCDR("SIP/avaya-tr-00000171", "") in new stack
    -- Executing [89165532445@from-internal:3] Progress("SIP/avaya-tr-00000171", "") in new stack
    -- Executing [89165532445@from-internal:4] Wait("SIP/avaya-tr-00000171", "1") in new stack
       > 0x7fb2400658d0 -- Strict RTP switching to RTP target address 10.0.110.6:2082 as source
    -- Executing [89165532445@from-internal:5] Playback("SIP/avaya-tr-00000171", "silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer") in new stack
    -- <SIP/avaya-tr-00000171> Playing 'silence/1.alaw' (language 'ru')
    -- <SIP/avaya-tr-00000171> Playing 'cannot-complete-as-dialed.alaw' (language 'ru')
Reliably Transmitting (no NAT) to 10.192.1.28:64685:
Александр
 
Сообщений: 12
Зарегистрирован: 19 мар 2019, 17:59


Вернуться в Вопросы новичков

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

© 2008 — 2019 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH