[miko_ajam] exten => 0000555,1,NoCDR() exten => 0000555,n,Set(num=0) exten => 0000555,n,Set(i=0) exten => 0000555,n,Set(chan=${v1}) exten => 0000555,n,Set(date1=${v2}) exten => 0000555,n,Set(date2=${v3}) exten => 0000555,n,Set(numbers=${v4}) exten => 0000555,n,Set(dbname=${AST_CONFIG(cdr_mysql.conf,global,dbname)}) exten => 0000555,n,Set(user=${AST_CONFIG(cdr_mysql.conf,global,user)}) exten => 0000555,n,Set(password=${AST_CONFIG(cdr_mysql.conf,global,password)}) exten => 0000555,n,Set(tmp_dir=${ASTLOGDIR}) exten => 0000555,n,NoOp() exten => 0000555,n,Set(packet=20) exten => 0000555,n(NextNum),Set(i=$[${i} + 1]) exten => 0000555,n,Set(NumFilter=${CUT(numbers,,${i})}) exten => 0000555,n,Gotoif($[ ${LEN(${NumFilter})}=0 ]?SendRequest) exten => 0000555,n,ExecIf($[${i}=1]?Set(SQLrequest=SELECT a.calldate,a.src,a.dst,a.channel,a.dstchannel,a.billsec,a.disposition,a.uniqueid from (SELECT * from cdr where calldate BETWEEN ${QUOTE(${date1})} AND ${QUOTE(${date2})}) AS a where )) exten => 0000555,n,ExecIf($[${i}>1]?Set(SQLrequest=${SQLrequest} OR )) exten => 0000555,n,Set(SQLrequest=${SQLrequest} ((a.lastapp="Transferred Call" AND a.lastdata like ${QUOTE(%/${NumFilter}@%)}) OR (a.lastapp="Dial" AND (a.channel like ${QUOTE(%/${NumFilter}-%)} OR a.dstchannel like ${QUOTE(%/${NumFilter}-%)} OR a.dstchannel like ${QUOTE(%/${NumFilter}@%)} )))) exten => 0000555,n,ExecIf($[${i}>15]?Hangup()) exten => 0000555,n,Goto(NextNum) exten => 0000555,n(SendRequest),System( mysql -sse '${SQLrequest} LIMIT 100' -u${user} -p${password} ${dbname}> ${tmp_dir}/${UNIQUEID}) exten => 0000555,n,Set(kls=${SHELL(cat ${tmp_dir}/${UNIQUEID} |wc -l)}) exten => 0000555,n,Gotoif($[ ${kls} = 0 ]?DelTmpFile:SendCDRHistory) exten => 0000555,n(SendCDRHistory),Set(ostatok=${kls}) exten => 0000555,n(SendNextPacket),Set(packet=${IF($[ ${ostatok} < ${packet}]?${ostatok}:${packet})}) exten => 0000555,n,Set(num=$[${num} + ${packet}]) exten => 0000555,n,UserEvent(FromCDR,Channel: ${chan},Date: ${date1},Lines: ${QUOTE(${SHELL(cat ${tmp_dir}/${UNIQUEID} |head -n '${num}'| tail -n '${packet}'| sed 's/|/'@.@'/g'| sed 's/[\t]/'@.@'/g'|sed 's/$/...../g'|tr "\n" " ")})}) exten => 0000555,n,Set(ostatok=$[${ostatok}-${packet}]) exten => 0000555,n,Gotoif($[ ${ostatok} > 0 ]?SendNextPacket:DelTmpFile) exten => 0000555,n(DelTmpFile),System(rm ${tmp_dir}/${UNIQUEID}) exten => 0000555,n,ExecIf($[${kls}>0]?UserEvent(Refresh1CHistory,Channel: ${chan},Date: ${date1})) exten => 0000555,n,Answer() exten => 0000555,n,Hangup()