[Devel] Last changes before CVS freez

Juha Heinanen jh at tutpro.com
Tue May 23 13:13:39 CEST 2006

Bogdan-Andrei Iancu writes:

 > normally only one missed call report should be generated per fork 
 > sequence. I'm still trying to reproduce what you are reporting, but not 
 > successful so fat - still getting only one report.
 > Are you using the latest CVS version?

i should be, but looks like sf is down again and i can't check.

 > Accounting is done on TMCB_RESPONSE_OUT. if you set the accounting flag, 
 > the call report will be triggered at that point - by default only 
 > successful transactions are reported; to get also the negative ones, you 
 > need to set the failed_transaction flag also.

as i told, i don't have failed_transactions flag set.  i have been
reading acc_mod.c code.  call back function does the following tests:

static void tmcb_func( struct cell* t, int type, struct tmcb_params *ps )
	if (type&TMCB_RESPONSE_OUT) {
		acc_onreply( t, ps->req, ps->rpl, ps->code);
	} else if (type&TMCB_E2EACK_IN) {
		acc_onack( t, t->uas.request, ps->req, ps->code);
	} else if (type&TMCB_ON_FAILURE) {
		on_missed( t, ps->req, ps->rpl, ps->code);
	} else if (type&TMCB_RESPONSE_IN) {
		acc_onreply_in( t, ps->req, ps->rpl, ps->code);

does that mean that if invite times out, both on_missed and acc_onreply
are called, on_missed, when 408 is triggered by proxy and acc_onreply
when 408 is sent out to the caller?  on the other hand, acc_onreply
itself calls both on_missed and acc_rad_reply.

 > To achieve your scenario, you need to set the accounting flag (to get 
 > the call report if successful) and the missed call flag (to get a missed 
 > call report(s) if the call fails).

i have those two flags set and i get two reports if call fails.

-- juha

More information about the Devel mailing list