Jump to content
Калькуляторы

Не работает исходящий звонок

Добрый день! В asteriske новичек, помогите разобраться с исходящими звонками.

От провайдера приходит транк по vlan 192.168.140.34 в шлюз, за ним находится asterisk 192.168.3.10. Транк подключен без регистрации. На шлюзе проброшены порты 5060 и 10000:20000, также проброшен статический маршрут до 84.52.103.45 для транка (так сказал провайдер).

Настройки sip.conf

[general]

externip=84.52.103.45

 

[westcall]

type=friend

host=84.52.103.45

permit=84.52.103.45/255.255.255.255

dtmfmode=rfc2833

insecure=invite,port

nat=force_rport,comedia

directmedia=nonat

qualify=yes

disallow=all

allow=ulaw

canreinvite=yes

context=from-myin

 

Транк подключен, входящие идут нормально, а при исходящих пишет:

 

== Using SIP RTP CoS mark 5

— Executing [79062589195@from-internal:1] Macro("SIP/111-00000021", "user-callerid,LIMIT,EXTERNAL,") in new stack

— Executing [s@macro-user-callerid:1] Set("SIP/111-00000021", "TOUCH_MONITOR=1489218696.33") in new stack

— Executing [s@macro-user-callerid:2] Set("SIP/111-00000021", "AMPUSER=111") in new stack

— Executing [s@macro-user-callerid:3] GotoIf("SIP/111-00000021", "0?report") in new stack

— Executing [s@macro-user-callerid:4] ExecIf("SIP/111-00000021", "1?Set(REALCALLERIDNUM=111)") in new stack

— Executing [s@macro-user-callerid:5] Set("SIP/111-00000021", "AMPUSER=111") in new stack

— Executing [s@macro-user-callerid:6] GotoIf("SIP/111-00000021", "0?limit") in new stack

— Executing [s@macro-user-callerid:7] Set("SIP/111-00000021", "AMPUSERCIDNAME=111") in new stack

— Executing [s@macro-user-callerid:8] GotoIf("SIP/111-00000021", "0?report") in new stack

— Executing [s@macro-user-callerid:9] Set("SIP/111-00000021", "AMPUSERCID=111") in new stack

— Executing [s@macro-user-callerid:10] Set("SIP/111-00000021", "__DIAL_OPTIONS=tr") in new stack

— Executing [s@macro-user-callerid:11] Set("SIP/111-00000021", "CALLERID(all)="111" <111>") in new stack

— Executing [s@macro-user-callerid:12] GotoIf("SIP/111-00000021", "0?limit") in new stack

— Executing [s@macro-user-callerid:13] ExecIf("SIP/111-00000021", "1?Set(GROUP(concurrency_limit)=111)") in new stack

— Executing [s@macro-user-callerid:14] ExecIf("SIP/111-00000021", "0?Set(CHANNEL(language)=)") in new stack

— Executing [s@macro-user-callerid:15] GotoIf("SIP/111-00000021", "1?continue") in new stack

— Goto (macro-user-callerid,s,28)

— Executing [s@macro-user-callerid:28] Set("SIP/111-00000021", "CALLERID(number)=111") in new stack

— Executing [s@macro-user-callerid:29] Set("SIP/111-00000021", "CALLERID(name)=111") in new stack

— Executing [s@macro-user-callerid:30] Set("SIP/111-00000021", "CDR(cnum)=111") in new stack

— Executing [s@macro-user-callerid:31] Set("SIP/111-00000021", "CDR(cnam)=111") in new stack

— Executing [s@macro-user-callerid:32] Set("SIP/111-00000021", "CHANNEL(language)=en") in new stack

— Executing [79062589195@from-internal:2] Set("SIP/111-00000021", "MOHCLASS=default") in new stack

— Executing [79062589195@from-internal:3] Set("SIP/111-00000021", "_NODEST=") in new stack

— Executing [79062589195@from-internal:4] Gosub("SIP/111-00000021", "sub-record-check,s,1(out,79062589195,)") in new stack

— Executing [s@sub-record-check:1] Set("SIP/111-00000021", "REC_POLICY_MODE_SAVE=") in new stack

— Executing [s@sub-record-check:2] GotoIf("SIP/111-00000021", "1?check") in new stack

— Goto (sub-record-check,s,7)

— Executing [s@sub-record-check:7] Set("SIP/111-00000021", "__MON_FMT=wav") in new stack

— Executing [s@sub-record-check:8] GotoIf("SIP/111-00000021", "1?next") in new stack

— Goto (sub-record-check,s,11)

— Executing [s@sub-record-check:11] ExecIf("SIP/111-00000021", "0?Return()") in new stack

— Executing [s@sub-record-check:12] ExecIf("SIP/111-00000021", "0?Set(__REC_POLICY_MODE=)") in new stack

— Executing [s@sub-record-check:13] GotoIf("SIP/111-00000021", "0?out,1") in new stack

— Executing [s@sub-record-check:14] Set("SIP/111-00000021", "__REC_STATUS=INITIALIZED") in

Share this post


Link to post
Share on other sites

[general]

externip=84.52.103.45

Не нужно этого.

Здесь может быть ВАШ адрес, а Вы зачем-то вставили адрес провайдера.

Share this post


Link to post
Share on other sites

Убирали эту строку, результат тот же. Провайдер говорит что мы сами себе звоним.

Share this post


Link to post
Share on other sites

sip.conf

 

[trunk]
type=peer
context=blabla
disallow=all
allow=alaw,ulaw
host=<ip_sip_server>
qualify=yes
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
nat=yes

 

 

extensions.conf

[blabla]
exten => _X.,1,Set(CALLERID(all)=7777777<7777777>)
exten => _X.,n,Dial(SIP/trunk/${EXTEN})
exten => _X.,n,Hangup()

exten => 7777777,1,Dial(SIP/<local_sip>)

Share this post


Link to post
Share on other sites

sip.conf

 

[trunk]
type=peer
context=blabla
disallow=all
allow=alaw,ulaw
host=<ip_sip_server>
qualify=yes
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
nat=yes

 

 

extensions.conf

[blabla]
exten => _X.,1,Set(CALLERID(all)=7777777<7777777>)
exten => _X.,n,Dial(SIP/trunk/${EXTEN})
exten => _X.,n,Hangup()

exten => 7777777,1,Dial(SIP/<local_sip>)

 

Всё равно, результата нет, все тоже самое, такое ощущение, что elastix не принимает мои context и посылает по своим.

Share this post


Link to post
Share on other sites

Провайдер говорит что мы сами себе звоним.

Правильно говорит, потому что у вас в трассировке ни разу не упоминается маршрут через SIP/westcall.

Share this post


Link to post
Share on other sites

Попробуйте упростить диал план до минимума, может даже ноутбук подключить с sip фоном + Wireshark. Если не ошибаюсь, Elastix настраивается через web морду,которая грузит настройки в SQL, и с него уже заполняются конфиги в /etc/asterisk/...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this