Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

DAHDI разрывает разговор сообщением -- Nobody picked up in 300000 ms

0

Здравствуйте! Столкнулся с проблемой разрыва разговора через 5 минут. Рвет разговор DAHDI. Но не могу понять как такое получается?

Связка следующая: FXS Linksys - Asterisk c FXO DAHDI - аналоговая городская АТС

Вот кусок дебага: ... установление соединения...

 -- Executing [s@macro-dialout-trunk:19] Dial("SIP/323-00000fa6", "DAHDI/g1/w89181112233,300,") in new stack
   
-- Called g1/w89181112233
Audio is at 192.168.0.200 port 16796
Adding codec 0x4 (ulaw) to SDP
Adding codec 0x8 (alaw) to SDP
Adding non-codec 0x1 (telephone-event) to SDP

<--- Transmitting (NAT) to 192.168.0.208:5360 --->
SIP
/2.0 183 Session Progress
Via: SIP/2.0/UDP 192.168.0.208:5360;branch=z9hG4bK-87c86956;received=192.168.0.208
From: 323 <sip:323@192.168.0.200>;tag=dfe3386280c239beo0
To: <sip:989181112233@192.168.0.200>;tag=as7099a955
Call-ID: 11b54832-b26aec2e@192.168.1.4
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.26-FONCORE-r78
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Contact: <sip:989181112233@192.168.0.200>
Content-Type: application/sdp
Content-Length: 273

v
=0
o
=root 151858470 151858470 IN IP4 192.168.0.200
s
=Asterisk PBX 1.6.0.26-FONCORE-r78
c
=IN IP4 192.168.0.200
t
=0 0
m
=audio 16796 RTP/AVP 0 8 101
a
=rtpmap:0 PCMU/8000
a
=rtpmap:8 PCMA/8000
a
=rtpmap:101 telephone-event/8000
a
=fmtp:101 0-16
a
=ptime:20
a
=sendrecv

<------------>

Reliably Transmitting (NAT) to 192.168.0.208:5360:
OPTIONS sip
:323@192.168.0.208:5360 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.200:5060;branch=z9hG4bK2d56452f;rport
Max-Forwards: 70
From: "Unknown" <sip:Unknown@192.168.0.200>;tag=as4fa1e6bc
To: <sip:323@192.168.0.208:5360>
Contact: <sip:Unknown@192.168.0.200>
Call-ID: 6a51a5867ccc76b07c35325635af3e68@192.168.0.200
CSeq: 102 OPTIONS
User-Agent: Asterisk PBX 1.6.0.26-FONCORE-r78
Date: Tue, 22 Jan 2013 11:44:24 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Content-Length: 0


---
trixbox1
*CLI>
<--- SIP read from UDP://192.168.0.208:5360 --->
SIP
/2.0 486 Busy Here
To: <sip:323@192.168.0.208:5360>;tag=a6989d36e02f4a63i0
From: "Unknown" <sip:Unknown@192.168.0.200>;tag=as4fa1e6bc
Call-ID: 6a51a5867ccc76b07c35325635af3e68@192.168.0.200
CSeq: 102 OPTIONS
Via: SIP/2.0/UDP 192.168.0.200:5060;branch=z9hG4bK2d56452f
Server: Linksys/SPA8000-5.1.10
Content-Length: 0
Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER
Supported: x-sipura, replaces


<------------->
--- (10 headers 0 lines) ---
Really destroying SIP dialog '6a51a5867ccc76b07c35325635af3e68@192.168.0.200' Method: OPTIONS
Audio is at 192.168.0.200 port 16796
Adding codec 0x4 (ulaw) to SDP
Adding codec 0x8 (alaw) to SDP
Adding non-codec 0x1 (telephone-event) to SDP

<--- Transmitting (NAT) to 192.168.0.208:5360 --->
SIP
/2.0 183 Session Progress
Via: SIP/2.0/UDP 192.168.0.208:5360;branch=z9hG4bK-87c86956;received=192.168.0.208
From: 323 <sip:323@192.168.0.200>;tag=dfe3386280c239beo0
To: <sip:989181112233@192.168.0.200>;tag=as7099a955
Call-ID: 11b54832-b26aec2e@192.168.1.4
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.26-FONCORE-r78
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Contact: <sip:989181112233@192.168.0.200>
Content-Type: application/sdp
Content-Length: 273

v
=0
o
=root 151858470 151858475 IN IP4 192.168.0.200
s
=Asterisk PBX 1.6.0.26-FONCORE-r78
c
=IN IP4 192.168.0.200
t
=0 0
m
=audio 16796 RTP/AVP 0 8 101
a
=rtpmap:0 PCMU/8000
a
=rtpmap:8 PCMA/8000
a
=rtpmap:101 telephone-event/8000
a
=fmtp:101 0-16
a
=ptime:20
a
=sendrecv

... Разговор уже идет, но Астериск ANSWER не получает, DAHDI не определил поднятие трубки с другой стороны... Это как так получается??? И после 300 секунд ожидания поднятия трубки, Астериск естественно разрывает соединение, с сообщением:

<------------>
    -- Nobody picked up in 300000 ms
    -- Hungup 'DAHDI/3-1'
....

Причем при входящей связи все работает нормально!

Вот настройки DAHDI:

dahdi-channels.conf

...
;;; line="3 WCTDM/0/2 FXSKS"
signalling
=fxs_ks
callerid
=asreceived
group=1
context
=from-zaptel
channel
=> 3
callerid
=
...

