Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000268 [Yate - Yet Another Telephony Engine] engine trivial random 2011-09-07 01:19 2011-09-07 11:39
Reporter mtiempos View Status public  
Assigned To
Priority normal Resolution open  
Status feedback   Product Version 3.x
Summary 0000268: I get different time readings from CDR on ASTERCC than Yate, when one hangs up call from softphone.
Description I have an Astercc running, connect a Yate 3.01 , and make calls just fine, but when I try to perform the billing for the exact time of the call, I get differences in the time registered by the softphone , and the Astercc CDR. The Astercc duration is just about always higher, and this causes an issue as the softphone is lower and I try to charge the customer the higher rate from the CDR.
Is there a way to make them match, I am not sure if it is a bandwidth issue, for latency, or the process of the hangup of the call that creates the delay in shutting down the call.

Is there a way to make these Billsec and Duration times match??
Additional Information Astercc is running on an Elastix server, on Centos 5.5 Linux server, the client is running on a windows machine running the Yate 3.0.1 and a USB Touch display with a modified skin for personalization with the Nokia QT Designer.
Tags No tags attached.
Attached Files

- Relationships

-  Notes
paulc (administrator)
2011-09-07 11:34

Can you provide a few examples of CDRs (times only, no numbers) to help finding out what happens?

Please check how differences relate to which party hangs up.

Note that differences in ranges up to fractions of a second are possible because of network latency. These differences add up or substract depending on the direction of each message.

Occasional packet loss can increase the differences dramatically as retransmission timers are much larger than network latency.

Example with 250ms latency and 2 lost packets:

Time Caller Called
(caller starts)
00.00 INVITE -->
00.25 <-- 100 Trying
          (called answers)
10.00 <-- 200 OK (to INVITE)
10.25 ACK -->
(caller hangs up)
20.00 BYE --> (lost)
20.50 BYE --> (lost)
21.50 BYE -->
21.75 <-- 200 OK (to BYE)

From caller's point of view the active call took 20.00 - 10.25 = 9.75s
From called party's view it took 21.75 - 10.00 = 11.75s

This applies to all protocols and there's nothing to do about it.
paulc (administrator)
2011-09-07 11:39

Another thing to consider is if the BYE actually works. It's possible that the BYE fails and the call remains active from the other party's point of view, only to be hung up later as it goes silent and/or some timeout kicks in.

If the hangup is initiated from the softphone (Yate) does it receive a 200 OK to the BYE it sends?

You should also consider testing a newer version - Yate 3.3.2 is the latest release.

- Issue History
Date Modified Username Field Change
2011-09-07 01:19 mtiempos New Issue
2011-09-07 11:34 paulc Note Added: 0000388
2011-09-07 11:34 paulc Status new => feedback
2011-09-07 11:39 paulc Note Added: 0000389

Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker