Redazione
a- a+

Inviare SMS con ASP 3

Poter usufruire di un servizio che permette di inviare messaggi SMS dal proprio sito verso i propri utenti o clienti è senza dubbio un arma vincente, che permette una comunicazione efficace e veloce tra le parti.
Businessonline.it offre a tutti i suoi utenti un pacchetto di prova di 500 SMS gratuiti per:

  1. La gestione dei propri clienti
  2. Per promuovere la propria attività  verso potenziali clienti
  3. Gestire le proprie reti vendite o propri dipendenti
  4. Per qualsiasi altra esigenza aziendale

Questa iniziativa è realizzata in collaborazione con Pubblicità Locale Srl, primaria azienda in Italia per la gestione SMS e MMS per imprese e liberi professionisti.

In questo articolo vedremo i codici di esempio per sfruttare i servizi di Pubblicità  Locale sia in PHP sia in ASP. Entrambi gli esempi presenetano le seguenti caratteristiche comuni:

  • un modulo di invio SMS singoli.
  • Il numero del destinatario deve essere indicato nel formato +39PPPNNNNNNN.

Nota bene: occorre richiedere allo staff di pubblicitalocale.net di abilitare l'IP statico del server da cui vengono originate le richieste di invio SMS.
Per abilitare l'IP del tuo server scrivi a: assistenza[CHIOCCIOLA]pubblicitalocale.net.


Codice HTML/CSS di base

Partiamo con il definire la pagina HTML di base con un modulo per riempire i campi con i dati necessari per l'inoltro dell'SMS. Salvate questa pagina in un file e chiamatelo modulo.html:

<a href="iframe_businessms1.html" title="Vedi esempio">Vedi esempio</a>;
<html>
<head>

  <meta http-equiv="Content-Language" content="it">

  <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

  <link rel="stylesheet" href="css-esempi.css" type="text/css">

  <title>Modulo di invio SMS in PHP</title>

</head>
<body>

<strong>Modulo dello script PHP di invio SMS:</strong><br><br>
<form method="POST" action="script_PHP_invio.php">

  <table border="1" width="10%" id="table1">

  <tr>

        <td>Username:</td>

        <td><input type="text" name="user" size="10" value=""></td>

  </tr> 

  <tr>

        <td>Password:</td>

        <td><input type="text" name="pass" size="10" value=""></td>

  </tr> 

  <tr>

        <td>Destinatario:</td>

        <td>

            <input type="text" name="rcpt" size="160" value=" +39">

        </td>

  </tr>

  <tr>

        <td height="25">Messaggio:</td>

        <td height="25"><input type="text" name="data" size="160"></td>

  </tr>

  <tr>

        <td>Priorità:</td>

        <td><select size="1" name="qty">

            <option value="ll" selected>Standard</option>

            <option value="n" selected>Alta con Notifica</option>

            </select>
        </td>

  </tr>

  <tr>

        <td>Mittente:</td>

        <td>

            <input type="text" name="sender" size="160" value=" +39">

        </td>

  </tr>

  </table>

  <input type="submit" value="Invia" name="invia">

  </form>
</body>

</html>

Qui sotto riportiamo il codice del foglio di stile, anch'esso valido per entrambe le soluzioni lato server:

body {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  }
table {

  border-width: 0px;

  border-spacing: 0px;

  border-style: outset;

  border-color: gray;

  border-collapse: collapse;

  background-color: white;

  }
td {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  padding: 1px;

  }
th {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  padding: 0px;

  }
form {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  }
input {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 9px;

  }
textarea {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  }
select {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 10px;

  background-color: #D7E5F2; 

  color: #102132; 

  border: 1px solid #284279; 

  }
ul {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 12px;

  list-style-type: disc;

  list-style-position: outside;

  }
li {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 12px;

  }
ol {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 12px;

  list-style-type: upper-roman;

  list-style-position: outside;

  }
.small {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 9px;

  }
.big {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 18px;

  }
.bodystyle {

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

  font-size: 12px;

  }
.box1 {

  padding: 3px;

  border-width: thin;

  border-style: solid;

  border-color: #CCCCCC #666666 #666666 #CCCCCC;

  }
.box2 {

  border-width: 3px;

  border-style: solid;

  padding: 5px;

  }
.div1 {

  margin-top: 10px;

  margin-right: 5px;

  margin-bottom: 10px;

  margin-left: 5px;

  }
.div2 {margin: 10px 5px 10px 5px;}

 

<a href="iframe_businessms2.html" title="Vedi esempio">Vedi esempio</a>;

 

Codice ASP

Qui sotto vediamo il codice ASP necessario per spedire l'SMS:

<!-- ####### INIZIO FILE "script_ASP_invio.asp" ####### //-->

  <%
'Esempio di script ASP per inviare messaggi sms

'utilizzando XMLHTTP
'Prima si crea l'oggetto XMLHTTP'

  Dim xml, objXMLHTTP

  Dim rcpt, messaggio, mittente, SMSarray

  Dim SMSuser, SMSpass, ritorno
SMSuser = Request.Form("user")

  SMSpass = Request.Form("pass")

  SMSarray = false
'Si catturano i valori inviati tramite POST dal form
mittente = Request.Form("sender")

  messaggio = Request.Form("data")

  rcpt = Request.Form("rcpt")

  qty = Request.Form("qty")

  if instr(rcpt," ,") then

  rcptarr= split(rcpt," ,")

  SMSarray = true

  end if
'Si preparano i dati e viene eseguita la post al server

  'La funzione Server.URLEncode serve a passare i parametri in modo corretto

  'Le coppie parametro/valore sono inoltre separati da una '&'

  if SMSarray = true then

  for i = LBound(rcptarr) to UBound(rcptarr)
strPostData = "user=" & Server.URLEncode(SMSuser) & _

  "&pass=" & Server.URLEncode(SMSpass) & _

  "&rcpt=" & Server.URLEncode(rcpt) & _

  "&data=" & Server.URLEncode(messaggio) & _

  "&qty=" & Server.URLEncode(qty) & _

  "&sender=" & Server.URLEncode(mittente)

  Set xml = Server.CreateObject("Microsoft.XMLHTTP")
xml.Open "POST" , "http://sms.pubblicitalocale.net/sms/batch.php" , False

  xml.setRequestHeader "Content-Type" , "application/x-www-form-urlencoded"

  xml.Send strPostData

  ritorno = xml.responseText

  Response.Write "Invio a " & rcpt & " <font color=""red"">" & ritorno & _

  "</font>" & "<BR>"
Set xml = Nothing

  next

  else

  strPostData = "user=" & Server.URLEncode(SMSuser) & _

  "&pass=" & Server.URLEncode(SMSpass) & _

  "&rcpt=" & Server.URLEncode(rcpt) & _

  "&data=" & Server.URLEncode(messaggio) & _

  "&qty=" & Server.URLEncode(qty) & _

  "&sender=" & Server.URLEncode(mittente)

  Set xml = Server.CreateObject("Microsoft.XMLHTTP")
xml.Open "POST" , "http://sms.pubblicitalocale.net/sms/send.php" , False

  xml.setRequestHeader "Content-Type" , "application/x-www-form-urlencoded"

  xml.Send strPostData

  ritorno = xml.responseText

  Response.Write "<font color=""red"">" & ritorno & "</font>" & "<BR>"
Set xml = Nothing

  end if

  'Stampa in colore rosso il risultato, se tutto è andato bene ritornerà una pagina con

  'OK',

  'in caso di errore 'KO'
'debug

  Response.Write "<br><br><hr><table border=1 cellspacing=0 cellpadding=0>"

  for each item in Request.Form

  Response.Write "<tr><td>" & item & "</td><td>" & Request.Form(item) & "</td></tr>"

  next

  Response.Write "</table><hr>"

  Response.Write Server.HTMLEncode(strPostData)

  '/debug
%> 

  <!-- ####### FINE FILE "script_ASP_invio.asp" ####### //-->

 

<a href="iframe_businessms4.html" title="Vedi esempio">Vedi esempio</a>;



Ti potrebbe interessare anche

commenta la notizia

C'è 1 commento
Francesco
Hai dubbi su questo articolo?