Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Проблеммы с определением продолжительности разговора.

Проблеммы с определением продолжительности разговора.

Сообщений: 84

Проблеммы с определением продолжительности разговора.

Доброго времени суток.
У меня имеются проблеммы с Asterisk, не правильные данные
по времени разговора в CDR'ах.
Стоит астериск на FreeBSD 6, сама версия астериска 1.2.9.1.
Работает это всё в связке СофтФон eyeBeam (или LinkSys pub, разницы ни какой) --> Asterisk -->(по SIP)
Cisco 5350 -->(по E1) М-200 (АТС потоковая) --> По потоку на город.

И так было проведенно тестирование нами, что бы определить,
что происходит в астереске, тем самым удалось установить
1) При наборе корректного номера и разговоре около 7 секунд Asterisk определяет продолжительность 28 секунд, т.е. он прибавляет время набора номера.
2) При наборе несуществующего номера Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.
3) При наборе на ошибочный (телефонна нет такого в городе, должно вернуть дисконнект по идеи) номер Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.
4) При наборе на неполный номер (т.е. телефона нет реально такого, но по префиксу его выкинет на город, а от туда должно вернуть дисконнект) Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.

Сам грешу на конфиги Asterisk или версию (баги может имеются?), скорей всего просто не так что-то именно с этим.
Прошу помощи у вас форумчане, кто что по советует. Также прикладываю конфиги.

----------------------------sip.conf---------------------------

[general]
context=default ; Default context for incoming calls
allowguest=yes ; Allow or reject guest calls (default is yes, this can also be set to 'osp'
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=192.168.110.49 ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes ; Enable DNS SRV lookups on outbound calls
disallow=all ; First disallow all codecs
allow=ulaw ; Allow codecs in order of preference
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833

[942000]
username=942000
type=friend
secret=942000
record_out=Always
record_in=Always
qualify=yes
port=5060
nat=no
mailbox=107@default
host=dynamic
dtmfmode=rfc2833
canreinvite=yes
callgroup=1
callerid="942000"<942000>
stale=false
allow=all

[942020]
username=942020
type=friend
secret=942020
record_out=Always
record_in=Always
qualify=yes
port=5060
nat=no
mailbox=107@default
host=dynamic
dtmfmode=rfc2833
canreinvite=yes
callgroup=1
callerid="942020"<942020>
stale=false
allow=all
---------------------------------------------------------------

----------------------------------extensions.conf--------------
[general]

static=yes
writeprotect=no
autofallthrough=yes
clearglobalvars=no
priorityjumping=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
IAXINFO=guest ; IAXtel username/password
TRUNK=Zap/g2 ; Trunk interface
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
[dundi-e164-canonical]

[dundi-e164-customers]

[dundi-e164-via-pstn]

[dundi-e164-local]
include => dundi-e164-canonical
include => dundi-e164-customers
include => dundi-e164-via-pstn

[dundi-e164-switch]
switch => DUNDi/e164

[dundi-e164-lookup]
include => dundi-e164-local
include => dundi-e164-switch

[macro-dundi-e164]
exten => s,1,Goto(${ARG1},1)
include => dundi-e164-lookup

[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

[iaxprovider]

[trunkint]
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunkld]
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunklocal]
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunktollfree]
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[international]
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
ignorepat => 9
include => local
include => trunkld

[local]
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider

[macro-stdexten];

exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain

[macro-stdPrivacyexten];
exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds maximum, call screening option (or use P for databased call screening)
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose to send this call to a polite "Don't call again" script.

exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose to send this call to a telemarketer torture script.

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain

[demo]

[default]

#exten => _8750X.,1,Answer
#exten => _8750X.,2,Wait,1
#exten => _8750X.,3,Background(telephone-number)
#exten => _8750X.,4,Hungup

exten => _X.,1,Answer
exten => _X.,2,Wait,1
exten => _X.,3,Dial(SIP/3212${EXTEN:}@192.168.110.56,60,t)

exten => _0X.,1,Answer
exten => _0X.,2,Wait,1
exten => _0X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)

exten => _8X.,1,Answer
exten => _8X.,2,Wait,1
exten => _8X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)

exten => _810X.,1,Answer
exten => _810X.,2,Wait,1
exten => _810X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)


exten => 942000,1,Dial(SIP/942000,60,t)

exten => 942020,1,Dial(SIP/942020,60,t)
---------------------------------------------------------------
2007-08-01 10:48

Сообщений: 84

Re: Проблеммы с определением продолжительности разговора.

