|
ISTRUZIONI PER UTILIZZO SEMPLICE ED IMMEDIATO ATTENZIONE: il metodo seguente è riportato solo come esempio per uso di test.E' fortemente sconsigliata la messa in produzione di uno script contenente username e password scritti in chiaro (cioè non criptato). E' invece consigliato l'uso del metodo "AVANZATO" riportato successivamente
<html>
<body>
<form action="http://www.cheapnet.it/areautenti/voip/sms/invia-sms-api.php" method="POST">
<input type="hidden" name="testo" value="prova">
<input type="hidden" name="sn" value="|300123123|">
<input type="hidden" name="username" value="utente@cheapnet.it">
<input type="hidden" name="mittente" value="MarioRossi">
<input type="hidden" name="password" value="secret">
<input type="submit" name="Submit" value="Invia">
</form>
</body>
</html>
Per poter utilizzare il suddetto script occorre:
Per favorire l'utilizzo del servizio di invio SMS tramite CheapVoIP viene fornita una piccola libreria in linguaggio PHP che può essere utilizzata in sostituzione dell'esempio precedente. I requisiti necessari per utilizzare questa libreria sono:
La configurazione di username e password dell'utente Cheapnet abilitato a CheapVoIP Ricaricabile o CheapVoIP Plus deve essere effettuata solo nel file di libreria "cheapvoip-sms.inc.php". Di seguito vengono riportati due esempi chiarificatori e la libreria. Tutti i file sotto riportati sono riuniti in un unico file di archivio (.zip) e sono disponibili per il download.
invio_sms_singolo.php
- Esempio 1. Codice
PHP per inviare un singolo
SMS:
<html>
<head>
</head>
<body>
<div align="center">
<h1>Invio sms</h1>
<!-- form per l'invio dei dati-->
<!-- si imposta l'action con il nome ed il percorso del file (risposta.php riportato nella pagina) che invoca la WEB API-->
<form method="post" name="form1" action="risposta.php">
<!-- si prepara un'interfaccia grafica per l'invio dell'sms -->
<table width="440" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td width="203"><strong>Numero di telefono</strong></td>
</tr>
<tr>
<td><!-- si riempie la select con i numeri di telefono completi (prefisso e numero) dei destinatari -->
+39 - <input type="text" name="destinatari[]" /> </td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td><strong>Mittente</strong></td>
</tr>
<tr><!-- inserisco il mittente come stringa alfanumerica o come numero di telefono cellulare valido per gli operatori italiani. Max 10 caratteri -->
<td><input type="text" name="mittente" maxlength="10" /></td>
</tr>
<tr>
<td><strong>Testo del messaggio (max 160 caratteri)</strong></td>
</tr>
<tr>
<td>
<textarea name="testo" rows="4" cols="45" id="textarea"></textarea></td>
</tr>
<tr>
<td
align="center"></td>
</tr>
<tr>
<td
align="center">
<!-- pulsante di invio SMS-->
<input name="Submit" type="submit" value="Invia"></td>
</tr>
</table>
</form>
</div>
</body>
</html>
invio_sms_multiplo.php
- Esempio 2. Codice PHP per
inviare un SMS
multiplo:
<html>
<head>
</head>
<body>
<div align="center">
<h1>Invio sms</h1>
<?php
$lista_numeri[]="300123123";
$lista_numeri[]="300456456";
?>
<!-- form per l'invio dei dati-->
<!-- si imposta l'action con il nome ed il percorso del file (risposta.php riportato nella pagina) che invoca la WEB API-->
<form method="post" name="form1" action="risposta.php">
<!-- si prepara un'interfaccia grafica per l'invio dell'sms -->
<div align="center">Ricordati di modificare la lista dei numeri di telefono che si trova all'inizio di questo file.</div><br>
<table width="440" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td
width="203"><strong>Numero di telefono</strong></td>
</tr>
<tr>
<td><!-- si riempie la select con i numeri di telefono completi (prefisso e numero) dei destinatari
-->
+39<select name="destinatari[]" multiple="multiple" size="5">
<?php
foreach($lista_numeri
as $value){
echo "<option value=\"".$value."\">".$value."</option>\n";
}
?>
</select></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td><strong>Mittente</strong></td>
</tr>
<tr><!-- inserisco il mittente come stringa alfanumerica o come numero di telefono cellulare valido per gli operatori italiani. Max 10 caratteri -->
<td><input type="text" name="mittente" maxlength="10" /></td>
</tr>
<tr>
<td><strong>Testo del messaggio (max 160 caratteri)</strong></td>
</tr>
<tr>
<td>
<textarea name="testo" rows="4" cols="45" id="textarea"></textarea></td>
</tr>
<tr>
<td align="center"> </td>
</tr>
<tr>
<td align="center">
<!-- pulsante di invio SMS-->
<input name="Submit" type="submit" value="Invia"></td>
</tr>
</table>
</form>
</div>
</body>
</html>
risposta.php
-
Esempio completo di pagina
HTML che include la libreria e
gestice la
risposta:
<html>
<body>
<div align="center"><?php
//si include la libreria per inviare SMS
require("cheapvoip-sms.inc.php");
$mittente = $_REQUEST['mittente'];
//testo dell'sms ricevuto dal form
$testo = $_REQUEST["testo"];
$destinatari = $_REQUEST["destinatari"];
// Invio il messaggio alla lista dei destinatari
$ret=CheapVoIPSMS ($mittente, $destinatari, $testo);
// Visualizzo l'esito dell'invio
$autorizzato=$ret[0]["autorizzato"];
$messaggio=$ret[0]["evento"];
if($autorizzato == true){
echo "Utente autorizzato all'invio di SMS\n<br>";
} else {
echo "Utente non autorizzato all'invio di SMS\n<br>";
}
echo $messaggio."\n<br>";
$lista_messaggi=$ret[1];
?>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<td align="center">numero</td>
<td align="center">risposta</td>
<td align="center">esito</td>
</tr>
<?php
foreach($lista_messaggi as $messaggio){
echo "<tr>";
echo "<td align=\"center\">".$messaggio["numero"]."</td>";
echo "<td align=\"center\">".$messaggio["risposta"]."</td>";
echo "<td align=\"center\">".(($messaggio["esito"])?'Inviato':'Non inviato')."</td>";
echo "</tr>\n";
}
?>
</table>
</div>
</body>
</html>
cheapvoip-sms.inc.php
- Libreria per l'invio di
SMS:
<?php
/* MODIFICARE QUESTI CAMPI */
//username di Cheapnet (che sia abilitato all'utilizzo di CheapVoIP)
define("USERNAME","<utentecheapnet>@cheapnet.it");
//nome del mittente o numero di telefono cellulare adoperato
define("MITTENTE","Mariorossi");
//password di Cheapnet
define("PASSWORD","<passwordcheapnet>");
//lista di destinatari ricevuta dal form
//comando di invio
define("SUBMIT", "Invia");
//URL WEB API CheapVoIP SMS
define("URLAPI","http://www.cheapnet.it/areautenti/voip/sms/invia-sms-api.php");
function CheapVoIPSMS ($mittente, $destinatari, $testo)
{
$params="sn=";
foreach($destinatari as $value){
$params.="|".$value."|";
}
$params.="&testo=".$testo;
$ch = curl_init(URLAPI);
//chiamata alla funzione curl di php -con metodo POST- per invocare la WEB API
curl_setopt($ch, CURLOPT_POST, TRUE);
$params .= "&mittente=" . MITTENTE . "&username=" . USERNAME
. "&password=". PASSWORD . "&Submit=" . SUBMIT;
//passaggio parametri tramite curl
curl_setopt($ch,CURLOPT_POSTFIELDS,$params);
ob_start();
curl_exec($ch);
//catturo i risultati
$xmlResponse =ob_get_contents();
ob_end_clean();
curl_close($ch);
//decodifico il risultato XML
$response = xmlrpc_decode($xmlResponse,"iso-8859-1");
return $response;
}
?>
|