AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Исходящие вызовы, астериск

Newbies/FAQ Forum 25 сообщений -
#1

Но получается делать исходящие вызовы. Пишет в консоли "[Aug 12 03:11:43] NOTICE[1866]: chan_sip.c:14721 handle_request_invite: Call from '202' to extension '79038775555' rejected because extension not found. "

Код:
gw*CLI> show dialplan
[ Context 'office' created by 'pbx_config' ]
'201' => 1. Dial(SIP/201) [pbx_config]
'202' => 1. Dial(SIP/202) [pbx_config]
'203' => 1. Dial(SIP/203) [pbx_config]

[ Context 'out_calls' created by 'pbx_config' ]
'_.' => 1. Dial(SIP/sipnet) [pbx_config]

[ Context 'incoming_calls' created by 'pbx_config' ]

[ Context 'default' created by 'pbx_config' ]
's' => 1. Answer() [pbx_config]
2. Hangup() [pbx_config]

[ Context 'parkedcalls' created by 'res_features' ]
'700' => 1. Park() [res_features]

-= 6 extensions (7 priorities) in 5 contexts. =-
The 'show dialplan' command is deprecated and will be removed in a future release. Please use 'dialplan show' instead.
-- Registered SIP '202' at 192.168.10.100 port 2694
-- Saved useragent "3CXVoipPhone 3.1.6288.0" for peer 202
[Aug 12 03:02:04] NOTICE[1489]: chan_sip.c:15790 handle_request_subscribe: Received SIP subscribe for peer without mailbox: 202
-- Remote UNIX connection


Код:
gw# cat extensions.conf
[general]
[globals]
OUT_TRUNK=SIP/sipnet

[default]
exten => s,1,Answer()
exten => s,n,Hangup()

[incoming_calls]

[out_calls]
exten =>_.,1, Dial(SIP/sipnet)

[office]
exten => 201,1,Dial(SIP/201)
exten => 202,1,Dial(SIP/202)
exten => 203,1,Dial(SIP/203)
exten => _.,Dial(SIP/ХХХХ:ХХХХ@sipnet.ru/9826983)

Код:
gw# cat sip.conf
[general]
context=default ; Default context for incoming calls
allowguest=no ; Allow or reject guest calls (default is yes)
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833
;videosupport=yes
;useragent=SipPhone
register => ХХХХ:ХХХХ@sipnet.ru/9826983
localnet = 192.168.10.0/255.255.255.0
externip = 188.113.13.24
externrefresh = 60
nat = no
canreinvite = nonat



[sipnet]
secret = ХХХХ
defaultuser = ХХХХ
trunkname = sipnet
callerid = dsa046
hasexten = no
hassip = yes
hasiax = no
host = sipnet.ru
context = out_calls
fromuser = dsa046
fromdomain = sipnet.ru
callbackextension = 202
disallow=all
allow = alaw
allow = ulaw
allow = g729
nat = no
canreinvite = nonat
dtmfmode = info


[default]

[201] ; xlite phone
type=friend
host=dynamic
username=201
secret=user1_password
nat=no
canreinvite=no
context=office
callerid="User1"
allow=gsm
allow=ulaw
allow=alaw


[202] ;sjphone
type=friend
host=dynamic
username=202_SergeyDoronin
secret=user2_password1
nat=no
dtmfmode=rfc2833
context=office
callerid="User2"
allow=gsm
allow=ulaw
allow=alaw


[203] ; ms messenger
type=friend
host=dynamic
username=203
secret=user3_password
nat=no
dtmfmode=rfc2833
context=office
callerid="User3"
allow-ulaw
allow-alaw gw#
#2

Цитата:
exten => _.,Dial(SIP/ХХХХ:ХХХХ@sipnet.ru/9826983)

ошибку сами найдете в строчке?
ps:
Цитата:
callerid="User2"
номера обычно состоят только из цифр.
pps: прежде чем кудато звонить - сделайте в консоли reload и поглядите какие ошибки диалплана выдает вам астериск, и устраните их сперва.

_________________
«Choose a job you love, and you will never have to work a day in your life» — Confucius
#3

