Доброго времени суток, Господа!
Случилась у меня ситуёвина - требуется прикрутить астериск с провайдеру pctel.ru, уж очень ценой привлёк. =) И всё бы хорошо, если бы не один затык: через провайдера позвонить (тестил пока что по их бесплатному номеру 111) получается, а вот при звонке извне (через их шлюз 74995034004) - проблема...
Гудок идёт, телефон звонит, но при поднятии трубки гудки продолжаются, а в телефоне тишина. В астериске есть еще openvox tdm400p с FXS - пробовал бросать звонок на него, ситуация не меняется.
Топология сети следующая:
Конфиг sip.conf:
[general]
register=myusername:mypassword@sip.pctel.ru
fromdomain=sip.domain.su
callerid=Anonymous
allowguest=no
allowtransfer=yes
nat=yes
localnet=172.16.117.0/24
externhost=domain.no-ip.org
externrefresh=180
qualify=yes
srvlookup=yes
allowoverlap=yes
directmedia=no
[pctel]
directmedia=no
nat=yes
canreinvite=no
type=friend
context=pctel
domain=sip.pctel.ru
fromdomain=sip.pctel.ru
defaultuser=myusername
insecure=invite
fromuser=myusername
host=sip.pctel.ru
remotesecret=mypassword
dtmfmode=rfc2833
disallow=all
allow=alaw
allow=ulaw
[user]
nat=yes
directmedia=no
canreinvite=no
type=peer
context=from-internal
domain=domain.su,sip.domain.su,domain.no-ip.org,172.16.117.99
host=dynamic
secret=supersecret
callerid="user" <1005>
disallow=all
allow=alaw
allow=ulaw
;;;почикано, далее описание других трубок;;;
Выдержка из extensions.conf:
[default]
exten => s,1,Verbose(Default)
exten => s,n,Hangup
[pctel]
exten => s,1,NoOp()
exten => s,n,Dial(Local/1005@from-internal)
exten => s,n,Hangup()
[from-internal]
exten => 111,1,NoOp()
exten => 111,n,Dial(Sip/pctel/111)
exten => 111,n,Hangup()
exten => 1005,1,NoOp()
exten => 1005,n,Dial(Sip/user)
exten => 1005,n,Hangup()
;;;почикано;;;
При звонке в логах получаю вот что:
> doing dnsmgr_lookup for 'sip.pctel.ru'
> ast_get_srv: SRV lookup for '_sip._udp.sip.pctel.ru' mapped to host 3.sip.pctel.ru, port 5060
== Using SIP RTP CoS mark 5
-- Executing [s@pctel:1] NoOp("SIP/pctel-000000df", "") in new stack
-- Executing [s@pctel:2] Dial("SIP/pctel-000000df", "Local/1005@from-internal") in new stack
-- Called Local/1005@from-internal
-- Executing [1005@from-internal:1] NoOp("Local/1005@from-internal-c798;2", "") in new stack
-- Executing [1005@from-internal:2] Dial("Local/1005@from-internal-c798;2", "Sip/user") in new stack
== Using SIP RTP CoS mark 5
-- Called Sip/user
-- SIP/user-000000e0 is ringing
-- Local/1005@from-internal-c798;1 is ringing
-- SIP/user-000000e0 answered Local/1005@from-internal-c798;2
-- Local/1005@from-internal-c798;1 answered SIP/pctel-000000df
-- Locally bridging SIP/pctel-000000df and SIP/user-000000e0
== Spawn extension (from-internal, 1005, 2) exited non-zero on 'Local/1005@from-internal-c798;2'
[Sep 28 17:32:30] WARNING[16893]: chan_sip.c:3641 retrans_pkt: Retransmission timeout reached on transmission 7309b0ce2d28d9dd492274c12a811f07@217.73.112.12:5060 for seqno 102 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 7808ms with no response
[Sep 28 17:32:30] WARNING[16893]: chan_sip.c:3670 retrans_pkt: Hanging up call 7309b0ce2d28d9dd492274c12a811f07@217.73.112.12:5060 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
== Spawn extension (pctel, s, 2) exited non-zero on 'SIP/pctel-000000df'
Версия астериска: vmserv2*CLI> core show version Asterisk 1.8.13.1 built by root @ vmserv2 on a x86_64 running Linux on 2012-08-23 10:18:45 UTC
Уже всё перепробовал, а результата 0. Прощу помощи, заранее благодарен.
настройте NAT правильно. поищите здесь как,много тем было
год назад пробовал с писиТелом работать, на тот момент у них 90% звонков шли с кодеком iLBC, а у вас он вообще не значится, но проблема скорее всего не в этом, т.к. нет соотв. ошибок в логе. А вообще это Г-провайдер, качество -Г, поддержка - никакая, детализацию только по запросу представляют, лучше не связывайтесь, цена, хоть и манит, но не соответствует качеству.
Снимайте дамп звонка, берите WireShark в левую, книжку Гольдштейна про SIP протокол в правую руки и изучайте что не так. В WireShark есть анализатор SIP неплохой.
Было примерно тоже самое когда только открыли "Первую линию", у нас проблема оказалась именно в поставщике телефонии, как только подключили SIPNETвсе стало нормально работать =) Так что попробуйте поругаться с вашим провайдером.
Задан: 2012-09-28 17:44:15 +0400
Просмотрен: 1,145 раз
Обновлен: Oct 02 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.