Jump to content

Recommended Posts

Posted

Elastix 2.3.0-16 - не получается разрулить внутренние и внешние исходящие вызовы с внутренних номеров..

"Внутренние" - это звонки внутри АТС (между 32ХХ), "внешние" - это вызов с "внутренних" номеров (32ХХ) на 89ХХХХХХХХХ (шлюз на huawei 1550).

Работает что-то одно - либо исходящие только на "внешку" (from-gsm), либо исходящие только "внутрь" (from-internal).

Как разрулить исходящие так, чтобы вызов на 32ХХ шёл "внутрь", а вызов 89ХХХХХХХХ - "наружу" (в транк)?

Если назначаю внутреннему номеру context "from-gsm", исходящие вызовы идут только на 89ХХХХХХХХХ, если "from-internal" - только на "32ХХ"..

Posted

нужен контекст объединяющий эти два контекста, либо описать все в одном, ну в астериске так делается))

Posted (edited)

А каким образом внутренние номера подключены к астериску? SIP? FXO?

Вообще у меня по умолчанию у всех агентов настроен контекст from-internal.

Отдельно создано 2 исходящих маршрута (один на мобильные номера, другой на стационарные).

Единственное отличие - у тебя есть временные рамки по которым разрешается звонить через этот транк. Может быть в нем проблема? Попробуй его отключить.

Edited by strobil
Posted

нужен контекст объединяющий эти два контекста, либо описать все в одном, ну в астериске так делается))

Ну я тоже так подумал. А вот как сиё на Elastix осуществить? Чтобы этот контекст еще и не перезаписывался.

 

А каким образом внутренние номера подключены к астериску? SIP? FXO?

SIP.

Вообще у меня по умолчанию у всех агентов настроен контекст from-internal.

Отдельно создано 2 исходящих маршрута (один на мобильные номера, другой на стационарные).

Вот именно такой вариант я и хочу реализовать (см.рис.)

Телефон 3203 должен принимать входящие с ТФОП и плюс к этому переадресовывать входящие на любой из внутренних номеров.

Все "внутренние" телефоны (3201-3203) должны уметь звонить друг-другу.

Софт. телефон (3201) должен принимать звонки только с GSM и от "внутренних" (3202, 3203) и звонить на внутренние и GSM номера (вот это как раз и не получается).

Исходящие от телефонов 3202 и 3203 должны идти только в ТФОП.

Единственное отличие - у тебя есть временные рамки по которым разрешается звонить через этот транк. Может быть в нем проблема? Попробуй его отключить.

А причем тут временные рамки? На исходящие они отрабатывают без проблем.

Проблема в том, что если я назначу тлф. 3201 контекст from-internal, всё работает, как надо, за исключением исходящих на GSM, если назначить контекст from-gsm, то соотв. наоборот - исходящие только на GSM.

office_ats.JPG

Posted (edited)

Дак это делается не путем изменения контекста у экстеншена, а указывается в маршрутах.

Кидаешь 3201 в отдельную очередь, рулишь с GSM-транка все звонки на него.

Далее в роуте на стационарные пишешь что-то типа (паттерн) /320[2-3], тем самым исключаешь 3201.

out_route.JPG

Edited by strobil
Posted

Дак это делается не путем изменения контекста у экстеншена, а указывается в маршрутах.

Кидаешь 3201 в отдельную очередь, рулишь с GSM-транка все звонки на него.

Далее в роуте на стационарные пишешь что-то типа (паттерн) /320[2-3], тем самым исключаешь 3201.

Бесполезно..

Если 3201 назначен контекст from-internal, в GSM роут звонок не попадает и наоборот - если у 3201 контекст from-gsm, не идёт на внутренние номера.

Звонок уходит в bad-number (сообщение - "Неправильно набран номер...").

Вот что в логе

 

[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@from-internal:1] Macro("SIP/3201-0000008d", "user-callerid") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:1] Set("SIP/3201-0000008d", "AMPUSER=3201") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:2] GotoIf("SIP/3201-0000008d", "0?report") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:3] ExecIf("SIP/3201-0000008d", "1?Set(REALCALLERIDNUM=3201)") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:4] Set("SIP/3201-0000008d", "AMPUSER=3201") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:5] Set("SIP/3201-0000008d", "AMPUSERCIDNAME=Tech support") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:6] GotoIf("SIP/3201-0000008d", "0?report") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:7] Set("SIP/3201-0000008d", "AMPUSERCID=3201") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:8] Set("SIP/3201-0000008d", "CALLERID(all)="Tech support" <3201>") in new sta
ck
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:9] ExecIf("SIP/3201-0000008d", "0?Set(CHANNEL(language)=)") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:10] GotoIf("SIP/3201-0000008d", "0?continue") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:11] Set("SIP/3201-0000008d", "__TTL=64") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:12] GotoIf("SIP/3201-0000008d", "1?continue") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Goto (macro-user-callerid,s,19)
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:19] Set("SIP/3201-0000008d", "CALLERID(number)=3201") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:20] Set("SIP/3201-0000008d", "CALLERID(name)=Tech support") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-user-callerid:21] NoOp("SIP/3201-0000008d", "Using CallerID "Tech support" <3201>") in new
stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@from-internal:2] Macro("SIP/3201-0000008d", "dundi-priv,89xxxxxxxxx") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [s@macro-dundi-priv:1] Goto("SIP/3201-0000008d", "89xxxxxxxx,1") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Goto (macro-dundi-priv,89xxxxxxxxx,1)
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@from-internal:3] GotoIf("SIP/3201-0000008d", "0?100") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@from-internal:4] Goto("SIP/3201-0000008d", "bad-number,89xxxxxxxxx,1") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Goto (bad-number,89xxxxxxxxx,1)
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:1] ResetCDR("SIP/3201-0000008d", "") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:2] NoCDR("SIP/3201-0000008d", "") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:3] Progress("SIP/3201-0000008d", "") in new stack
[Jan 19 21:43:13] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:4] Wait("SIP/3201-0000008d", "1") in new stack
[Jan 19 21:43:15] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:5] Progress("SIP/3201-0000008d", "") in new stack
[Jan 19 21:43:15] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:6] Playback("SIP/3201-0000008d", "silence/1&pbx-invalid,noanswer") in new st
ack
[Jan 19 21:43:15] VERBOSE[14412] file.c:     -- <SIP/3201-0000008d> Playing 'silence/1.alaw' (language 'ru')
[Jan 19 21:43:16] VERBOSE[14412] file.c:     -- <SIP/3201-0000008d> Playing 'pbx-invalid.alaw' (language 'ru')
[Jan 19 21:43:21] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxxx@bad-number:7] Wait("SIP/3201-0000008d", "1") in new stack
[Jan 19 21:43:22] VERBOSE[14412] pbx.c:     -- Executing [89xxxxxxxxx@bad-number:8] Congestion("SIP/3201-0000008d", "20") in new stack
[Jan 19 21:43:22] WARNING[14412] channel.c: Prodding channel 'SIP/3201-0000008d' failed
[Jan 19 21:43:22] VERBOSE[14412] pbx.c:   == Spawn extension (bad-number, 89xxxxxxxxx, 8) exited non-zero on 'SIP/3201-0000008d'

 

Походу нужен какой-то "форвард-фильтр", который в зависимости от набранного номера, заворачивает исходящий звонок в нужный роут/транк.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.