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

Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 12:12
pmb17
Добрый день.
Помогите разобраться с передачей CallerID в GSM шлюз OpenVox VS-GW1600 с GSM модулем на 4 сим-карты. Шлюз подключен к Asterisk, необходимо исходящие звонки с Asterisk переводить на разные симкарты в зависимости от номера звонящего.
На шлюзе в Advance Routing Rule добавил паттерн и указал CallerID. В файле extensions_routing.conf это выглядит как

[rtg-987844_out-1]
exten => _89XXXXXXXXX/2041,1,NoOp(_89XXXXXXXXX/2041 matches Rule rtg-987844_out-1)
exten => _89XXXXXXXXX/2041,n,Set(CDR_CALLEEID=${EXTEN})
exten => _89XXXXXXXXX/2041,n,Macro(dial-failover,,${EXTEN},extra/1,0,gsm-1)
exten => _89XXXXXXXXX/2041,n,Goto(nocdr,s,1)

На Asterisk есть правило для исходящих звонков:

exten => _89XXXXXXXXX,1,Answer()
exten => _89XXXXXXXXX,n,Set(CALLERID(all)="2041" <2041>)
exten => _89XXXXXXXXX,n,Macro(trunkdial-failover-0.3,${trunk_gsm_1}/${EXTEN},,trunk_gsm_1)

При этом исходяшие с Asterisk c номера 2041 не обрабатываются правилом маршрутизации на GSM шлюзе если указан CallerID 2041

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 12:23
ded
Если Вы при исходящих вызовах из SIP в GSM пытаетесь подставить другой Caller ID, то ваше правило
exten => _89XXXXXXXXX/2041,n,Set(CDR_CALLEEID=${EXTEN})
не имеет смысла, так как Caller ID из шлюза в мир GSM отправится с сим карточки, за которой закреплен конкретный моб. номер. И менять его никакой шлюз не может.

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 12:28
pmb17
Да GSM шлюз подключен через SIP

[sip_enpoints1]
username=user1
secret=XXXXXXXX
host=192.168.1.79
transport=tcp
nat=yes
qualify=yes
qualifyfreq=60
dtmfmode=rfc2833
trustrpid=no
sendrpid=no
callingpres=allowed_passed_screen
progressinband=never
allowoverlap=no
usereqphone=no
use_q850_reason=no
honorsdpversion=yes
allowtransfer=yes
promiscredir=no
max_forwards=70
registertrying=no
timert1=500
timerb=32000
session-timers=accept
session-minse=90
session-expires=1800
session-refresher=uas
insecure=port,invite
type=friend
context=sipinbound
setvar=SIPROUTE=sip-987844-192.168.1.79
endpoint_name=Asterisk_trunk


дебаг на asteriske включал, вывел CALLERID через NoOp() но как найти причину почему он не передается на GSM шлюз пока не знаю, и что смотреть в отладочной информации

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 13:55
ded
ded писал(а):Если Вы при исходящих вызовах из SIP в GSM пытаетесь подставить другой Caller ID, то ваше правило
exten => _89XXXXXXXXX/2041,n,Set(CDR_CALLEEID=${EXTEN})
не имеет смысла, так как Caller ID из шлюза в мир GSM отправится с сим карточки, за которой закреплен конкретный моб. номер. И менять его никакой шлюз не может.

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 14:01
pmb17
ded писал(а):Если Вы при исходящих вызовах из SIP в GSM пытаетесь подставить другой Caller ID, то ваше правило
exten => _89XXXXXXXXX/2041,n,Set(CDR_CALLEEID=${EXTEN})
не имеет смысла, так как Caller ID из шлюза в мир GSM отправится с сим карточки, за которой закреплен конкретный моб. номер. И менять его никакой шлюз не может.
Я не хочу его менять, я хочу просто передать CallerID sip-номера в шлюз, чтобы можно было использовать его в дальнейшем в правилах маршрутизации шлюза.

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 15:35
pmb17
Проблема похожая на http://forum.asterisk.ru/viewtopic.php?f=3&t=150, только решение предложенное тут не помогло
Включит debug в поле from: стоит "asterisk@"
Где можно увидеть передается или нет CallerID?

Re: Передать CallerID в GSM шлюз

Добавлено: 03 сен 2014, 17:58
pmb17
Не смог решить проблему стандартными средствами.
Через SIPAddHeader() добавил свое поле с нужным мне значением CALLERID на Asterisk, через SIP_HEADER() получил его на шлюзе и дальше обрабатываю.