Support A2Billing :

provided by Star2Billing S.L.

Support A2Billing :
It is currently Wed Oct 23, 2019 8:02 am
Voice Broadcast System


All times are UTC




Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: Rate initial issue
PostPosted: Sat Apr 17, 2010 5:37 pm 
Offline

Joined: Wed Jun 25, 2008 3:10 pm
Posts: 45
Location: Germany
Verison .133
* Function to play the rate in cents
* format : "7 point 5 cents per minute"
*
* @param object $agi
* @param float $rate
* @return nothing
**/
function fct_say_rate ($agi, $rate){

$this -> debug( WRITELOG, $agi, __FILE__, __LINE__, "[SAY RATE ::> ".$rate."]");

global $currencies_list;

if (isset($this->agiconfig['agi_force_currency']) && strlen($this->agiconfig['agi_force_currency'])==3)
{
$this->currency = $this->agiconfig['agi_force_currency'];
}

if (!isset($currencies_list[strtoupper($this->currency)][2]) || !is_numeric($currencies_list[strtoupper($this->currency)][2])) $mycur = 1;
else $mycur = $currencies_list[strtoupper($this->currency)][2];
$rate_cur = $rate / $mycur;
$cents = intval($rate_cur);
$units = round(($rate_cur - $cents) * 1E4);
while ($units != 0 && $units % 10 == 0) $units /= 10;

// say 'the rate is'
//$agi->stream_file('the-rate-is');

$agi->say_number($cents);
if ($units > 0) {
$agi->stream_file('point');
$agi->say_digits($units);
}
$agi->stream_file('cents-per-minute');
}
-----------------------------------------------------------------------------------------------------------
Version 1.6

* Function to play the initial rate
* format : "the cost of the call is 7 dollars and 50 cents per minutes"
*
* @param object $agi
* @param float $rate
* @return nothing
**/
function fct_say_rate ($agi, $rate)
{
global $currencies_list;

if (isset($this->agiconfig['agi_force_currency']) && strlen($this->agiconfig['agi_force_currency'])==3) {
$this->currency = $this->agiconfig['agi_force_currency'];
}

$this -> debug( DEBUG, $agi, __FILE__, __LINE__, "[CURRENCY : $this->currency]");
if (!isset($currencies_list[strtoupper($this->currency)][2]) || !is_numeric($currencies_list[strtoupper($this->currency)][2])) $mycur = 1;
else $mycur = $currencies_list[strtoupper($this->currency)][2];
$credit_cur = $rate / $mycur;

list($units,$cents)=split('[.]', $credit_cur);
if (strlen($cents)>2) $cents=substr($cents,0,2);
if ($units=='') $units=0;
if ($cents=='') $cents=0;
elseif (strlen($cents)==1) $cents.= '0';

if (isset($this->agiconfig['currency_association_internal'][strtolower($this->currency)])) {
$units_audio = $this->agiconfig['currency_association_internal'][strtolower($this->currency)];
// leave the last character ex: dollars -> dollar
$unit_audio = substr($units_audio,0,-1);
} else {
$units_audio = $this->agiconfig['currency_association_internal']['all'];
$unit_audio = $units_audio;
}
$cent_audio = 'prepaid-cent';
$cents_audio = 'prepaid-cents';

// say 'the cost of the call is '
$agi-> stream_file('prepaid-cost-call', '#');

if ($units==0 && $cents==0) {
$agi -> say_number(0);
$agi -> stream_file($unit_audio, '#');
} else {
if ($units > 1) {
$agi -> say_number($units);

if (($this ->current_language=='ru')&&(strtolower($this->currency)=='usd')&& ( ( $units%10==2) || ($units%10==3 )|| ($units%10==4)) ) {
// test for the specific grammatical rules in RUssian
$agi-> stream_file('dollar2', '#');
} elseif (($this ->current_language=='ru')&&(strtolower($this->currency)=='usd')&& ( $units%10==1)) {
// test for the specific grammatical rules in RUssian
$agi-> stream_file($unit_audio, '#');
} else {
$agi-> stream_file($units_audio, '#');
}

} else {
$agi -> say_number($units);
$agi -> stream_file($unit_audio, '#');
}

if ($units > 0 && $cents > 0) {
$agi -> stream_file('vm-and', '#');
}
if ($cents>0) {
$agi -> say_number($cents);

if ($cents>1) {
if ((strtolower($this->currency)=='usd')&&($this ->current_language=='ru')&& ( ( $cents%10==2) || ($cents%10==3 )|| ($cents%10==4)) ) {
// test for the specific grammatical rules in RUssian
$agi-> stream_file('prepaid-cent2', '#');
} elseif ((strtolower($this->currency)=='usd')&&($this ->current_language=='ru')&& ( $cents%10==1) ) {
// test for the specific grammatical rules in RUssian
$agi-> stream_file($cent_audio, '#');
} else {
$agi-> stream_file($cents_audio, '#');
}
} else {
$agi-> stream_file($cent_audio, '#');
}
}
}
// say 'per minutes'
$agi-> stream_file('prepaid-per-minutes', '#');
}
------------------------------



Can we use 1.6 version?
In such a way that if rate call cost is less than 1 euro is should play
Only cents

For example if rate is 0.075 (7 point 5 cents per minutes)

If call cost more than 1 euro then it should play euro and cent


above are thow fuction to say rate intial ,can we


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 
Predictive Dialer


All times are UTC


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group