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

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2014-10-30 17:43:20 +0400

tstfax Gravatar tstfax

Как узнать, кто из DAHDI абонентов завершил звонок ?

День добрый

.

Немного о схеме:

Установлена плата Digium TE220B, в один порт приходит транк от оператора, 2й порт - соединение с нашей АТС. Asterisk установлен в "разрыв" между оператором и АТС, на нём голосовое приветствие, запись звонков, очереди и пр.

Сотрудник стал жаловаться на обрыв звонков, в текущих логах ничего подозрительного не увидел, включил debug лог и попросил сообщить когда случится обрыв. Можно ли узнать из логов кто завершил разговор ?

Собственно окончание интересующего нас звонка:

[Oct 30 15:36:35] VERBOSE[63311] sig_pri.c:     -- Span 1: Channel 0/3 got hangup request, cause 16
[Oct 30 15:36:35] VERBOSE[12838] bridge_channel.c:     -- Channel DAHDI/i1/-810 left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12840] bridge_channel.c:     -- Channel DAHDI/i2/4734-1c2a left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12838] pbx.c:   == Spawn extension (route_in_beeline, 7373, 10) exited non-zero on 'DAHDI/i1/-810'
[Oct 30 15:36:35] VERBOSE[12840] chan_dahdi.c:     -- Hungup 'DAHDI/i2/4734-1c2a'
[Oct 30 15:36:35] VERBOSE[12838] chan_dahdi.c:     -- Hungup 'DAHDI/i1/-810'

  Посмотрел на формирование строки "got hangup request", но как привязать к конкретному каналу не понял

ast_verb(3, "Span %d: Channel %d/%d got hangup request, cause %d\n", 
pri->span, pri->pvts[chanpos]->logicalspan, 
pri->pvts[chanpos]->prioffset, e->hangup.cause);

 

$ cat ./dahdi/system.conf

# от оператора
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
echocanceller=mg2,1-15,17-31

# к АТС
span=2,2,0,ccs,hdb3
bchan=32-46,48-62
dchan=47
echocanceller=mg2,32-46,48-62

Как узнать, кто из DAHDI абонентов завершил звонок ?

День добрый

.

Немного о схеме:

Установлена плата Digium TE220B, в один порт приходит транк от оператора, 2й порт - соединение с нашей АТС. Asterisk установлен в "разрыв" между оператором и АТС, на нём голосовое приветствие, запись звонков, очереди и пр.

Сотрудник стал жаловаться на обрыв звонков, в текущих логах ничего подозрительного не увидел, включил debug лог и попросил сообщить когда случится обрыв. Можно ли узнать из логов кто завершил разговор ?

Собственно окончание интересующего нас звонка:

[Oct 30 15:36:35] VERBOSE[63311] sig_pri.c:     -- Span 1: Channel 0/3 got hangup request, cause 16
[Oct 30 15:36:35] VERBOSE[12838] bridge_channel.c:     -- Channel DAHDI/i1/-810 left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12840] bridge_channel.c:     -- Channel DAHDI/i2/4734-1c2a left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12838] pbx.c:   == Spawn extension (route_in_beeline, 7373, 10) exited non-zero on 'DAHDI/i1/-810'
[Oct 30 15:36:35] VERBOSE[12840] chan_dahdi.c:     -- Hungup 'DAHDI/i2/4734-1c2a'
[Oct 30 15:36:35] VERBOSE[12838] chan_dahdi.c:     -- Hungup 'DAHDI/i1/-810'

  Посмотрел на формирование строки "got hangup request", но как привязать к конкретному каналу не понял

ast_verb(3, "Span %d: Channel %d/%d got hangup request, cause %d\n", 
pri->span, pri->pvts[chanpos]->logicalspan, 
pri->pvts[chanpos]->prioffset, e->hangup.cause);

 

$ cat ./dahdi/system.conf

# от оператора
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
echocanceller=mg2,1-15,17-31

# к АТС
span=2,2,0,ccs,hdb3
bchan=32-46,48-62
dchan=47
echocanceller=mg2,32-46,48-62

Как узнать, кто из DAHDI абонентов завершил звонок ?

День добрый

.

Немного о схеме:

Установлена плата Digium TE220B, в один порт приходит транк от оператора, 2й порт - соединение с нашей АТС. Asterisk установлен в "разрыв" между оператором и АТС, на нём голосовое приветствие, запись звонков, очереди и пр.

Сотрудник стал жаловаться на обрыв звонков, в текущих логах ничего подозрительного не увидел, включил debug лог и попросил сообщить когда случится обрыв. Можно ли узнать из логов кто завершил разговор ?

Собственно окончание интересующего нас звонка:

[Oct 30 15:36:35] VERBOSE[63311] sig_pri.c:     -- Span 1: Channel 0/3 got hangup request, cause 16
[Oct 30 15:36:35] VERBOSE[12838] bridge_channel.c:     -- Channel DAHDI/i1/-810 left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12840] bridge_channel.c:     -- Channel DAHDI/i2/4734-1c2a left 'simple_bridge' basic-bridge <545fdc9b-2206-4341-b579-33e5a183014a>
[Oct 30 15:36:35] VERBOSE[12838] pbx.c:   == Spawn extension (route_in_beeline, 7373, 10) exited non-zero on 'DAHDI/i1/-810'
[Oct 30 15:36:35] VERBOSE[12840] chan_dahdi.c:     -- Hungup 'DAHDI/i2/4734-1c2a'
[Oct 30 15:36:35] VERBOSE[12838] chan_dahdi.c:     -- Hungup 'DAHDI/i1/-810'

  Посмотрел на формирование строки "got hangup request", но как привязать к конкретному каналу не понял

ast_verb(3, "Span %d: Channel %d/%d got hangup request, cause %d\n", 
pri->span, pri->pvts[chanpos]->logicalspan, 
pri->pvts[chanpos]->prioffset, e->hangup.cause);

 

$ cat ./dahdi/system.conf

# от оператора
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
echocanceller=mg2,1-15,17-31

# к АТС
span=2,2,0,ccs,hdb3
bchan=32-46,48-62
dchan=47
echocanceller=mg2,32-46,48-62

 

$ cat ./asterisk/chan_dahdi.conf

[trunkgroups]
[channels]
language=en
context=route_in_default
switchtype=euroisdn
nsf=none
service_message_support=yes
pridialplan=unknown
prilocaldialplan=national
resetinterval = 3600
overlapdial=yes
inbanddisconnect=no
hold_disconnect_transfer=no
priindication = outofband
priexclusive = yes
discardremoteholdretrieval=yes


facilityenable = yes

signalling=pri_cpe
usecallerid=yes
cidsignalling=v23
hidecalleridname=no
callwaiting=no
max_call_waiting_calls=0
allow_call_waiting_calls=no
restrictcid=no
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=no
transfer=no
canpark=no
cancallforward=no
callreturn=no
echocancel=yes
echocancelwhenbridged=no
echotraining=yes
echotraining=800
relaxdtmf=no


mohinterpret=default
mohsuggest=default

useincomingcalleridondahditransfer = yes
amaflags=default
adsi=yes
usesmdi=no
faxdetect=no
jitterbuffers=8
jbenable = yes
jbmaxsize = 200
jbimpl = fixed


group=1
signalling=pri_cpe
context=route_in_beeline
channels=>1-10

group=2
signalling=pri_net
context=route_in_pbx
channels =>32-41

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