Author Topic: Fixing incomplete calls - show as Ongoing in reports  (Read 2405 times)

dionv

  • Newbie
  • *
  • Posts: 16
  • Karma: 2
    • View Profile
Fixing incomplete calls - show as Ongoing in reports
« on: February 26, 2008, 14:39:42 »
While testing QM 1.4.3 again on a new server, we've noticed that if something happens to a call, the closing entry is not written to the queue_log, resulting in calls that are still listed as ongoing even days later. If we run a report and look at the details of the call, we can get the uniqueid of the call. Using that we can grep the call from queue_log. We can see the call enter the queue, we can see the agent take the call, but then no entry to show that the call ended.

By doing a CDR report, we can extrapolate the call details, but are not quite sure how we could fix the queue_log to show that the call has finished.

It *looks* like we could simply create an echo command on the command line to write the closing entry to queue_log, but attempting to do so with one call now makes it look like a multi-stint call, with on stint still ongoing, and the other stint completed.

For example, the queue_log showed (with the phone number blanked for privacy):

Code: [Select]
1200493315|1200493245.610463|10301|NONE|ENTERQUEUE||519xxxxxxx
1200493330|1200493245.610463|10301|Local/3012@from-internal-8a42,1|CONNECT|15

In the CDR, this call lasted about 284 seconds, so calculating the EPOCH it looks like we should be able to write:

Code: [Select]
echo "1200493614|1200493245.610463|10301|Local/3012@from-internal-8a42,1|COMPLETECALLER|15|284|1" >> queue_log

But this does not fix the reported time of the call. It still shows as being a 5 hour call.

Any suggestions on how we could properly fix these entries?

TIA

DionV

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: Fixing incomplete calls - show as Ongoing in reports
« Reply #1 on: February 27, 2008, 16:40:09 »
This should be possible if you use a database storage model; make sure that the timestamp of the row is the same as the timestamp the call ended.