Difference between revisions of "ANSWER(312) with billsec 0"

From Kolmisoft Wiki
Jump to navigationJump to search
 
Line 20: Line 20:




A similar situation is described in Reason header RFC https://tools.ietf.org/html/rfc3326  
A similar situation is described in Reason header RFC https://tools.ietf.org/html/rfc3326#section-3.2
 
3.2 Refusing an Offer that Comes in a Response


  3.2 Refusing an Offer that Comes in a Response <br>
   A client sends an empty INVITE and receives an unacceptable offer in a 200 (OK)
   A client sends an empty INVITE and receives an unacceptable offer in a 200 (OK)
   response.  The client sends an ACK with a correctly
   response.  The client sends an ACK with a correctly

Latest revision as of 13:04, 2 April 2020

Sometimes there is CDR with ANSWER disposition, HGC 312 and the billsec is 0s.

Answer312 0.png

How to interpret this case?

The following example will illustrate one such case.

The call flow is from the Origination Point (OP) to the Proxy, Proxy sends the call over Freeswitch (FS), then back through the Proxy to the Termination Point.

In short: OP -> Proxy -> FS -> Proxy -> TP

We have the following schema:

Answer312 0 1.png

OP sends the CANCEL at the time: 10:32:54.507296 and TP sends the ANSWER at the 10:32:54.506003. The difference is 0.0001293 seconds.

In this case, TP thinks the call is ANSWERED and OP thinks it CANCELLED the call.


A similar situation is described in Reason header RFC https://tools.ietf.org/html/rfc3326#section-3.2

 3.2 Refusing an Offer that Comes in a Response 
A client sends an empty INVITE and receives an unacceptable offer in a 200 (OK) response. The client sends an ACK with a correctly formatted answer and immediately sends a BYE to terminate the session. The client includes a 488 (Not Acceptable Here) status code in a Reason header field.3.2 Refusing an Offer that Comes in a Response

So in our case, FS should send BYE with a Reason header to TP. That reason header contains some error code and TP should handle the call accordingly.

In the marked BYE packet we see:

Answer312 0 2.png

e.g. FS sent the reason that ANSWER is not accepted.

Sadly the TP did not honor the RFC and marked this call as ANSWERED with billsec 1s. (TP uses Speedflow's MediaCore switch).