exten => _.,Dial(SIP/ХХХХ:ХХХХ@sipnet.ru/9826983)

Заменить на

exten => _X.,Dial(SIP/ХХХХ:ХХХХ@sipnet.ru/9826983)
#4

мдя. вы ему специально с ошибкой даете пример Tolick?
_________________
«Choose a job you love, and you will never have to work a day in your life» — Confucius
#5

а почему не так?

Код:
exten => _X.,1,Dial(SIP/sipnet/${EXTEN})


Последний раз редактировалось: AADanilov (Ср Авг 12, 2009 07:44)
#6

Конфиг изменил, вот что Reload выдает.
Код:
[Aug 12 10:34:23] NOTICE[787]: pbx.c:1885 pbx_extension_helper: Cannot find extension '_X.' in context '(null)'
[Aug 12 10:34:23] WARNING[787]: pbx_config.c:2338 pbx_load_config: Invalid priority/label 'Dial' at line 19


Не понимаю что не так? Вроде есть теперь _X. в виде экстеншена. Какую он метку просит во второй ошибке?

Вот как сейчас:
# cat extensions.conf
[general]
[globals]

[default]
exten => s,1,Answer()
exten => s,n,Hangup()

[incoming_calls]

[out_calls]
exten =>_.,1, Dial(SIP/sipnet)

[office]
exten => 201,1,Dial(SIP/201)
exten => 202,1,Dial(SIP/202)
exten => 203,1,Dial(SIP/203)
exten => _X.,Dial(SIP/XXXX:XXXX@sipnet.ru/9826983)

Added after 55 seconds:

О, минутку, сейчас попробую как в посте AADanilov. Почти одновременно запостили Smile
#7

Smile сорри....
exten => _X.,1,Dial(SIP/XXXX:XXXX@sipnet.ru/9826983)
#8

Ну вы ошибко то исправьте на которую anest указал
#9

Спасибо, немного продвинулся, но все еще не получается позвонить. Еще раз текущие конфиги:

sip.conf
Код:
# cat sip.conf
[general]
context=default ; Default context for incoming calls
allowguest=no ; Allow or reject guest calls (default is yes)
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833
localnet = 192.168.10.0/255.255.255.0
externip = 188.113.13.24
externrefresh = 60
nat = no
canreinvite = nonat


[sipnet]
type=friend
secret = XXXX
fromuser = dsa046
fromdomain = sipnet.ru
username = dsa046
host = sipnet.ru
port = 5060
context = office
callbackextension = 202
disallow=all
allow = alaw
allow = ulaw
allow = g729
dtmfmode = rfc2833
canreinvite = nonat



[202] ;sjphone
type=friend
host=dynamic
username=202
secret=user2_password1
nat=no
dtmfmode=rfc2833
context=office
callerid="User2"
allow=gsm
allow=ulaw
allow=alaw

....



extensions.conf
Код:
# cat extensions.conf
[general]
[globals]
OUT_TRUNK=SIP/sipnet

[default]
exten => s,1,Answer()
exten => s,n,Hangup()

[incoming_calls]

[out_calls]


[office]
exten => 201,1,Dial(SIP/201)
exten => 202,1,Dial(SIP/202)
exten => 203,1,Dial(SIP/203)
exten => _X.,1,Dial(SIP/sipnet/${EXTEN})


А вот что получается при попытке позвонить:

Код:
-- Executing [89038775555@office:1] Dial("SIP/202-29047000", "SIP/sipnet/89038775555") in new stack
-- Called sipnet/89038775555
-- SIP/sipnet-2904c000 answered SIP/202-29047000
-- Native bridging SIP/202-29047000 and SIP/sipnet-2904c000
-- Got SIP response 415 "Unsupported media type" back from 212.53.40.40
== Spawn extension (office, 89038775555, 1) exited non-zero on 'SIP/202-29047000'



Последний раз редактировалось: dsa046 (Вс Сен 25, 2011 10:34)
#10

http://asteriskforum.ru/viewtopic.php?t=3690

из книги стр. 172
Цитата:

Приложение Dial() также позволяет устанавливать связь с удаленной
конечной точкой VoIP, которая не была предварительно описана в кон-
фигурационных файлах канала. Вот полный синтаксис такого типа со-
единения:
Dial(технология/пользователь[:пароль]@удаленный_хост[:порт][/удаленный_доба-
вочный_номер])


вот где то здесь вам стоит почитать


Последний раз редактировалось: AADanilov (Ср Авг 12, 2009 10:27)
#11

AADanilov я нашел ошибку и исправил. Правильно было так вызывать exten => _X.,1,Dial(SIP/sipnet/${EXTEN}) а не sipnet.ru как у меня было. За ссылку на книгу спасибо, лежит в распечатанном виде, читаю.

Теперь другая ошибка, конфиг постом выше:
Код:
-- Executing [89038775555@office:1] Dial("SIP/202-29054000", "SIP/sipnet/89038775555") in new stack
-- Called sipnet/89038775555
-- SIP/sipnet-2904a000 answered SIP/202-29054000
-- Native bridging SIP/202-29054000 and SIP/sipnet-2904a000
-- Got SIP response 415 "Unsupported media type" back from 212.53.40.40
== Spawn extension (office, 89038775555, 1) exited non-zero on 'SIP/202-29054000'
#13

AADanilov, попробовал, тоже самое. Есть еще идеи?

Кстатити, при reload еще 2 waring'a вылезают. Вроде как они не должны влиять, но мало ли...

Код:
[Aug 12 13:57:48] WARNING[1458]: pbx_dundi.c:4450 set_config: Unable to look up host 'gw'
[Aug 12 13:57:48] WARNING[1458]: chan_mgcp.c:4242 reload_config: Unable to get our IP address, MGCP disabled
#14

Пропиши в кодеках на сиптен только g729 ИМХО через интернет лучше его юзать.
Во вторых 729 кодека по умолчанию в астериске нету, надо накатывать.
Unable to look up host 'gw' - ищи в конфигах где ты умудрился написать host = gw помоему в этом проблема.
Unsupported media type - говорит о том, что сервер сипнета отвечает тебе неподдерживаемым кодеком - наверное 729м которого по умолчанию нет.
и canreinvite = no в General пропиши...
Могу вчёмто ошибаться... но я бы так действовал как написал... возможно когда гуру ответят я лоханусь)))
#15

попробуте только alaw кодек для сипнета оставь
#16

Viktor, мне 729 и не нужен сейчас для тестовой связи.

Цитата:
Unable to look up host 'gw' - ищи в конфигах где ты умудрился написать host = gw помоему в этом проблема.

Да в том то и дело что в sip.conf и extensions.conf этот gw не прописан. Видимо осталось от дефолтной установки системы где-то, только где?


AADanilov, оставил для [sipnet] только alaw, сделал reload, но это не дало эффекта.
Код:
-- Executing [89038775555@office:1] Dial("SIP/202-2904c000", "SIP/sipnet/89038775555") in new stack
-- Called sipnet/89038775555
-- SIP/sipnet-2906c000 answered SIP/202-2904c000
-- Native bridging SIP/202-2904c000 and SIP/sipnet-2906c000
-- Got SIP response 415 "Unsupported media type" back from 212.53.40.40
== Spawn extension (office, 89038775555, 1) exited non-zero on 'SIP/202-2904c000'


Пробовал для 202 тоже убрать все кодеки, кроме alaw - тоже не дало эффекта. Тот же вывод в консоли.

Какие еще идеи?


Последний раз редактировалось: dsa046 (Вс Сен 25, 2011 10:34)
#17

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

dyer

Сделал две вещи:
1. Зашел в профайл сипнета:
Звонки->Настройка->Запретить G711
2. Докинул 3$ на счет(на счету были тестовые 0,42, сейчас кровные 2,42)

Теперь не звонит, но уже по-новому:

Код:
-- Executing [84712561555@office:1] Dial("SIP/202-29051000", "SIP/sipnet/84712561555") in new stack
-- Called sipnet/84712561555
-- SIP/sipnet-2905d000 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
== Auto fallthrough, channel 'SIP/202-29051000' status is 'CONGESTION'


Кстати, номер через 8-ку набирать надо? +7 на дает программный телефон 3CX набрать...
#19

какой номер набрать на своем телефоне и какой номер отправить при этом в сипнет - все в ваших руках (в настройках астериска)
собираетесь пользоваться сервисом - так изучайте его правила.
на сипнете правила набора, которые он принимает _есть_. и форум поддержки у них _есть_, и на вопросы по астериску они _отвечают_
#20

Вот нашел как надо набирать номер: http://www.sipnet.ru/faq/#18 , копаю дальше.

Цитата:
на сипнете правила набора, которые он принимает _есть_. и форум поддержки у них _есть_, и на вопросы по астериску они _отвечают_

Да это понятно. Ковыряю гугл и сипнет по мере появления времени. Просто посчитал, что многие могли на те же грабли натыкаться и могут на пальцах объяснить в чем проблема. Думаю что в этом нет ничего зазорного. Ладно пойду дальше ковырять "*" . Если кому есть что написать по проблеме - буду благодарен ответу. Если сам решу быстрее - напишу(для потомков) в чем проблема была Smile
#21

в общем разобрался. Для звонки на городские номера необходимо было РАЗРЕШИТЬ в настройках профиля на sipnet.ru G711, а так же прописать allow=g711 для [sipnet]

Added after 47 minutes:

Опять же для потомков - конфиги позволяющие осуществить исходящую связь на городской номер через sipnet.ru

sip.conf
Код:
# cat sip.conf
[general]
context=default ; Default context for incoming calls
allowguest=no ; Allow or reject guest calls (default is yes)
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833
localnet = 192.168.10.0/255.255.255.0
externip = 188.113.13.24
externrefresh = 60
nat = no
canreinvite = nonat
stunaddr = stun.sipnet.ru:3478



[sipnet]
type=friend
secret = SIPNET_PASSWORD
fromuser = SIPNET_USER_NAME
fromdomain = sipnet.ru
username = SIPNET_USER_NAME
host = sipnet.ru
port = 5060
context = office
callbackextension = 202
disallow = all
allow = alaw
allow = ulaw
;allow = gsm
allow = g711



[202] ;sjphone
type=friend
host=dynamic
username=202
secret=user2_password1
context=office
callerid="User2"
allow=alaw
allow=ulaw
allow=gsm


extensions.conf

Код:
cat extensions.conf
[general]
[globals]
OUT_TRUNK=SIP/sipnet

[default]
exten => s,1,Answer()
exten => s,n,Hangup()

[incoming_calls]

[out_calls]


[office]
exten => 201,1,Dial(SIP/201)
exten => 202,1,Dial(SIP/202)
exten => 203,1,Dial(SIP/203)
exten => _X.,1,Dial(SIP/sipnet/${EXTEN})
#22

молодец.
"http://wiki.sipnet.ru/index.php/Категория:Asterisk"
#23

dyer,если бы Smile К сожалению первоначально я делал свой конфиг согласно материалу размещенному на их wiki. На данный момент, там не описана необходимость подключать G711.
http://wiki.sipnet.ru/index.php/%D0%9F%D ... terisk_1.6

Только эти кодеки:
Цитата:
allow = alaw
allow = ulaw
allow = g729


Так что бывает и доки врут Smile


P.S. А в саппорт им написал, чтоб добавили про 711. Многим юзерам сервиса и себе жизнь упростятSmile
#24

Мда парень, ну ты силён Very Happy
А ничё что в астериске
allow = alaw
allow = ulaw
означает включение кодеков G711a и G711u соответственно...
Не в обиду, но это уж слишком просто... Даже я когда начинал с 0 занием в юникс системах и астериске, таких вопросов никаму не задавал...
#25

Необходимость использования G711 - это только проблема пользователя, у которого нет оборудования (например большиство свободных/бесплатных софт-фонов) с G729/G723 кодеками, либо те запрещены на чем-то типа астериска.
Повторюсь - сипнет не может гарантировать (кроме как включения галки про 711 в ЛК) что у оборудования через которое пойдет звонок
обязательно будет 711-ый кодек.
p.s. G711a,G711u это и есть a-law, u-law. а 'u' - на самом деле буква 'мю'