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

From Kolmisoft Wiki
Jump to navigationJump to search
Line 1: Line 1:
Sometimes there is CDR with ANSWER disposition, HGC 312 and billsec 0s.
Sometimes there is CDR with ANSWER disposition, HGC 312 and the billsec is 0s.


[[File:answer312_0.png]]
[[File:answer312_0.png]]
Line 17: Line 17:
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.
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
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
 
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:
 
[[File:answer312_0_2.png]]

Revision as of 13:00, 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

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