Detecting missing Queue exit events

On some version of Asterisk, there are conditions when an unanswered call would exit the queue without leaving a trace of its exiting in the queue_log, therefore generating incomplete call processing events that lead reporting software like QueueMetrics to produduce inaccurate results.

You will notice this if you encounter pieces of the queue_log that look like the following example:

 

1167421685|1169421668.34679|qname|NONE|ENTERQUEUE||5555551234
1167099900|1169099887.31480|qname|NONE|ENTERQUEUE||5555551234
1168222540|1168222529.5949|qname|NONE|ENTERQUEUE||5555551234

Here you can see that the caller-id 5555551234 entered the queue three times in a row but its exiting statuses were never recorded.

To solve this problem, it is important to know why the queue was exited without response, and this can be obtained with a sample piece of the dialplan like the following:

 

exten => s,1,queue(myqueue)
exten => s,2,System( echo "${EPOCH}|${UNIQUEID}|myqueue|NONE|EXITCODE|${QUEUESTATUS}" >> /var/log/asterisk/queue_log )
exten => h,1,System( echo "${EPOCH}|${UNIQUEID}|myqueue|NONE|EXITHANGUP|${QUEUESTATUS}" >> /var/log/asterisk/queue_log )

You should leave this code running for a while and then review the queue_log manually for traces of ENTERQUEUEs followed only by EXITCODE and EXITHANGUP records. They will be followed by the condition causing the problem, like TIMEOUT, FULL, JOINEMPTY, LEAVEEMPTY, JOINUNAVAIL, or LEAVEUNAVAIL.

After you have this information, you can know how to modify the dialplan to record a fake queue end entry, therefore producing a valid queue_log file.

Note: version 1.4 of Asterisk should finally be unaffected by this problem.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值