chan_dahdi.conf

[trunkgroups]

[channels]

language
=ru
context
=from-zaptel
signalling
=fxs_ks
rxwink
=300              
busydetect
=yes
busycount
=3
callprogress
=yes
usecallerid
=no
hidecallerid
=no
callwaiting
=yes
usecallingpres
=yes
callwaitingcallerid
=yes
threewaycalling
=yes
transfer
=yes
cancallforward
=yes
callreturn
=yes
echocancel
=yes
echocancelwhenbridged
=no
echotraining
=yes
rxgain
=2.0
txgain
=0.0
group=0
callgroup
=1
pickupgroup
=1
immediate
=yes
faxdetect
=no
channel
=> 1

group=1
immediate
=yes
faxdetect
=no
rxgain
=2.0
txgain
=0.0
channel
=> 2-10

;Include setup-pstn configs
include dahdi
-channels.conf


;Include PBXconfig configs
#include chan_dahdi_additional.conf

etc/dahdi/system.conf

# Span 1: WCTDM/0 "Wildcard AEX2400 Board 1" (MASTER)                                                                                
...                                                                                                        
fxsks
=3                                                                                                                              
echocanceller
=mg2,3                                                                                                                  
...

# Global data                                                                                                                        

loadzone        
= ru                                                                                                                
defaultzone    
= ru

indications.conf

[general]
country
=ru
[ru]
description
= Russia / ex Soviet Union (Ukraine, etc.)
ringcadance
= 1000,4000
dial
= 425
busy
= 425/350,0/350
ring
= 425/1000,0/4000
congestion
= 425/350,0/350
callwaiting
= 425/200,0/5000
dialrecall
= !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440
record
= 1400/500,0/15000
info
= !950/330,!1400/330,!1800/330,0

На сколько я разобрался Indications.conf нужен для генерации тонов, а для распознавания используется chan_dahdi.conf.... но вот что в нем настроить еще можно... я не понимаю. Подскажите куда копать? Почему dahdi не распознает поднятие трубки?...

Кстати погуглил и посмотрел у себя еще один параметр

CLI> dahdi show cadences
r1
: 125,125,2000,4000
r2
: 250,250,500,1000,250,250,500,4000
r3
: 125,125,125,125,125,4000
r4
: 1000,500,2500,5000

какие для россии по умолчанию должны быть? Я так предполагаю что теже что и в indications.conf ?

спросил Jan 22 '13

wellus Gravatar wellus
67 34 2 14

обновил Jan 22 '13

Comments

-- Executing [s@macro-dialout-trunk:19] Dial("SIP/323-00000fa6", "DAHDI/g1/w89181112233,300,") in new stack - Подсказать откуда берется 300 секунд ? - 300 секунд это - 300000 ms

awsswa (Jan 22 '13)edit

дак они говорит что у него ансвер не детектится. читайте внимательно. а не детектится ибо страна выставлена неверно и аналоговое подключение.

meral (Jan 22 '13)edit

Нет, лучше подсказать, почему Астериск не распознает поднятие трубки с другой стороны. Или я что-то не правильно понимаю?

wellus (Jan 22 '13)edit

да как же неверно выставлена страна, если везде RU прописано

wellus (Jan 22 '13)edit

ну надо знать как у вас определяется ответ. переполюсовка например или еще как. записать сигналы занято и гудок, посмотреть в редакторе частоты и так далее. за вас это никто не сделает.

meral (Jan 22 '13)edit

Понимаю, а где мне их прописывать потом... в cadences? Кстати не могу найти описания cadences почему их 4 строчки и как они работают?

wellus (Jan 22 '13)edit

У Вас же там целая кампания по внедрению астерисков , спросите у коллег. Они помогут.

zzuz (Jan 22 '13)edit

наймите експерта. учитывая что вы берете почти 10 доларов за поддержку каждого абонента, вам должно хватит. вот честно, не помню я что каденсы значат. могу погуглить или в коде помотреть. но и вы можете же.

meral (Jan 22 '13)edit

http://www.voip-info.org/wiki/view/chan_dahdi.conf вот тут все описано.

meral (Jan 22 '13)edit

Ну стоило только сайт вывесить... это еще макет с желаемыми расценками )))

wellus (Jan 22 '13)edit

Вам нужно записать тон отбоя (позвонить в город, на другой стороне положить трубку и записать гудки) проанализировать частоту тона, каденс, длительность и настроить dahdi что-то вроде:

busydetect=yes busycount=6 busypattern=500,500 cadence=125,125,2000,-4000

awsswa (Jan 22 '13)edit

Напрятли у него всё так сложно. С линксисами обычно всё попроще.

zzuz (Jan 22 '13)edit

хм... да с отбоем-то все нормально. У меня не хочет определять факт поднятия трубки... и вот тут я не пойму какой сигнал должна присылать городская АТС... подозреваю что должно быть переключение полярности или отсутствие КПВ в течении какого-то времени...

wellus (Jan 22 '13)edit

у меня проблема не с Линксисом, а с Digium'ом

wellus (Jan 22 '13)edit

answeronpolarityswitch=yes - этот параметр я включил... не помогает

wellus (Jan 22 '13)edit

Будьте первым, кто ответит на этот вопрос!

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: Jan 22 '13

Просмотрен: 1,064 раз

Обновлен: Jan 22 '13

Похожие вопросы:

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.