General Category > Yate users hangout place
[ YATE-6.0.1 ] CDRBuild Initialize & Finalize Issue
ganapathi:
Hi
As i recently noticed as CDR module is initialized for Wave channel and keep available on cdrbuild status
--- Code: ---name=cdrbuild,type=cdr,format=Status|Caller|Called|BillId|Duration;cdrs=8,hungup=0;wave/90=unknown||||462416,
--- End code ---
And some original channel created by call doesn't finalizing and it's keep available until service restart and finalized once service ended , due to that call end time shows inappropriately.
CDRBuild :
--- Code: ---%%+status:cdrbuild
name=cdrbuild,type=cdr,format=Status|Caller|Called|BillId|Duration;cdrs=8,hungup=0;wave/90=unknown||||462416,sip/5951=answered|6027|7002|1530000462-5867|275148,sip/5952=answered|6027|7002|1530000462-5867|275148,sip/5956=answered|6034|6033|1530000462-5871|275135,sip/5957=answered|6034|6033|1530000462-5871|275135,wave/262=unknown||||191456,wave/267=unknown||||42145,wave/302=unknown||||27914
%%-status
--- End code ---
CDRCombine :
--- Code: ---%%+status:cdrcombine
name=cdrcombine,type=cdr,format=ChanId|Caller|Called|Address|OutLegs;cdrs=3;1530000462-5867=sip/5951|6027|7002|192.168.1.74:5060|1,1530000462-5871=sip/5956|6034|6033|192.168.1.93:5268|1,1530000462-6703=sip/6739|6033|6004|192.168.1.78:5629|1
%%-status
--- End code ---
And yate keep throws chan.locate message with null value like mentioned below.
--- Code: ---Sniffed 'chan.locate' time=1530551429.087579
thread=0x7f4f9c02a4e0 'YSIP Register'
data=(nil)
retval='(null)'
param['id'] = ''
--- End code ---
Kindly help me to avoid this issue.
marian:
How did you managed to add a wave channel to cdrbuild?
Wave file module channels are not tracked.
They are not sending any chan.hangup message which would lead to cdr finalize.
Can you post a log with message sniffer enabled?
ganapathi:
Even my question as well almost same , how wave channel are tracked on cdrbuild.
Find the log which emitted cdrbuild for wave channel
https://paste.linux.community/view/98b35ef1
marian:
You are re-executing a wave channel to a wave target!
See:
2018-07-03_10:06:49.763390 <RegexRoute:ALL> Dispatching new message 'call.execute' by rule #4 '${reason}^(35|offline|noconn|busy)$' in context 'chan.disconnected'
Sniffed 'call.execute' time=1530592609.763377
thread=0x13d77c0 'Engine Worker'
data=0x7f5bf40228c0
retval='(null)'^M
param['id'] = 'wave/5'
param['callto'] = 'wave/play//usr/local/share/yate/sounds/error/noconn.slin'
This is very wrong: you end up by connecting a wave chan to another one!
Pay attention to channel id when handling chan.disconnected.
Wave channels are utility channels: they are not supposed to be tracked by cdr build.
ganapathi:
This is my configuration, only once am executing call.execute.
It's for playback to caller for hangup reason.
regexroute.conf :
--- Code: ---[chan.disconnected]
${lastpeerid}^$=return
${lastpeerid}^\(wave\|tone\)/=return
;${reason}^\(35\)$^=return
${reason}^\(35\|offline\|noconn\|busy\)$=enqueue call.progress;targetid=${id};osip_Warning=399 $(nodename) "Subscriber ${reason}"
${reason}^\(35\|offline\|noconn\|busy\)$=dispatch call.execute;id=${id};callto=wave/play//usr/local/share/yate/sounds/error/${reason}.slin
--- End code ---
Is there any mistake on above configuration.
Navigation
[0] Message Index
[#] Next page
Go to full version