|Summary:||ASTERISK-06950: Accountcode isn't accurate with ForkCDR.|
|Reporter:||Juan Pablo Abuyeres (jpabuyer)||Labels:|
|Date Opened:||2006-05-10 16:54:48||Date Closed:||2011-06-07 14:07:46|
|Environment:||Attachments:||( 0) blindtransfer+forkcdr_SVN-trunk-r26655.log|
|Description:||When A calls B, and B blindtransfers the call to C, I ForkCDR to make 2 CDR records. I want the first call to have accountcode of user A, and the second (the blindtransfered) call to have accountcode of user B.|
When I ForkCDR, both calls have the same accountcode (user A's). If I ForkCDR before the new Dial (in the middle of the blindtransfer), I would expect the new cdr to have accountcode of the account that's making the transfer, not the original caller.
|Comments:||By: Serge Vecher (serge-v) 2006-05-10 19:42:13|
please turn up high verbosity enable the sip debug and post the results here as an attachment.
By: Juan Pablo Abuyeres (jpabuyer) 2006-05-11 09:50:04
Uploaded file shows SIP/1003 calling SIP/1002, and then SIP/1002 blindtransfers the call to SIP/1001, ForkingCDR before the second Dial.
By: Juan Pablo Abuyeres (jpabuyer) 2006-05-17 15:55:59
I've been looking at the source code trying to solve this myself. It's not an easy task to try to undestand this beast with no background :) so I have a design question. Correct me if I'm wrong.
ast_chan->cdr is a pointer to a linked list of cdr's for a channel, but apparently from ast_cdr_setaccount() it is expected that every ast_chan->cdr->accountcode to be the same.. It doesn't make sense to me, from a billing system point of view. Please give me some clues on this. Thank you.
By: Joshua C. Colp (jcolp) 2006-05-18 11:08:46
I think this question would be better if it was asked on the Asterisk-Dev mailing list then here... it's more of a design question and proper behavior question that I don't think anybody can outright answer.