Dan, you are right and I found the problem. The fix will be available with the next CDRTool release due next week together with Mediaproxy 2.0
Adrian
If you need a fix now for your 6.4.1:
--- rating_lib-6.4.1.phtml 2008-05-28 18:25:18.000000000 +0200 +++ rating_lib.phtml 2008-05-28 18:27:00.000000000 +0200 @@ -6078,26 +6078,28 @@ $timestamp=time(); }
- $application="audio"; - if ($NetFields['application']) $application=$NetFields ['application']; + $CDRStructure=array ( + $this->CDRS->CDRFields ['callId'] => $NetFields['callid'], + $this->CDRS->CDRFields ['aNumber'] => $NetFields['from'], + $this->CDRS->CDRFields ['CanonicalURI'] => $NetFields['to'], + $this->CDRS->CDRFields ['duration'] => $NetFields['duration'], + $this->CDRS->CDRFields ['timestamp'] => time() + ); + + $CDR = new $this->CDRS->CDR_class(&$this->CDRS, & $CDRStructure); + $CDR->normalize();
$Rate = new Rate($this->settings, $this->db);
$RateDictionary=array( - 'callId' => $NetFields ['callid'], - 'timestamp' => $timestamp, - 'duration' => $NetFields ['duration'], - 'inputTraffic' => $NetFields ['inputtraffic'], - 'outputTraffic' => $NetFields ['outputtraffic'], - 'DestinationId' => $NetFields ['destinationid'], - 'BillingPartyId' => $NetFields ['from'], - 'domain' => $NetFields ['domain'], - 'gateway' => $NetFields ['gateway'], - 'aNumber' => $NetFields ['from'], - 'cNumber' => $NetFields ['to'], - 'ENUMtld' => $NetFields ['enumtld'], - 'applicationType' => $application, - 'RatingTables' => &$this->CDRS-
RatingTables,
+ 'duration' => $CDR->duration, + 'callId' => $CDR->callId, + 'timestamp' => $CDR->timestamp, + 'DestinationId' => $CDR-
DestinationId,
+ 'domain' => $CDR->domain, + 'BillingPartyId' => $CDR-
BillingPartyId,
+ 'ENUMtld' => $CDR->ENUMtld, + 'RatingTables' => &$this->CDRS-
RatingTables
);
$Rate->calculate($RateDictionary);
Great,
many thanks Adrian.
DanB
On Wed, May 28, 2008 at 6:29 PM, Adrian Georgescu ag@ag-projects.com wrote:
Dan, you are right and I found the problem. The fix will be available with the next CDRTool release due next week together with Mediaproxy 2.0
Adrian
If you need a fix now for your 6.4.1:
--- rating_lib-6.4.1.phtml 2008-05-28 18:25:18.000000000 +0200 +++ rating_lib.phtml 2008-05-28 18:27:00.000000000 +0200 @@ -6078,26 +6078,28 @@ $timestamp=time(); }
$application="audio";
if ($NetFields['application']) $application=$NetFields
['application'];
$CDRStructure=array (
$this->CDRS->CDRFields
['callId'] => $NetFields['callid'],
$this->CDRS->CDRFields
['aNumber'] => $NetFields['from'],
$this->CDRS->CDRFields
['CanonicalURI'] => $NetFields['to'],
$this->CDRS->CDRFields
['duration'] => $NetFields['duration'],
$this->CDRS->CDRFields
['timestamp'] => time()
);
$CDR = new $this->CDRS->CDR_class(&$this->CDRS, &
$CDRStructure);
$CDR->normalize(); $Rate = new Rate($this->settings, $this->db); $RateDictionary=array(
'callId' => $NetFields
['callid'],
'timestamp' => $timestamp,
'duration' => $NetFields
['duration'],
'inputTraffic' => $NetFields
['inputtraffic'],
'outputTraffic' => $NetFields
['outputtraffic'],
'DestinationId' => $NetFields
['destinationid'],
'BillingPartyId' => $NetFields
['from'],
'domain' => $NetFields
['domain'],
'gateway' => $NetFields
['gateway'],
'aNumber' => $NetFields
['from'],
'cNumber' => $NetFields
['to'],
'ENUMtld' => $NetFields
['enumtld'],
'applicationType' => $application,
'RatingTables' => &$this->CDRS-
RatingTables,
'duration' => $CDR->duration,
'callId' => $CDR->callId,
'timestamp' => $CDR->timestamp,
'DestinationId' => $CDR-
DestinationId,
'domain' => $CDR->domain,
'BillingPartyId' => $CDR-
BillingPartyId,
'ENUMtld' => $CDR->ENUMtld,
'RatingTables' => &$this->CDRS-
RatingTables
); $Rate->calculate($RateDictionary);
Users mailing list Users@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/users