[asterisk-bugs] [Asterisk 0013251]: endbeforehexten=yes is useless now

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Aug 28 02:13:04 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13251 
====================================================================== 
Reported By:                sergee
Assigned To:                murf
====================================================================== 
Project:                    Asterisk
Issue ID:                   13251
Category:                   CDR/General
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     feedback
Asterisk Version:           SVN 
SVN Branch (only for SVN checkouts, not tarball releases): 1.6.0 
SVN Revision (number only!): 135435 
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-08-06 15:10 CDT
Last Modified:              2008-08-28 02:13 CDT
====================================================================== 
Summary:                    endbeforehexten=yes is useless now
Description: 
1. Part of code:

  if (c->cdr && ast_opt_end_cdr_before_h_exten)
	                         ast_cdr_end(c->cdr);

- missing (this is how it was
http://svn.digium.com/view/asterisk/trunk/pbx.c?r1=12896&r2=12895&pathrev=12896)

2. I have very simple scenario SIP/A calls SIP/B they talk 30 seconds,
then call is finished. Even after i call ast_cdr_end(chan->cdr) - manually
from my app,  these fields aren't initialized:

chan->cdr->billsec == 0,
chan->cdr->duration == 0,
chan->cdr->answer.tv_sec == 0,
chan->cdr->end.tv_sec == 0

3. as far as i understand, CDRs are posted now as soon as channels are
unbridged. This behavior breaks billings which make calculations inside 'h'
extensions. It would be nice to post CDRs after no more apps are left in
the 'h' extension or to have an application in the DialPlan, something like
CDRPost().

====================================================================== 

---------------------------------------------------------------------- 
 (0091850) chris-mac (reporter) - 2008-08-28 02:13
 http://bugs.digium.com/view.php?id=13251#c91850 
---------------------------------------------------------------------- 
My scenario is as follows:

1. There is an incoming call to some E.164 number coming into * from user
'A'
2. Asterisk sets two custom CDR vars - (Set(CDR(DST_RATE)=0.033),
(Set(CDR(DST_NAME)=Spain Mobile)
3. Asterisk Dials PSTN gateway and creates a bridge with 'A'
4. User 'A' hangs up and in 'h' extension:
   a) Call charge is calculated as CDR(billsec) * CDR(DST_RATE)
   b) Call charge is deducted from customer account
5. Finally CDR record is inserted into MySQL table - cdr_mysql

Regards,
Chris 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-08-28 02:13 chris-mac      Note Added: 0091850                          
======================================================================




More information about the asterisk-bugs mailing list