Страница 1 из 1

Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 19:26
aclz
Схема звонков на сотовые: Asterisk<->AP200D(2xFXO)<->GSM-шлюзы(2 шт.)

Каждый порт АддПака регистрируется на Астериске как отдельный пир (с именами, условно, 1001 и 1002).
Астериск сам выбирает на какой пир звонить, управляет занятостью, распределением минут и т.п., тут всё ок.

Но при звонке казалось бы через 1001, звонок всё-равно может уйти со второгоFXO-порта (и наоборот, рандомно).

Просьба ткнуть, что не доколупал в настройках Аддпака, чтобы звонок на 1001 всегда шел на порт 0/0, а 1002 на 0/1.

Конфиг (поскипаны малозначимые места):
!
voice service voip
busyout monitor gatekeeper
busyout monitor sip-server
busyout monitor voip-interface
!
voice-port 0/0
connection plar 1001
ring detect-timeout 80
caller-id enable
caller-id name disable
!
voice-port 0/1
connection plar 1002
ring detect-timeout 80
caller-id enable
caller-id name disable
!
dial-peer voice 0 pots
destination-pattern T
port 0/0
user-name 1001
user-password some-password
!
dial-peer voice 1 pots
destination-pattern T
port 0/1
user-name 1002
user-password some-password
!
dial-peer voice 1000 voip
destination-pattern 100.
session target sip-server
session protocol sip
dtmf-relay rtp-2833
no vad
!
sip-ua
user-register
sip-server 192.168.0.1
register e164
!

Есть еще второй, факультативный вопрос: как бы сделать, чтобы Аддпак отрубал входящие со стороны портов шлюзов уже на себе (сейчас им делает hangup Астериск).

Re: Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 19:51
Vlad1983

Код: Выделить всё

conf t
dial-peer voice 0 pots
destination-pattern 1001
dial-peer voice 1 pots
destination-pattern 1002

Re: Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 20:01
aclz
Спасибо, я так пробовал, выходит congestion (насколько могу судить, из-за того, что звонку в Аддпаке некуда податься, т.к. мы звоним не на сам 1001, а через него, а destination на сотовые в этом случае не определено).

В этом случае Астериск выдает это:

Код: Выделить всё

-- Executing [989222222222@to-gsm-gw:12] Dial("SIP/PBX-00000001", "SIP/89222222222@1001,60,xX") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/89222222222@1001
  == Everyone is busy/congested at this time (1:0/1/0)

Re: Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 20:07
ded
aclz, я надеялся, что Вы смотрели в инструкцию по настройке этого аппарата, где ясно описаны примеры такой маршрутизации. И там показано, что без префиксов Вам никак не обойтись: направляя звонок с префиксом, допустим, 1001 из Астериска, нам надо этот префикс откусить на АддПаке на определённом диал пире, который отправит по этому префиксу его в порт 0/0, а с префиксом 1002 - в порт 0/1.

Код: Выделить всё

translation-rule 1
rule 1 1001T  T

translation-rule 2
rule 1 1002T T

dial-peer voice 0 pots
destination-pattern 1001.......
translate-outgoing called-number  1
port 0/0
user-name 1001
user-password some-password
!
dial-peer voice 1 pots
destination-pattern 1002.........
translate-outgoing called-number  2
port 0/1
user-name 1002
user-password some-password
И вот тут ещё все ответы на все вопросы:
https://www.voipinfo.ru/forum/viewtopic.php?f=9&t=8765

Re: Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 23:12
aclz
Здрасьте, ded!

Да, моему невежеству нет оправдания :)

В отсутствии чего-то более красивого, подобный костыль с префиксом, равным экстеншену, я уже сам было начал реализовывать. Я задал вопрос лишь для того, т.к. думал, что когда соединяешь AddPac с SIP-сервером не через единый коннект в sip-ua, а как два отдельных пира, каждый со своим логином и паролем, то эти пиры д.б. как бы независимыми друг от друга SIP-клиентами (иначе зачем вообще возможность задания своего юзернейма и пароля на конкретном dial-peer, привязанного к физическому порту).

Re: Маршрутизация звонков (*+Addpac+GSM-шлюзы)

Добавлено: 03 апр 2014, 23:35
ded
Если бы пиры регистрировались с разных портов, то было бы как два отдельных пира, каждый со своим логином и паролем, и эти пиры как бы были независимыми друг от друга SIP-клиентами, один ИП и разные порты.