کد:
#!/usr/bin/php -q
#######################################
###### linux-notes.blogfa.com #########
#omid dot mohajerani at gmail dot com #
#######################################
<?
set_time_limit(30);
require('phpagi.php');
error_reporting(E_ALL);
$agi = new AGI();
$agi->answer();
PersianSayNumber($agi,555005500);
//////////////////////////////////////////////////
//////////////////////////////////////////////////
//////// PersianSayNumber Function ///////////////
////// for pronouncing numbers in ///////////////
/////// PERSIAN ///////////////
//////////////////////////////////////////////////
//////////////////////////////////////////////////
function PersianSayNumber($agi,$a)
{
/////////////////////////////
////// if 0<a<19 ///////////
if ( $a>=0 && $a<=19 )
{
playnum($agi,$a);
}
/////////////////////////////
//////if 20<a<99 ///////////
elseif($a>=20 && $a<=99)
{
if (($a % 10) == 0)
{
playnum($agi,$a);
}//end if
else
{
playnumo($agi,(int)($a / 10)*10 );
PersianSayNumber ($agi,$a % 10);
}
}
///////////////////////////
//////if 100<a<999 ////////
elseif($a>=100 && $a<=999)
{
if (($a % 100) == 0)
{
playnum($agi,$a);
}//end if
else
{
playnumo($agi,(int)($a / 100)*100 );
PersianSayNumber ($agi,$a % 100);
}
}
/////////////////////////////
/////if 1000<a<999999 ///////
elseif($a>=1000 && $a<=999999)
{
if (($a % 1000) == 0)
{
PersianSayNumber($agi,(int)($a / 1000));
$agi->stream_file("persianvoice/1000");
}//end if
else
{
PersianSayNumber($agi,(int)($a / 1000));
$agi->stream_file("persianvoice/1000o");
PersianSayNumber ($agi,$a % 1000);
}
}
////////////////////////////////
//if 1000000<a<999999999 //////
elseif($a>=1000000 && $a<=999999999)
{
if (($a % 1000000) == 0)
{
PersianSayNumber($agi,(int)($a / 1000000));
$agi->stream_file("persianvoice/1000000");
}//end if
else
{
PersianSayNumber($agi,(int)($a / 1000000));
$agi->stream_file("persianvoice/1000000o");
PersianSayNumber ($agi,$a % 1000000);
}
}
} // function PersianSayNumber()
/////////////////////////////////////////////////////
//////// Function Playnum for Pronouncing /////////
//////// 1-19 , 20,30,40,50,60,70,80,90,100 /////////
/////// 200,300,400,500,600,700,800,900 /////////
/////////////////////////////////////////////////////
function playnum($agi,$s)
{
switch ($s)
{
case 1 :
$agi->stream_file("persianvoice/1");
break;
case 2 :
$agi->stream_file("persianvoice/2");
break;
case 3 :
$agi->stream_file("persianvoice/3");
break;
case 4 :
$agi->stream_file("persianvoice/4");
break;
case 5 :
$agi->stream_file("persianvoice/5");
break;
case 6 :
$agi->stream_file("persianvoice/6");
break;
case 7 :
$agi->stream_file("persianvoice/7");
break;
case 8 :
$agi->stream_file("persianvoice/8");
break;
case 9 :
$agi->stream_file("persianvoice/9");
break;
case 10 :
$agi->stream_file("persianvoice/10");
break;
case 11 :
$agi->stream_file("persianvoice/11");
break;
case 12 :
$agi->stream_file("persianvoice/12");
break;
case 13 :
$agi->stream_file("persianvoice/13");
break;
case 14 :
$agi->stream_file("persianvoice/14");
break;
case 15 :
$agi->stream_file("persianvoice/15");
break;
case 16 :
$agi->stream_file("persianvoice/16");
break;
case 17 :
$agi->stream_file("persianvoice/17");
break;
case 18 :
$agi->stream_file("persianvoice/18");
break;
case 19 :
$agi->stream_file("persianvoice/19");
break;
case 20 :
$agi->stream_file("persianvoice/20");
break;
case 30 :
$agi->stream_file("persianvoice/30");
break;
case 40 :
$agi->stream_file("persianvoice/40");
break;
case 50 :
$agi->stream_file("persianvoice/50");
break;
case 60 :
$agi->stream_file("persianvoice/60");
break;
case 70 :
$agi->stream_file("persianvoice/70");
break;
case 80 :
$agi->stream_file("persianvoice/80");
break;
case 90 :
$agi->stream_file("persianvoice/90");
break;
case 100 :
$agi->stream_file("persianvoice/100");
break;
case 200 :
$agi->stream_file("persianvoice/200");
break;
case 300 :
$agi->stream_file("persianvoice/300");
break;
case 400 :
$agi->stream_file("persianvoice/400");
break;
case 500 :
$agi->stream_file("persianvoice/500");
break;
case 600 :
$agi->stream_file("persianvoice/600");
break;
case 700 :
$agi->stream_file("persianvoice/700");
break;
case 800 :
$agi->stream_file("persianvoice/800");
break;
case 900 :
$agi->stream_file("persianvoice/900");
break;
}
}
/////////////////////////////////////////////////////
//////// Function Playnumo for Pronuncing ///////
//////// 10o,20o,30o,40o,50o,60o,70o,80o,90o ///////
/////// 100o,200o,300o,400o,500o,600o,700o ///////
/////// 800o,900o ///////
/////////////////////////////////////////////////////
function playnumo($agi,$z)
{
switch ($z)
{
case 10 :
$agi10->stream_file("persianvoice/10o");
break;
case 20 :
$agi->stream_file("persianvoice/20o");
break;
case 30 :
$agi->stream_file("persianvoice/30o");
break;
case 40 :
$agi->stream_file("persianvoice/40o");
break;
case 50 :
$agi->stream_file("persianvoice/50o");
break;
case 60 :
$agi->stream_file("persianvoice/60o");
break;
case 70 :
$agi->stream_file("persianvoice/70o");
break;
case 80 :
$agi->stream_file("persianvoice/80o");
break;
case 90 :
$agi->stream_file("persianvoice/90o");
break;
case 100 :
$agi->stream_file("persianvoice/100o");
break;
case 200 :
$agi->stream_file("persianvoice/200o");
break;
case 300 :
$agi->stream_file("persianvoice/300o");
break;
case 400 :
$agi->stream_file("persianvoice/400o");
break;
case 500 :
$agi->stream_file("persianvoice/500o");
break;
case 600 :
$agi->stream_file("persianvoice/600o");
break;
case 700 :
$agi->stream_file("persianvoice/700o");
break;
case 800 :
$agi->stream_file("persianvoice/800o");
break;
case 900 :
$agi->stream_file("persianvoice/900o");
break;
} //end switch
} // end function playnumo()
$agi->hangup();
?>