Прошу прощенья за формат текста, вставил из блокнота, там сначало всё набрал, было всё хорошо :(
2007-08-01 11:26

Сообщений: 84

Re: Проблеммы с определением продолжительности разговора.

Доброго времени суток.
У меня имеются проблеммы с Asterisk, не правильные данные
по времени заговора в CDR'ах.
Стоит астериск на FreeBSD 6, сама версия астериска 1.2.9.1.
Работает это всё в связке СофтФон eyeBeam (или LinkSys pub, разницы ни какой) --> Asterisk -->(по SIP)
Cisco 5350 -->(по E1) М-200 (АТС потоковая) --> По потоку на город.

И так было проведенно тестирование нами, что бы определить,
что происходит в астереске, тем самым удалось установить
1) При наборе корректного номера и разговоре около 7 секунд Asterisk определяет продолжительность 28 секунд, т.е. он прибавляет время набора номера.
2) При наборе несуществующего номера Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.
3) При наборе на ошибочный (телефонна нет такого в городе, должно вернуть дисконнект по идеи) номер Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.
4) При наборе на неполный номер (т.е. телефона нет реально такого, но по префиксу его выкинет на город, а от туда должно вернуть дисконнект) Asterisk показывает то, что разговор состоялся «ANSWERED» и определяет продолжительность разговора, включая время соединения.

Сам грешу на конфиги Asterisk или версию (баги может имеются?), скорей всего просто не так что-то именно с этим.
Прошу помощи у вас форумчане, кто что по советует. Также прикладываю конфиги.

----------------------------sip.conf------------------------------------------------

[general]
context=default ; Default context for incoming calls
allowguest=yes ; Allow or reject guest calls (default is yes, this can also be set to 'osp'
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=192.168.110.49 ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes ; Enable DNS SRV lookups on outbound calls
disallow=all ; First disallow all codecs
allow=ulaw ; Allow codecs in order of preference
dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833

[942000]
username=942000
type=friend
secret=942000
record_out=Always
record_in=Always
qualify=yes
port=5060
nat=no
mailbox=107@default
host=dynamic
dtmfmode=rfc2833
canreinvite=yes
callgroup=1
callerid="942000"<942000>
stale=false
allow=all

[942020]
username=942020
type=friend
secret=942020
record_out=Always
record_in=Always
qualify=yes
port=5060
nat=no
mailbox=107@default
host=dynamic
dtmfmode=rfc2833
canreinvite=yes
callgroup=1
callerid="942020"<942020>
stale=false
allow=all
----------------------------------------------------------------------------------

----------------------------------extensions.conf---------------------------------
[general]

static=yes
writeprotect=no
autofallthrough=yes
clearglobalvars=no
priorityjumping=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
IAXINFO=guest ; IAXtel username/password
TRUNK=Zap/g2 ; Trunk interface
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
[dundi-e164-canonical]

[dundi-e164-customers]

[dundi-e164-via-pstn]

[dundi-e164-local]
include => dundi-e164-canonical
include => dundi-e164-customers
include => dundi-e164-via-pstn

[dundi-e164-switch]
switch => DUNDi/e164

[dundi-e164-lookup]
include => dundi-e164-local
include => dundi-e164-switch

[macro-dundi-e164]
exten => s,1,Goto(${ARG1},1)
include => dundi-e164-lookup

[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

[iaxprovider]

[trunkint]
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunkld]
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunklocal]
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunktollfree]
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[international]
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
ignorepat => 9
include => local
include => trunkld

[local]
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider

[macro-stdexten];

exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain

[macro-stdPrivacyexten];
exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds maximum, call screening option (or use P for databased call screening)
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose to send this call to a polite "Don't call again" script.

exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose to send this call to a telemarketer torture script.

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain

[demo]

[default]

#exten => _8750X.,1,Answer
#exten => _8750X.,2,Wait,1
#exten => _8750X.,3,Background(telephone-number)
#exten => _8750X.,4,Hungup

exten => _X.,1,Answer
exten => _X.,2,Wait,1
exten => _X.,3,Dial(SIP/3212${EXTEN:}@192.168.110.56,60,t)

exten => _0X.,1,Answer
exten => _0X.,2,Wait,1
exten => _0X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)

exten => _8X.,1,Answer
exten => _8X.,2,Wait,1
exten => _8X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)

exten => _810X.,1,Answer
exten => _810X.,2,Wait,1
exten => _810X.,3,Dial(SIP/${EXTEN:}@192.168.110.56,60,t)


exten => 942000,1,Dial(SIP/942000,60,t)

exten => 942020,1,Dial(SIP/942020,60,t)
----------------------------------------------------------------------------------
2007-08-01 11:33

Сообщений: 84

Re: Проблеммы с определением продолжительности разговора.

Вот теперь всё холосо, да простят меня админы за избыточность :)
2007-08-01 11:37

Сообщений: 84

Re: Проблеммы с определением продолжительности разговора.

Господа, не молчите, скажите, куда копать хотябы.
2007-08-01 17:10

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru