SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
Documentazione tecnica                                          Aggiornato al 12/10/2010



                        www.netfunitalia.it - www.smsplan.com - www.smsviainternet.it
Tutti i diritti riservati. Nessuna parte del presente documento può essere riprodotto in qualsiasi forma senza l'autorizzazione scritta del titolare del
copyright. Il contenuto di questo documento sono soggette a revisione senza preavviso a causa di continui progressi nella metodologia, progettazione
e sviluppo. NetFun Italia non avrà alcuna responsabilità per eventuali errori o danni di qualsiasi natura derivanti dall'utilizzo di questo documento.

NetFun Italia permette ai clienti di inviare SMS via web. Per poter utilizzare il servizio è necessario collegarsi ad
Internet con una buona connessione. La soluzione per spedire i messaggi può essere tarata sulle specifiche esigenze
del cliente. Si offrono infatti sei possibilità per spedire i propri messaggi:
I sei metodi sono complementari. E’ infatti possibile, con un solo account, usufruire di tutti e sei i metodi.


                                                                     Come spedire
     Protocollo                                                   Descrizione                                             Difficoltà         Paragrafo
 HTTP/POST                         Metodo POST                                                                     Programmatore (medio)        1.1
 SMTP                              Invio sms attraverso e-mail                                                     Programmatore (facile)       1.2
 UCP                               Protocollo SMSC-EMI                                                             Programmatore (esperto)      1.3
 SOAP                              Protocollo per lo scambio di messaggi con standard HTTP                         Programmatore (esperto)      1.4
 MYSMS                             Software per l’invio massivo di sms in pochi secondi                            facile                       1.5
 SMSviaINTERNET                    Pannello di controllo per utenti poco esperti                                   facile                       1.6


                                                               Altri comandi
                                                                           Descrizione                                                       Paragrafo
 Ricezione sms                     Come ricevere gli sms da una SIM o da un SMSC                                                                2.1
 Ricezione della notifica          Come gestire il Delivery Notification o ricevuta di ritorno del messaggio inviato                            2.2
 Wap Push                          Come spedire immagini, video, suoni attraverso gli sms                                                       2.3
 SMS concatenati                   Come inviare sms con più di 160 caratteri                                                                    2.4
 Sms in differita                  Come impostare una data e un ora di spedizione                                                               2.5
 Simulazione di invio              Come simulare un invio senza far scalare il proprio credito                                                  2.6
 Unicode                           Come inviare caratteri speciali in tutto il mondo                                                            2.7
 Loghi, suonerie e Flash           Come spedire i vecchi e ormai poco usati “loghi e suonerie ed sms Flash”                                     2.8
 HLR                               Come inviare e ricevere gli HLR per avere informazioni sui numeri di cellulare                               2.9




                                                                             Codici
                                                                                  Descrizione                                                Paragrafo
 Codici di errore via POST                  Elenco dei codici di errore che restituisce la piattaforma dopo un invio                            3.1
 Codici di notifica Reason Code             Elenco dei codici di notifica restituiti dagli operatori mobili                                     3.2


                                                                    Rivenditore SMS
                                                                                        Descrizione                                          Paragrafo
  Pannello Rivenditore                                      Cosa può fare un rivenditore di sms                                                 4.1
  Ricarica credito cliente tramite POST                     Come ricaricare i subaccounts tramite comandi HTTP/POST                             4.2




                                                                                                                                                           1
                              Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
1.1) HTTP/POST

Per inviare SMS via Post basta avare un account principale (occorre essere registrati sul sito
www.netfunitalia.it) e con le credenziali scelte al momento della registrazione, spedire una richiesta HTTP
POST ad uno dei seguenti indirizzi a scelta, tali pagine confermeranno in modo istantaneo l’esito della
transazione dei dati sulla piattaforma NetFun.

                                URL                                         Spedizione                     Con quale account è possibile spedire
 A      http://213.140.1.123/PostNetfun.asp                            in chiaro                       Account principale
 B      https://sms.netfunitalia.it/PostNetFun.asp                     SSL (criptata)                  Account principale
 C      https://sms.netfunitalia.it/PostNetFunID.asp                   SSL (criptata) + IDT*           Account principale
 D      http://62.48.53.75/post/send.php                               in chiaro                       Account principale –se spedisci su pannello
                                                                                                       www.smsviainternet.it
 E      http://62.48.53.75/post/nomeReseller/send.php                  in chiaro                       Subaccount /cliente del rivenditore
*Cos’è l’IDT? Vedi paragrafo n. 2.2


                                                    Variabili da utilizzare per l’invio via POST
        Parametro              Lunghezza massima                                                  Descrizione
 smsUSER                       16                              Username
 smsPASSWORD                   8                               Password
 smsSENDER                     16                              Mittente (max 11 cifre per mittente numerico – Max 16 per alfanumerico)
 smsTEXT                       160                             Testo massimo 160 caratteri o maggiore in caso di sms concatenati
 smsNUMBER                     16                              numero telefonico dell'utenza di destinazione in formato
                                                               internazionale,+393291234567
 smsGATEWAY                    2                               Rotta di destinazione (0,1,4,7,8) Gateway di Default=0
 smsTYPE                       5                               Tipologia di messaggio**



                                                        **Tipologia di messaggio smsTYPE
  Parametro                                                                         Descrizione
 file.sms         per   spedire       SMS standard di testo
 file.udh         per   spedire       gli sms concatenati
 file.uni         per   spedire       SMS di testo con UNICODE
 file.flh         per   spedire       SMS FLASH di testo
 file.nol         per   spedire       loghi operatore in formato NOL
 file.bmp         per   spedire       loghi operatore o screen saver *** in formato BMP
 file.gif         per   spedire       loghi operatore o screen saver *** in formato GIF
 file.jpg         per   spedire       loghi operatore o screen saver *** in formato JPG
 file.jpeg        per   spedire       loghi operatore o screen saver *** in formato JPEG
 file.rtttl       per   spedire       suonerie in formato RTTTL
 file.mid         per   spedire       suonerie in formato MID
 file.midi        per   spedire       suonerie in formato MIDI
 file.pic         per   spedire       picture messages e screen savers direttamente come HEXDUMP
 file.picm        per   spedire       picture messages come GIF,JPG,BMP
*** gli screen saver sono GIF,JPG,BMP di dimensioni pari a 72 x 28 pixels
    gli standard logo sono GIF,JPG,BMP di 72 x 14 pixels



Attenzione!! max destinatari per chiamata HTTP POST = 50 ma si consiglia di inviarne 1 per volta.

    • ESEMPIO GET:
come spedire il POST di un sms standard con netFun Italia con GATEWAY 1
http://213.140.1.123/PostNetfun.asp?smsUSER=USER&smsPASSWORD=PASSWORD&smsSENDER=mitte
nte&smsTEXT=ciao%20come%20stai&smsGATEWAY=1&smsNUMBER=+39348xxxxxxx

Risposta da PostNetfun.asp
+ok 1000
                                                                                                                                                     2
                              Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
Ovvero: +ok indica che i dati trasmessi sono corretti e 1000 indica che il proprio credito è di 1000
millesimi (1 euro)

   •   ESEMPIO DI SPEDIZIONE POST:

<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Metodo POST smsviainternet test</title>
</head>

<body>

<form method="post" action="http://213.140.1.123/PostNetfun.asp" enctype="multipart/form-data"
accept-charset="UTF-8">
 <p>&nbsp;</p>
<P>smsNUMBER
   <input name="smsNUMBER" size="16" value="+39" maxLength=16>
 </P>
 <p>smsTEXT
   <input name="smsTEXT" size="39" value="Test message" style="WIDTH: 276px; HEIGHT: 159px"
maxLength=1024>
 </p>
 <p>smsUSER
   <INPUT style="LEFT: 9px; TOP: 139px"
maxLength=16 size=16 value=login name=smsUSER>
 </p>
<P>smsPASSWORD
   <INPUT name=smsPASSWORD type="password" value=login maxLength=8>
 </P>
<P>smsSENDER
   <INPUT maxLength=20 size=15 value=www.xx.it name=smsSENDER style="WIDTH: 167px; HEIGHT:
22px">
 </P>
<P>smsType <INPUT style="WIDTH: 167px; HEIGHT: 22px" maxLength=20 size=15
value=file.sms name=smsTYPE></P>
<P>smsGATEWAY
   <INPUT style="WIDTH: 167px; HEIGHT: 22px" maxLength=20 size=15 name=smsGATEWAY>
 </P>
<P>
   <input type="submit" value="Send" name="B1" style="LEFT: 164px; TOP: 181px">
   <input type="reset" value="Reset" name="B2">
 </P>
</form>

</body>

</html>




                                                                                                                                 3
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
Per chi intende utilizzare la spedizione via POST verso il pannello www.smsviainternet.it

                              URL                                    Spedizione                   Con quale account è possibile spedire
 D     http://62.48.53.75/post/send.php                              in chiaro           Account principale
 E     http://62.48.53.75/post/nomeReseller/send.php *               in chiaro           Subaccount /cliente del rivenditore
*nomeReselles = Username del rivenditore
                                                                    Ecco le variabili:

smsUSER username di accesso
smsPASSWORD oppure smsPSW password di accesso
smsDATE oppure smsSENDTO data di invio, vedi dettagli per formato
smsSENDER mittente personalizzato
smsTEXT Testo del messaggio
smsNUMBER destinatario singolo
smsNUMBERS destinatari multipli, sostituisce smsNUMBER
smsGATEWAY Gateway di invio, default 0
smsRESPONSE-HTML Se impostato a 1 la risposta del server sarà
in formato HTML

In dettaglio, per inviare un SMS ad un solo destinatario, bisogna specificare il numero in
smsNUMBER, esempio:
+393331234567
in tal caso si avrà nella risposta anche l'IDT necessario per il delivery
per inviare invece un SMS a più destinatari specificare i numeri nella variabile smsNUMBERS
(che prende posto quindi di smsNUMBER la quale viene ignorata) separando i numeri da una
virgola, esempio:
+393331234567,+332221234567,+223336543217
I numeri possono essere specificati in formato internazionale (consigliato) quindi facendo seguire il
prefisso della nazione (esempio +39 per l'Italia) dal numero; oppure inserire il numero senza prefisso, in
tal caso verrà adottato il prefisso di default (+39)
La risposta del server, sarà in formato HTML se viene settata e impostata a valore 1 (uno) la
variabile smsRESPONSE-HTML

La codifica che dev’essere utilizzata nella trasmissione dei dati è UTF-8
In caso si utilizzi un form per la spedizione dei dati tramite POST occorre specificare il charset (in rosso)
<form action="http://62.48.53.75/post/send.php" method="post" enctype="multipart/form-data"
accept-charset="UTF-8">
xxx
xxx
</form>

Se invece vengono inviati tramite php o altri linguaggi (usando CURL o socket) bisogna impostare la
giusta codifica.
esempio di invio dati tramite php e socket
richiede la presenza del modulo mb (multibyte di php) - funzioni mb_
In questo esempio si parte dal presupposto che la codifica interna sia ISO-8859-15 (standard italiano)
encodeURL è una funzione, non inclusa in questo esempio, che trasforma i caratteri speciali nel formato
corretto, esempio: € in %80..etc..

//Ovviamente i controlli sono stati omessi
$queryString = array();
foreach($_POST AS $key => $value)
    $queryString[] = $key . '=' . encodeURL(mb_convert_encoding($value, 'UTF-8', 'ISO-8859-
15')); //converto in UTF-8

$queryString = implode('&', $queryString);

$fp = fsockopen(HOST, PORT, $errNo, $errStr, 30);
//Vanno fatti i dovuti controlli
                                                                                                                                          4
                            Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
fputs($fp,   "POST /send/post.php HTTP/1.0rn");
fputs($fp,   "Host: " . HOST . "rn");
fputs($fp,   "User-Agent: PHP/" . phpversion() . "rn");
fputs($fp,   "Content-Type:application/x-www-form-urlencoded; charset=UTF-8rn");
fputs($fp,   "Content-Length: ".strlen($queryString)."rn");
fputs($fp,   "Accept-Language: itrn");
fputs($fp,   "Cache-Control: no-cachern");
fputs($fp,   "Connection: closern");
fputs($fp,   "rn" . $queryString);




1.2) SMTP - Invio tramite e-mail

Ci sono 2 modalità di spedizione
    1. invio di e-mail con allegato le credenziali criptate
    2. invio di e-mail senza allegato

                               1) invio di e-mail con allegato le credenziali criptate

utenti netfun - email alla quale inviare i dati: smtp@smsviainternet.it
utenti subaccount – email alla quale inviare i dati: (deciso dal rivenditore dal suo pannello)

-ALLEGATO
Ogni account o subaccount deve allegare all’e-mail delle credenziali criptate (2010-09-
07.username.credentials.sms)
Il file può essere scaricato dal pannello www.smsviainternet.it nel servizio “E-MAIL verso SMS” se si sta
utilizzando un account principale,
mentre i subaccounts devono scaricarlo nel servizio “E-MAIL verso SMS” del pannello creato per il
rivenditore.

-L'oggetto corrisponde alla username
Nel corpo del messaggio ci saranno sia il testo dell'sms, sia i numeri dei destinatari.
Esempio:
per spedire il testo ciao al numero +393301231231
si scriverà:

<<Ciao [+393301231231]>>
(importante sono i simboli << e >> rispettivamente all'inizio e alla fine del testo e i simboli Radice
quadrata ([ e ]) che definiscono i numeri di cellulare.
Per spedire il testo ciao ai 2 numeri +393301231231 e +393481234567 si scriverà:
<<Ciao [+393301231231,+393481234567]>>
(importante è la virgola tra un numero ed un altro). Il numero deve essere in formato internazionale, in
caso contrario verra' aggiunto il prefisso italiano (+39)

-Altri parametri
Mittente e Gateway
Il mittente va indicato tra 2 parentesi quadre di apertura e chiusura (non più di 16 cifre se numerico, e
non più di 11 caratteri se alfanumerico)
Il Gateway va indicato tra 2 parentesi tonde di apertura e di chiusura
Esempio:
<<Ciao, sono lieto di invitarti alla mia festa [[compleanno]] [+393481234567,+393359876543] ((6))>>
in assenza della variabile [[mittente]], il mittente del messaggio sarà il nome dello User
in assenza della variabile ((numero gateway)), i messaggi passeranno per il gateway di
default “0”
e possibile anche impostare in una sola e-mail più di un testo come nell'esempio riportato
di seguito:
<<questo è il testo del primo messaggio[[mittente]]
                                                                                                                                   5
                       Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
[+393480123456,+393389876543,+393207878787] ((6))
7|||
Questo invece è il testo del secondo messaggio[[mittente]][+393926565656,+393804646464]
((1))
|||Q uesto invece è il testo del terzo messaggio[[mittente]][+393480123456] ((6))
>>
Come si può ben notare i simboli << e >> si trovano solo all'inizio e alla fine,
in più i messaggi devono essere intervallati tra loro con i seguenti simboli: ||| (3 pipe in fila)


NON HA IMPORTANZA L'ORDINE E LA DISPOSIZIONE DELLE VARIABILI




                                                      2) invio di e-mail senza allegato

La procedura corretta per spedire sms singoli o sms multipli è la seguente:
le e-mail dovranno essere spedite sempre e solo dall’indirizzo inserito nella registrazione al sito
www.netfunitalia.it
inviare l’e-mail al seguente indirizzo: smtp@smsplan.com
l'oggetto dovrà essere: il proprio Username
Nel corpo del messaggio ci saranno le stesse variabili descritte sopra


ulteriori informazioni sui gateway: http://www.netfunitalia.it/sms/gateway.html


1.3) UCP

E’ possibile spedire SMS tramite un sistema UCP utilizzando I seguenti parametri:

Ip = 213.140.1.123
User/LA = User name della vostra registrazione su NetFun Italia
Password = Password della vostra registrazione su NetFun Italia

Port   6000   =   gateway   automatico (gateway 0)
Port   6001   =   gateway   1 (connessione diretta)
Port   6004   =   gateway   4 (interconnessione x personalizzazione mittente Tim e Vodafone)
Port   6007   =   gateway   7 (x inviare i Wap-Push)
Port   6008   =   gateway   8 (HLR Lookup x conoscere l’operatore dell’utente)

Per inviare un messaggio basta utilizzare i seguenti comandi:

Comando UCP 60 = Log In
Comando UCP 51 = Inviare il messaggio
Comando UCP 13 = Segnale Keep Alive

Per visionare il Protocollo UCP (SMSC –EMI)
http://www.netfunitalia.it/downloads/SMSC_EMI_Specification.PDF


1.4) SOAP

E’ possibile spedire SMS tramite SOAP utilizzando il seguente file WSDL:
https://sms.netfunitalia.it/Services/soap/NetfunWSDL.zip

o visualizzarlo di seguito:

                                                                                                                                        6
                            Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
https://sms.netfunitalia.it/Services/soap/soap.asp?wsdl


DESCRIZIONE VARIABILI:
correlationId = numero identificativo del messaggio
originatingAddress = mittente
originatorTON = (1 se mittente alfanumerico) - (0 se mittente numerico)
destinationAddress = destinatario messaggio
userData = testo messaggio
userDataHeader = UDH per concatenamenti messaggi
DCS = Data coding scheme valore forzato a 17
username = User della registrazione
password = Password della registrazione



ESEMPI:
di seguito il file di esempio Netfun.vb zippatp
http://www.netfunitalia.it//downloads/Esempio_SOAP_VB.zip

Dopo avere incluso in un progetto .NET il Netfun.vb

Dim MyClientSoap As New Netfun.Soap.SmsApiNetfun
Dim MyDatiSoap As New Netfun.Soap.SendRequest
Dim MyRispostaSoap As Netfun.Soap.SendResponse
MyDatiSoap.userDataHeader = "#NULL#"
MyDatiSoap.originatorTON = "1"
MyDatiSoap.originatingAddress = "MiaAzienda"
MyDatiSoap.destinationAddress = "+393341234567"
MyDatiSoap.correlationId = "mio_id_messaggio"
MyDatiSoap.userData = "Test messaggio"
MyDatiSoap.username = User della registrazione
MyDatiSoap.password = Password della registrazione
MyDatiSoap.DCS = 17
MyRispostaSoap = MyClientSoap.send(MyDatiSoap)
If Not MyRispostaSoap Is Nothing Then
   MsgBox(MyRispostaSoap.responseMessage)
Else
   MsgBox("Nessuna risposta")
End If


Esempio di invio in XML

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://www.netfunitalia.it/api/services/SmsApi2010">
 <soap:Body>
  <tns:SendRequest>
   <tns:correlationId>123</tns:correlationId>
   <tns:originatingAddress>Test</tns:originatingAddress>
   <tns:originatorTON>1</tns:originatorTON>
   <tns:destinationAddress>+393331234567</tns:destinationAddress>
   <tns:userData>Sms di Test</tns:userData>
   <tns:userDataHeader>#NULL#</tns:userDataHeader>
   <tns:DCS>17</tns:DCS>
   <tns:username> User della registrazione </tns:username>

                                                                                                                                 7
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
<tns:password> Password della registrazione </tns:password>
  </tns:SendRequest>
</soap:Body>
</soap:Envelope>


1.5) MYSMS

Il MySMS è un software sviluppato in Visual Basic da NetFun Italia e sfrutta il protocollo TCP/IP
Facilissimo da utilizzare e adatto ai meno esperti
Permette di avere una velocità di spedizione tra le più elevate nel mondo. Circa 100 sms al secondo.
Il software richiede una installazione in ambiente Windows
Di seguito un tutorial sul suo funzionamento: http://www.netfunitalia.it/MySMS/HELP.HTM

    • Informazione per i più esperti:
Il MySMS può essere utilizzato dai programmatori come motore di spedizione da tenere nel System Try del
proprio Windows Server.
Il programmatore non dovrà fare altro che creare nella cartella INBOX i file .sms che il motore divorerà in
un instante, il motore MySMS penserà poi alla connessione e alla trasmissione dei dati.

                                       Come lavora il programma
MySMS cerca periodicamente nella directory “Inbox” i file con estensione .sms .gif .bmp .jpg .jpeg .nol
.lnol .rtttl .midi .mid .flh .uni
Se ne vengono trovati, il programma li spedisce immediatamente via Internet.
In caso di errore (nome o contenuto del messaggio errato) il file viene rinominato come .err e viene
spostato nella directory locale “Outbox”.

                          Come scrivere file .sms tramite un programma
Per creare un programma che scriva file .sms e li metta nella cartella Inbox, puoi utilizzare il linguaggio di
programmazione preferito.

 e.s. in Visual Basic:
  Open Inbox & FILENAME & ".txt" For Output As #out
  Print #out, SMSText
  Close #out
   '###Rinomina il file
  Dim FS, f
  Set FS = CreateObject("Scripting.FileSystemObject")
  Set f = FS.GetFile(Inbox & FILENAME & ".txt")
  If Not FS.FileExists(Inbox & "D" & SMSNumber & "_O" & SMSSender & "_G" &
     SMSGateway & "_" & FILENAME & ".sms") Then
             f.Name = "D" & SMSNumber & "_O" & SMSSender & "_G" & SMSGateway & "_"                                                &
FILENAME & ".sms"
  End If

Il file è creato in formato .txt, successivamente viene rinominato.
Questo procedimento è necessario poichè il lasso di tempo per la trasmissione di un SMS tramite MySMS è
così corto che il file .sms sarebbe inviato prima ancora che ne sia finita la scrittura da parte del
programma.

                              Come scrivere file .sms tramite un web form
Per creare un web form che scriva file .sms e li metta nella cartella Inbox, puoi utilizzare un asp.
Copiare l’esempio riportato come myform.asp, impostare la variabile MySMSInPath per definire il percorso
della cartella “smsin”
 e.s. in Visual Basic Script:

<%@ LANGUAGE=VBScript %>

<%
                                                                                                                                      8
                      Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
‘QUESTA FUNZIONE QUANDO RICHIAMATA CREA IL FILE *.SMS NELLA TUA DIRECTORY SMS IN-FOLDER
Private Function MySMSFile(FILENAME1,SMSNUMBER1,SMSFROM1,SMSMSG1)
Dim MYFILE1,MySMSInPath,MyTitle

'ATTENZIONE LA DIRCTORY "C:smsin" NECESSITA DEI PERMESSI PER L’UTENTE EVERYONE
‘OPPURE PUO’ ESSERE UNA VIRTUAL DIRECTORY DEL TUO SITO
MySMSInPath = "C:smsin" 'PERCORSO PER SMS IN-FOLDER
MyTitle = "by www.smsplan.com" 'MESSAGGIO PROMOZIONALE FACOLTATIVO
MYFILE1 = MySMSInPath & FILENAME1
    'CREATE FILE *.sms
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Aa = fso.CreateTextFile(MYFILE1,True)
            Aa.WriteLine(SMSNUMBER1)
            Aa.WriteLine(SMSFROM1)
            Aa.WriteLine(MyTitle)
            Aa.WriteLine(SMSMSG1)
    Aa.close
    Set Aa = nothing
    set fso = nothing
    MySMSFile = "OK"
End Function

Dim FILENAME,SMSNUMBER,SMSFROM,SMSMSG
Dim ERROR_MSG,GATEWAY

'LEGGO LE VARIABILI PASSATEMI DAL FORM
SMSNUMBER = Request.Form("PHONENUMBER")
SMSFROM = Request.Form("MSGFROM")
SMSMSG = Request.Form("SMSTEXT")
GATEWAY = ""
ERROR_MSG = ""

'CONTROLLO IL NUMERO DEL CELLULARE: IMPLEMENTA LE CONDIZIONI IF CON I TUOI PARAMETRI
SPCIFICI SE NECESSARIO
'ESISTE IL NUMERO?
If SMSNUMBER <> "" Then
    ERROR_MSG = "Please insert the mobile number!"

    'E’ ABBASTANZA LUNGO IL NUMERO PER ESSERE CONSIDERTO VALIDO?
  If Len(SMSNUMBER) >= 10 Then
           ERROR_MSG = "The mobile number is too short!"

            'IL NUMERO E’ SENZA SPAZI?
            If InStr(1, SMSNUMBER, " ") <= 0 Then
                    ERROR_MSG = "The mobile number must be without spaces!"

                 'CONTIENE SOLO NUMERI?
        If IsNumeric(SMSNUMBER) = True Then
                        ERROR_MSG = "Insert a number in the mobile number field!"

                         'IL FORMATO INTERNAZIONALE E’ VALIDO?
            If Left(SMSNUMBER, 2) = "00" Then
                                ERROR_MSG = "Not a valid international format! Number does not begin
with 00."
                           else

    '#############################################################
                      'IMPLEMENTA LE CONDIZIONI IF A TE NECESSARIE
                      'QUESTA CONDIZIONE SPEDISCE SOLO IN ITALIA

                                                                                                                                 9
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
If (Left(SMSNUMBER, 6) <> "+39") Then
                                            ERROR_MSG = ""
                                    else

    '#############################################################
                                'IMPLEMENTA LE CONDIZIONI IF A TE NECESSARIE
                                End If
                         End If
                  End IF
           End If
    End If
End If

‘CONTROLLO IL TESTO DEL MESSAGGIO SMS
If Trim(SMSMSG) = "" then
     ERROR_MSG = "You must digit an SMS message!"

    'NESSUN MESSAGGIO NESSUN MITTENTE NEANCHE IL NUMERO = STA APRENDO IL FORM PER LA
PRIMA VOLTA TUTTEL LE VARIABILI SONO
    if Trim(SMSFROM) = "" And Trim(SMSNUMBER) = "" then
            ERROR_MSG = "NO" ‘SETTO LA VARIABILE CON NO PER INDICARE CHE HA APERTO IL FORM E
NON STA SPEDENDO
    end if
End If

'’CONTROLLO CHE NON CI SIANO MESSAGGI DI ERRORE EPROSEGUO NELLA CREAZIONE DEL FILE
If ERROR_MSG = "" Then
     Randomize
     FILENAME=Int((999 * Rnd) + 1)
     FILENAME = FILENAME & Right(SMSNUMBER,5)
'G1_ o G2_ o G3_ o G4_ o G5_ o G6 PER FORZARE IL GATEWAY. G0_ PER USARE GATEWAY
AUTOMATICO
     GATEWAY = "G1_"
     FILENAME = GATEWAY & FILENAME & "sms.sms"
     SMSNUMBER = "+" & SMSNUMBER
     'RICHIAMO LA FUZIONE PER CREARE I FILE E PASSO LE VARIABILI
     FILENAME = MySMSFile(FILENAME,SMSNUMBER,SMSFROM,SMSMSG)
     If FILENAME = "OK" then
            'FILE CREATO CORRETTAMENTE
            ERROR_MSG = "SMS sended!"
     Else
            'ERRORE NEL CREARE IL FILE
            ERROR_MSG = FILENAME'"Critical error! Please contact the webmaster"
     End if
End If

‘STO SOLO APRENDO IL FORM E NON SPEDENDO SETTAGGIO SENZA MESSAGGI PER IL POPUP
If ERROR_MSG = "NO" Then
     ERROR_MSG = ""
End If

%>
<html>

<head>
<meta http-equiv="Content-Language" content="it">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

                                                                                                                               10
                   Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
<title>NetFunItalia Example FORM</title>
<%
'SE NON CI SONO MESSAGGI ELIMINO IL JS PER IL POPUP
If ERROR_MSG <> "" Then
%>
<script language="JavaScript">
<!--
function MM_popupMsg(msg) { //v1.0
  alert(msg);
}
//-->
</script>
<%
End If
%>
</head>

<body bgcolor="#FFFFFF"
<%
'SE NON CI SONO MESSAGGI ELIMINO L’EVENTO PER IL POPUP
If ERROR_MSG <> "" Then
%>
 onLoad="MM_popupMsg('<% =ERROR_MSG %>')"
<%
End If
%>>

<p>NetFun Italia Example FORM</p>
<p>File Name myform.asp</p>
<p>Use these asp combined with a MySMS SW</p>
<!--webbot BOT="GeneratedScript" PREVIEW=" "                                     startspan          --><script           Language="JavaScript"
Type="text/javascript"><!--
function FrontPage_Form1_Validator(theForm)
{

 if (theForm.PHONENUMBER.value == "")
 {
   alert("Please enter a value for the "Mobile Phone Number" field.");
   theForm.PHONENUMBER.focus();
   return (false);
 }

 if (theForm.PHONENUMBER.value.length < 10)
 {
   alert("Please enter at least 10 characters in the "Mobile Phone Number" field.");
   theForm.PHONENUMBER.focus();
   return (false);
 }

 if (theForm.PHONENUMBER.value.length > 16)
 {
   alert("Please enter at most 16 characters in the "Mobile Phone Number" field.");
   theForm.PHONENUMBER.focus();
   return (false);
 }

 var checkOK = "0123456789-.";
 var checkStr = theForm.PHONENUMBER.value;
 var allValid = true;

                                                                                                                                            11
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
var validGroups = true;
 var decPoints = 0;
 var allNum = "";
 for (i = 0; i < checkStr.length; i++)
 {
   ch = checkStr.charAt(i);
   for (j = 0; j < checkOK.length; j++)
     if (ch == checkOK.charAt(j))
       break;
   if (j == checkOK.length)
   {
     allValid = false;
     break;
   }
   if (ch != ".")
     allNum += ch;
 }
 if (!allValid)
 {
   alert("Please enter only digit characters in the "Mobile Phone Number" field.");
   theForm.PHONENUMBER.focus();
   return (false);
 }

 if (theForm.MSGFROM.value.length > 16)
 {
   alert("Please enter at most 16 characters in the "From" field.");
   theForm.MSGFROM.focus();
   return (false);
 }

 var                                                 checkOK                       =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ
ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-";
 var checkStr = theForm.MSGFROM.value;
 var allValid = true;
 var validGroups = true;
 for (i = 0; i < checkStr.length; i++)
 {
   ch = checkStr.charAt(i);
   for (j = 0; j < checkOK.length; j++)
     if (ch == checkOK.charAt(j))
       break;
   if (j == checkOK.length)
   {
     allValid = false;
     break;
   }
 }
 if (!allValid)
 {
   alert("Please enter only letter and digit characters in the "From" field.");
   theForm.MSGFROM.focus();
   return (false);
 }

 if (theForm.SMSTEXT.value == "")
 {
   alert("Please enter a value for the "Message Text" field.");

                                                                                                                                 12
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
theForm.SMSTEXT.focus();
     return (false);
 }

 if (theForm.SMSTEXT.value.length < 1)
 {
   alert("Please enter at least 1 characters in the "Message Text" field.");
   theForm.SMSTEXT.focus();
   return (false);
 }

 if (theForm.SMSTEXT.value.length > 160)
 {
   alert("Please enter at most 160 characters in the "Message Text" field.");
   theForm.SMSTEXT.focus();
   return (false);
 }

  var                                              checkOK                                            =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ
ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-@£$¥èéùìòÇØøÅå_ÆæßÉ!"#%&'()*+,-
./¡ÄÖÑܧ¿äöñüà;:<=>? trnf";
  var checkStr = theForm.SMSTEXT.value;
  var allValid = true;
  var validGroups = true;
  for (i = 0; i < checkStr.length; i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Please enter only letter, digit, whitespace and "@£$¥èéùìòÇØøÅå_ÆæßÉ!"#%&'()*+,-
./¡ÄÖÑܧ¿äöñüà;:<=>?" characters in the "Message Text" field.");
    theForm.SMSTEXT.focus();
    return (false);
  }
  return (true);
}
//--></script><!--webbot         BOT="GeneratedScript"       endspan      --><form       method="POST"
action="myform.asp"        onsubmit="return    FrontPage_Form1_Validator(this)"   language="JavaScript"
name="FrontPage_Form1">
    <p align="center"><br>
    <br>
    <br>
&nbsp;</p>
    <table       border="1"    cellpadding="0"    cellspacing="0"    style="border-collapse:   collapse"
bordercolor="#111111" width="100%" id="AutoNumber1">
        <tr>
           <td width="33%">
           <p align="right">Phone Number:</td>
           <td width="33%">

                                                                                                                                 13
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
<p align="center">+<!--webbot bot="Validation" s-display-name="Mobile Phone Number" s-
data-type="Integer" s-number-separators="." b-value-required="TRUE" i-minimum-length="10" i-
maximum-length="16" --><input type="text" name="PHONENUMBER" size="20" tabindex="0"
maxlength="16">&nbsp;&nbsp;
        </td>
        <td width="34%">eg. +4410555***</td>
      </tr>
      <tr>
        <td width="33%">
        <p align="right">From:</td>
        <td width="33%">
        <p align="center">
        <!--webbot     bot="Validation"     s-display-name="From"       s-data-type="String"    b-allow-
letters="TRUE" b-allow-digits="TRUE" i-maximum-length="16" --><input type="text" name="MSGFROM"
size="20" tabindex="1" maxlength="16"></td>
        <td width="34%">&nbsp;</td>
      </tr>
      <tr>
        <td width="33%">
        <p align="right">Message Text:</td>
        <td width="33%">
        <p align="center">
        <!--webbot bot="Validation" s-display-name="Message Text" s-data-type="String" b-allow-
letters="TRUE"          b-allow-digits="TRUE"          b-allow-whitespace="TRUE"          s-allow-other-
chars="@£$¥èéùìòÇØøÅå_ÆæßÉ!&quot;#%&amp;'()*+,-./¡ÄÖÑܧ¿äöñüà;:&lt;=&gt;?"                      b-value-
required="TRUE"      i-minimum-length="1"       i-maximum-length="160"        --><textarea     rows="4"
name="SMSTEXT" cols="40" tabindex="2"></textarea></td>
        <td width="34%">&nbsp;</td>
      </tr>
      <tr>
        <td width="33%">&nbsp;</td>
        <td width="33%">
        <p align="center">
        <input type="submit" value="Send" name="SEND" tabindex="3"></td>
        <td width="34%">&nbsp;</td>
      </tr>
      <tr>
        <td width="33%">&nbsp;</td>
        <td width="33%">&nbsp;</td>
        <td width="34%">&nbsp;</td>
      </tr>
      <tr>
        <td width="33%">&nbsp;</td>
        <td width="33%">
        <p align="center">
        <input type="reset" value="Reset Form" name="RESET" tabindex="4"></td>
        <td width="34%">&nbsp;</td>
      </tr>
   </table>
   <p align="center">&nbsp;</p>
</form>

</body>
</html>




                                                                                                                                14
                    Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
1.6) SMSviaINTERNET

SMSviaINTERNET.it ideato e realizzato da NetFun Italia, è il pannello di controllo SMS più completo che sia
mai stato realizzato, ed è riservato ai propri clienti e rivenditori
In questa nuova area riservata sono disponibili numerosi servizi gratuiti




                                                     www.SMSviaINTERNET.it

                       Il Pannello è gratuito e personalizzabile per i nostri rivenditori.

2.1) Ricezione SMS

Per poter ricevere SMS dai propri clienti o da dispositivi automatici, occorre acquisire una numerazione.
Le numerazioni possono essere di due tipi: SIM e SMSC
I servizi di ricezione non supportano gli UDH (sms concatenati) e gli UNICODE

                                               Ricezione su SIM
Il servizio di ricezione sms e squilli su SIM può essere gestito in diversi modi:
1) via e-mail su vostro indirizzo
2) via http su nostra pagina (www.smsviainternet.it )
3) attraverso web-server (con vostro script su vostro sito)

per tutte le soluzioni inviamo i seguenti dati:
- testo del messaggio,
- mittente,
- data di ricezione
- ora di ricezione

Informazione per i Programmatori:
Il programmatore dovrà realizzare uno script che accetti i seguenti parametri:
OADC=Mittente
ADC=Destinatario (Sim Card)
BODY=Testo Messaggio (oppure RING se si tratta di uno squillo)
Date=20051218 (YYYYMMDD)
Time=1203 (HHMM)

Esempio GET:
http://www.vostrosito.com/vostroasp.asp?OADC=+393381212121&ADC=+393481234567&Body=Ciao&D
ate=20051218&Time=1203
Le numerazioni su SIM possono ricevere anche squilli, quest’ultimi vengono gestiti come normali sms e nel
body comparirà il testo: RING

                                             Ricezione su SMSC
NetFun Italia fornisce sia numeri SMSC dedicati, sia SMSC condivisi.
I numeri condivisi vengono così denominati perché la stessa numerazione viene utilizzata da più clienti, gli
sms vengono quindi dirottati al giusto cliente mediante keyword; queste parole chiavi vengono scelte dal
cliente, l’utente finale invierà quindi messaggi sms nel seguente modo:
*keyword* testo del messaggio



                                                                                                                                  15
                      Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
Esempio ricezione SMSC
cosa riceve il vostro script:

Esempio GET
http://www.vostrosito.com/vostroasp.asp?Phone=%2B393202043268&Msg=Ciao%20Test%20Ricezione&
TimeStamp=25-DEC2005%2012:30:00PM&Sender=%2B393491234567

Gli sms ricevuti potranno essere inoltrati su richiesta anche su vostro indirizzo e-mail
Le numerazioni SMSC possono ricevere anche sms binari


2.2) Ricezione della notifica

Il delivery Notification o ricevuta di ritorno è una notifica che invia gratuitamente l’operatore di telefonia
per segnalare l’esito della transazione degli sms.
L’operatore invia la notifica alla NetFun Italia, quest’ultima la rende disponibile sul pannello di controllo
sms del sito www.netfunitalia.it
Il cliente in qualunque momento può decidere di poter ricevere le notifiche anche via e-mail o su una
propria pagina web, e potrà farlo scegliendo una delle 2 procedure disponibili:

1) NetFun spedisce la notifica al cliente
2) Il cliente richiede la notifica a NetFun

                                           1) NetFun spedisce la notifica al cliente

In questa modalità il cliente decide di creare uno script che possa accettare le notifiche da NetFun Italia,
L’operatore telefonico invia la notifica a NetFun e quest’ultimo la invia al cliente.
In questa notifica, NetFun comunicherà 2 cose fondamentali:
    • ID-T (codice identificativo del messaggio)
    • Status del delivery con relativo Reason Code (significato della notifica)

Cos’è l’ID-T?
Il codice ID-T serve per dare un valore univoco al messaggio che il cliente ha spedito, è di conseguenza
importante che il cliente che intende ricevere questo codice abbia precedentemente conservato lo stesso
codice che NetFun ha provveduto a comunicare al momento del passaggio dell’sms dal cliente a NetFun

Spedizione SMS:
       Il cliente invia un sms a NetFun,                                                                           L’operatore
          e NetFun subito restituisce il                                                                            consegna
        codice ID-T di quel messaggio                                                                                 l’SMS




                     ID-T




                                                   NetFun gira il messaggio
                                                       in tempo reale
                                                        all’operatore

                                                                                                                                   16
                       Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
Restituzione della notifica:



        La SIM comunica all’operatore                                                      NetFun invia al cliente nuovamente l’ID-T
         di aver ricevuto il messaggio                                                     di quel messaggio + l’esito della notifica
                                                                                                    proveniente dalla SIM




                                        L’Operatore inoltra a NetFun la notifica
                                                proveniente dalla SIM




                                             Come richiedere l’ID-T a NetFun?

Se il cliente intende ricevere l’ID-T subito dopo aver inviato il messaggio, deve spedire tramite POST i dati
all’indirizzo: https://sms.netfunitalia.it/PostNetFunID.asp


                                    Come associare SMS spedito con la notifica

Per potere associare SMS con la sua relativa notifica prima di tutto bisogna abilitarsi alla ricezione del
servizio. Per abilitarsi occorre accedere nell’area riservata sul sito www.netfunitalia.it e alla voce “Delivery”
indicare la URL dove si intende ricevere la notifica.
Dal momento che si è abilitati alla ricezione della notifica bisogna salvare per ogni singolo SMS spedito il
relativo ID di transazione ( ID-T).
Quindi ID-T è uguale al valore di ritorno per ogni passaggio di dati tra il cliente e il sistema NETFUN.
La corrispondenza del numero di cellulare di destinazione e questo ID di transazione servirà in futuro per
sapere lo stato di NOTIFICA di quel SMS.
Da qui si deduce che ogni passaggio di dati deve corrispondere a un numero di cellulare univoco all’interno
del protocollo (nel caso di spedizione di più SMS con una singola transazione).
Ovviamente la ricezione di questo dato dipende dal metodo con cui si inviano gli SMS al sistema.
   Se si spedisce tramite il metodo POST la ricezione sarà uguale alla seguente:
+OK xxxxxx [<ID-T>]
Esempio: +OK 1000 [05043416234598765]


  Se si spedisce utilizzando il protocollo MySMS la ricezione del dato sarà come il seguente:
+OK 1 xxxxx [<ID-T>]
Esempio: +OK 1 1000 [05043416234512345]

La variabile ID-T viene quindi trasmessa tra parentesi quadre ed è lunga 17 caratteri numerici.

                                                                                                                                        17
                       Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
Attenzione che per motivi di espansione del sistema potrebbero aumentare,quindi utilizzare i numeri
ricevuti tra parentesi quadre.

  Se si spedisce utilizzando il protocollo UCP la variabile ID-T la si trova all’interno della risposta del
comando 51 nella forma 11/00045/R/51/A//<CELLULARE>:<ID-T>/AF
Esempio: 11/00045/R/51/A//00393281234567:05043416234512345/AF


                                              Ricezione della notifica via http POST

Per abilitarsi alla ricezione della notifica sms via POST è necessario creare nel proprio sistema uno script
che possa accettare delle variabili ben definite, compreso il valore ID-T ricevuto in fase di spedizione.
L’URL di questo script deve essere memorizzato nel proprio account,sarà compito del sistema NETFUN ad
ogni avvenuta notifica lanciare il relativo script che accetta le seguenti variabili tramite il metodo POST:
smsDATA=<ID-T>
smsDATADELIVERY=data ed ora di ricezione da parte dell’utente del messaggio,formato yymmddhhmmss
smsNUMBER=numero di cellulare da cui proviene la notifica,ovvero cellulare di destinazione del sms
smsuser=login di spedizione
smsDELIVERY=<stato delivery> S= ok sms consegnato N= Non consegnato
smsSender= mittente del messaggio spedito (opzionale)

                                                  Ricezione della notifica via SMTP

Per abilitarsi alla ricezione della notifica sms via SMTP è necessario indicare un indirizzo di e-mail valido
nell’area riservata sul sito www.netfunitalia.it
Questo indirizzo email deve essere memorizzato nel proprio account,sarà compito del sistema NETFUN ad
ogni avvenuta notifica spedire una E-MAIL con un OGGETTO (subject email) specifico,come il seguente:

Oggetto della E-Mail in caso di notifica
OGGETTO=”Delivered to <cellulare>                           Login:<user>              Sender:<mittente> Time:<dataora> SCTS:<ID-
T> Delivery Time:<dataoradelivery>”

Oggetto della E-Mail in caso di notifica negativa
OGGETTO=”Not delivered to <cellulare>                                      Login:<user>                 Sender:<mittente> Time:<dataora>
SCTS:<ID-T> Delivery Time:<dataoradelivery>”




                                               2) Il cliente richiede la notifica a NetFun

In questa modalità è il cliente che decide di richiedere le notifiche a NetFun attraverso una query
Per poter utilizzare questa funzione è obbligatorio inviare gli sms ai seguenti indirizzi:

                              URL                                    Spedizione                   Con quale account è possibile spedire
 D     http://62.48.53.75/post/send.php                              in chiaro           Account principale
 E     http://62.48.53.75/post/nomeReseller/send.php *               in chiaro           Subaccount /cliente del rivenditore
*nomeReselles = Username del rivenditore

                                         Richiesta dettagli delivery
L'utente può chiedere dettagli sullo stato del delivery direttamente tramite richiesta POST o GET.
L'indirizzo da richiamare per l'interrogazione è:
utenti netfun – http://62.48.53.75/detailsdelivery/request.php
utenti subaccount – http://62.48.53.75/detailsdelivery/nomeReseller/request.php
Variabili da passare tramite metodo POST o metodo GET (il sistema accetta entrambi, da preferire metodo
POST)
• smsUSER: Username di accesso al servizio SMS
• smsPASSWORD o smsPSW: Password di accesso al servizio SMS

                                                                                                                                          18
                            Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
• smsRECEIVER: E' possibile, indicando questa variabile, cercare per il numero del ricevente. E' possibile
specificare solo gli ultimi numeri, ad esempio per +393331234567 basta specificare 1234567
• smsSTATUS: E' possibile cercare solo i messaggi consegnati oppure no;
Valori accettati:
SI – OK – YES (per gli SMS consegnati)
KO – NO (per gli SMS non consegnati)
• smsDATE: E' possibile cercare per data, il formato corretto è YYYYMMDD,
dove:
YYYY - sta per anno a 4 cifre quindi ad esempio: 2009
MM - sta per mese a due cifre, per gennaio indicare 01
DD - sta per giorno a 2 cifre, per il 6 indicare quindi 06
Esempio per indicare il 7 febbraio 2009: 20090207
E possibile indicare un intervallo di date, separando i valori con un trattino (-)
esempio: 20080101-20081231 cerca gli SMS dal primo gennaio 2009 al 31 dicembre 2009.
• smsHOUR: E' possibile filtrare gli SMS in base all'ora.
Il formato corretto è Hhmm dove
HH - sta per ora in formato 24 a 2 cifre.
mm - sta per minuti in formato 2 cifre.
Per filtrare quindi i messaggi iniviati alle 4 del pomeriggio: 1600
E' possibile, come per smsDATE, indicare un intervallo, esempio:
1600-2130 (quindi dalle 16 alle 21:30)
• smsIDT: E' possibile anche cercare per uno specifico IDT. La ricerca è di
tipo LIKE %%, quindi basta indicare anche solo parte dell'IDT
• smsFORMAT: se a questa variabile viene impostato il valore =0 il separatore di righe corrisponderà a
CR+LF
Se invece il valore impostato sarà =1 allora il separatore sarà un PIPE |

Errori restituiti:
-Err 999: Error sconosciuto
-Err 888: Rivenditore non valido o non esistente
-Err 777: Nessuna variabile inviata
-Err 001: Login errato
Il sistema restituisce un file CSV con i valori separati dal simbolo | o da CR+LF
La prima riga (intestazione) indica i nomi dei campi, qui sotto riportati:
N|Date|GateWay|Number|Sender|DeliveryStatus|DeliveryDate
Dove:
N E' un numero progressivo
Date Indica la data di invio dell'SMS, formato YYYY-MM-DD HH-mm
Gateway Gateway utilizzato per l'invio
Number Destinatario dell'SMS
Sender Mittente personalizzato
DeliveryStatus Indica lo stato del delivery: W – Y – N (Attesa – Si – No)
DeliveryDate Indica la data di consegna dell'SMS




2.3) Wap Push

La tecnologia Wap-Push permette di inviare immagini, suoni e video sui cellulari abilitati attraverso un
semplice sms.
Il messaggio che l'utente riceverà è diverso dal classico sms, corrisponde ad un testo con una URL, il Wap
Push infatti inviterà l'utente a collegarsi attraverso la propria connessione (WAP-EDGE-GPRS-UMTS) per il
downloads del file

                                           Come spedire i Wap-Push :
Basta spedire attraverso il gateway 7
si possono utilizzare tutti i protocolli disponibili, anche il MySMS
nel testo va scritto l'URL + il TITOLO
                                                                                                                                  19
                      Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
esempio:
www.miosito.it/immagine.jpg caro cliente, ti invio la brochure per i prodotti che ti possono interessare

LIMITI:
- non si possono superare i 115 caratteri
- non sono ammesse nel TITOLO vocali accentate, solo caratteri e numeri.


2.4) SMS Concatenati

La lunghezza massima di un sms è di 160 caratteri, ma è possibile concatenare (unire) più messaggi e
ottenere un unico messaggio lungo anche migliaia di caratteri.
E’ possibile spedire sms lunghi e concatenare un numero massimo di 99 sms.
Ogni sms però ha un limite massimo di 153 caratteri (non 160) e bisogna porre attenzione al simbolo
dell’euro € che corrisponde a 2 caratteri.

Per inviare gli sms concatenati ci sono 2 soluzioni:

1) Spedire la variabile UDH
2) Non spedire la variabile UDH


                                       1) Spedire la variabile UDH
Questa modalità funziona solo se si spedisce verso i seguenti indirizzi:

                              URL                                      Spedizione                     Con quale account è possibile spedire
 A    http://213.140.1.123/PostNetfun.asp                         in chiaro                       Account principale
 B    https://sms.netfunitalia.it/PostNetFun.asp                  SSL (criptata)                  Account principale
 C    https://sms.netfunitalia.it/PostNetFunID.asp                SSL (criptata) + IDT*           Account principale

Nella trasmissione degli sms occorre spedire il parametro smsUdh (16 cifre)
Esempio di smsUdh: 0106050003000201
            0106050003000201               È il parametro UDH, è un codice esadecimale che deve
                                           interpretare il cellulare
              0106050003                   È la parte che deve rimanere intatta
                              00           È l’ID del gruppo di sms da concatenare (tutti gli sms che fanno
                                           parte di un unico gruppo devono avere lo stesso ID)
                                    0201 Indica che sto spedendo il primo di 2 messaggi, (quindi il gruppo è
                                           formato da 2 sms)
Esempio GET:
del primo sms
https://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittent
e&smsTEXT=primo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=0106050
003000201

secondo sms
https://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittent
e&smsTEXT=%20secondo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=01
06050003000202


                                                   2) Non spedire la variabile UDH

Questa modalità funziona solo se si spedisce verso i seguenti indirizzi:

                             URL                                       Spedizione                     Con quale account è possibile spedire
 D    http://62.48.53.75/post/send.php                            in chiaro                       Account principale –se spedisci su pannello
                                                                                                  www.smsviainternet.it
 E    http://62.48.53.75/post/nomeReseller/send.php               in chiaro                       Subaccount /cliente del rivenditore

                                                                                                                                                20
                         Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
In questa modalità il cliente non dovrà preoccuparsi di specificare la variabile UDH, perché il
concatenamento verrà gestito in automatico da NetFun, il sistema provvederà a suddividere in automatico
gli sms in 153 caratteri e a comunicare alla SIM che riceverà gli sms, il parametro UDH.


SMS CONCATENATI via e-mail
Il cliente ha la possibilità inviare sms concatenati e di non specificare il parametro UDH anche se utilizza il
protocollo SMTP.
Inviando infatti le e-mail a:
utenti netfun - email alla quale inviare i dati: smtp@smsviainternet.it
utenti subaccount – email alla quale inviare i dati: (deciso dal rivenditore dal suo pannello)

Non bisogna passare nessuna variabile al sistema, se il testo inviato contiene più di 160 caratteri, in
automatico vengono suddivisi in blocchi da 153 caratteri (per messaggio) per poi essere ri-concatenati dal
cellulare.
Esempio: se viene spedito un messaggio di 500 caratteri, il sistema li suddivide prima in 4 messaggi (500
: 153 = 4) ovvero 3 sms da 153 caratteri + 1 sms da 41 caratteri e poi in automatico vengono accorpati in
un solo sms che riceverà l’utente sul proprio telefonino.


2.5) SMS in differita

Il servizio di sms in differita permette di impostare una data ed un’ora per le proprie spedizioni, è possibile
utilizzare questa funzione attraverso il protocollo HTTP/POST e il protocollo SMTP

                             SMS in differita con Protocollo HTTP/POST
Questa modalità funziona solo se si spedisce verso i seguenti indirizzi:
                            URL                                       Spedizione                     Con quale account è possibile spedire
 D   http://62.48.53.75/post/send.php                            in chiaro                       Account principale –se spedisci su pannello
                                                                                                 www.smsviainternet.it
 E   http://62.48.53.75/post/nomeReseller/send.php               in chiaro                       Subaccount /cliente del rivenditore

Oltre ai vari parametri che il cliente dovrà specificare (vedi paragrafo 1.1)
Per gli sms in differita occore spedire il seguente parametro:
smsDATE o di smsSENDTO
2009-03-12 15:00 quindi AAAA-MM-GG oo:mm
oppure
200903121500 qundi AAAAMMGGoomm
ma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio:
now – invia subito
10 September 2009 – invio programmato il 10 settembre 2009 a mezzanotte
+1 day – (tra un giorno)
+1 week – tra una settimana
+2 days 4 hours 2 seconds – invio tra 2 giorni, 4 ore e 2 secondi da ora
next monday – invia il prossimo lunedì

                                   SMS in differita con Protocollo SMTP
Questa modalità funziona solo se si spedisce verso l’indirizzo smtp@smsviainternet.it o verso l’indirizzo e-
mail di un rivenditore.
Per rivedere i parametri da utilizzare nell’e-mail (vedi paragrafo 1.2)

Invio posticipato nel body dell’e-mail
E' possibile stabilire un ora di invio per i messaggi. L'ora e la data devono essere impostati tra
3 parentesi quadre, esempio:
<<Ciao, sono lieto di invitarti alla mia festa [[[2009-03-12 15:00]]]
[+393481234567,+393359876543] ((6))>>
Il formato della data, puo' essere:
2009-03-12 15:00 quindi AAAA-MM-GG oo:mm

                                                                                                                                               21
                        Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
oppure
200903121500 qundi AAAAMMGGoomm
ma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio:
now – invia subito
10 September 2009 – invio programmato il 10 settembre 2009 a mezzanotte
+1 day – (tra un giorno)
+1 week – tra una settimana
+2 days 4 hours 2 seconds – invio tra 2 giorni, 4 ore e 2 secondi da ora
next monday – invia il prossimo lunedì.

Se la data non viene scritta nel modo corretto, il sistema invia immediatamente.


2.6) Simulazione d’invio

Inviando un normale SMS, mettendo però come destinatario "+11111111111" il messaggio non viene
spedito ma viene fatta una simulazione di invio. Il programma cioè testa la corretta sintassi del messaggio
e comunica all'utente il risultato della simulazione. Le simulazioni non vengono contate come messaggi
inviati.

2.7) Unicode

Il supporto UNICODE (UCS-2 e UTF-8 concatenati verso gli operatori abilitati) consente l'utilizzo dei
caratteri di tutti gli alfabeti inclusi il cinese, l'arabo, il giapponese, il greco etc.
Cos'è l'Unicode. Praticamente i computer dialogano utilizzando dei numeri e l'Unicode fornisce un numero
unico per ogni carattere digitato, qualunque sia la piattaforma, il programma o il linguaggio utilizzato. Il
consorzio Unicode (http://www.unicode.org ) è un'organizzazione non-profit fondata per sviluppare,
estendere e promuovere l'uso dello standard di Unicode.
Il nostro SMS Gateway supporta anche i messaggi UNICODE concatenati verso tutti gli operatori abilitati.
Su http://www.unicode.org/charts è possibile trovare tutti i caratteri grafici raffigurabili attraverso l'uso
della codifica Unicode.

                                        Unicode tramite Protocollo HTTP/POST

Questa modalità funziona solo se si spedisce via POST verso i seguenti indirizzi:

                             URL                                      Spedizione                     Con quale account è possibile spedire
 A   http://213.140.1.123/PostNetfun.asp                         in chiaro                       Account principale
 B   https://sms.netfunitalia.it/PostNetFun.asp                  SSL (criptata)                  Account principale
 C   https://sms.netfunitalia.it/PostNetFunID.asp                SSL (criptata) + IDT*           Account principale

Per inviare un messaggio utilizzando caratteri Unicode bisogna indicare nel parametro smsTYPE il file.UNI
Il testo che dev’essere inviato deve essere convertito in esadecimale

Ogni 4 caratteri corrispondono a 2 byte in formato esadecimale.
Esempio:
Per spedire utilizzando caratteri Unicode la parola “Ciao” si dovrà immettere campo smsTEXT la seguente
stringa:
   004300690061006F
Seguendo la tabella dei caratteri Unicode (Basic Latin) , infatti
0043 = C                  0069 = i             0061 = a              006F = o

Ecco alcuni esempi:
               testo                                      Conversione in esadecimale (Unicode UCS2)
 ciao                                          006300690061006F
 123456789                                     003100320033003400350036003700380039
 Уральскія мовы                                042304400430043B044C0441043A0456044F0020043C043E0432044B
 ‫لاروا لابج‬                                    062C062806270644002006270648063106270644

                                                                                                                                             22
                        Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
-smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazione
in formato internazionale,+393291234567)
-smsSENDER (max 16 caratteri per il numero telefonico del mittente in formato internazionale oppure max
11 caratteri per una stringa di testo) (NON IN FORMATO UNICODE)
-smsTEXT = esadecimale dei caratteri unicode da spedire (senza spazi tra di essi) (max 280 caratteri, 70
visualizzati sul cellulare)
-smsUSER = il proprio user name
-smsPASSWORD = la propria password
-smsGATEWAY = O,1,4 (il numero del gateway desiderato)
-smsTYPE = file.uni


                                Unicode tramite il MySMS (protocollo TCP/IP)

Per inviare un messaggio utilizzando caratteri Unicode con il motore MySMS, occorre seguire la seguente
procedura:

1) Creare un file di testo (cioè con estensione .TXT)
2) Aprire il file con un editor di testo e scrivere al suo interno la lista dei caratteri Unicode in formato
esadecimale (in chiaro) senza nessuno spazio tra un carattere e l’altro (Max. 280 caratteri, 70 visualizzati
sul cellulare)
3) Rinominare il file nel seguente modo
     Ddestinatario_Oorigine_Ggateway_Fnomefile.UNI
     In cui:
- destinatario è il numero (in formato internazionale) al quale si vuole spedire il messaggio. (Campo
obbligatorio) (MAX 16 caratteri numerici)
- origine è il nome o il numero da visualizzare come mittente del messaggio (Campo opzionale, se non
specificato verrà usato quello di default) (MAX 16 Caratteri per un numero in formato internazionale o
MAX 11 caratteri per una stringa di testo) (NON PUO’ ESSERE IN FORMATO UNICODE)
- gateway è il numero del gateway da utilizzare per spedire il messaggio (O,1,4) (Campo obbligatorio)
        - nomefile è il nome del file di testo (Campo obbligatorio)

4) Spostare il file nella propria cartella INBOX

Ogni 4 caratteri corrispondono a 2 byte in formato esadecimale.

Esempio:
Per spedire utilizzando caratteri Unicode la parola “Ciao” con gateway 1 si dovrà immettere nel file di testo
la seguente stringa:
   004300690061006F

Il file verrà poi rinominato nel seguente modo
             D393471234567_OTest_G1_Fprova-unicode.uni




2.8) Loghi, suonerie e Flash Message


                                                        LOGHI OPERATORI


Un logo operatore è una piccola immagine che può essere visualizzata sul cellulare.
Il logo operatore ormai non viene più utilizzato sui cellulari di ultima generazione, ma per chi possiede
ancora vecchi modelli nokia con display monocromatici è ancora possibile riceverli, semplicemente
inviando un SMS.
La grandezza di ogni singolo Logo Operatore è di 72x14 pixels (Formato standard)
L’invio di un logo operatore tramite protocollo POST può avvenire solo alle seguenti pagine:
                                                                                                                                  23
                      Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
URL                                      Spedizione                     Con quale account è possibile spedire
 A   http://213.140.1.123/PostNetfun.asp                         in chiaro                       Account principale
 B   https://sms.netfunitalia.it/PostNetFun.asp                  SSL (criptata)                  Account principale
 C   https://sms.netfunitalia.it/PostNetFunID.asp                SSL (criptata) + IDT*           Account principale

Esempio
-smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico                                                dell’utenza         di
destinazione in formato internazionale,+393291234567)
-smsSENDER = 222222222222 (12 volte la cifra "2")
-smsTEXT = logo in formato esadecimale (OTA BITMAP)
-smsUSER = il proprio user name
-smsPASSWORD = la propria password
-smsNETCODE = network code dell’operatore desiderato (Opzionale)
-smsGATEWAY = O,1,4 (il numero del gateway desiderato; 0=automatico)
-smsTYPE = file.sms

L'OTA Bitmap è uno standard realizzato da Nokia.
L’idea è semplice, bisogna controllare ogni singolo pixel ed assegnargli un valore predefinito:
se il pixel è bianco _ Hex(30), se è nero Hex(31)

Ecco un esempio di un logo in formato OTA Bitmap:
00480E01003E03E0007E01F000007E07F000FF03F80000FE0F7801E7871C0001EE0E3801C3871C0001CE0
C380183871C00000E0038E00F871C00000E0078E01F071C00000E00F0E00F071C00000E01E00003871C0
0000E03C00183871C00000E07F8E1C7871C
00000E0FF8E0FF03F800000E0FF8E07E01F000000000000000000000

N.B. Ogni logo in formato OTA Bitmap deve iniziare con la string 00480E01.

                                               SUONERIE
Una suoneria (o ringtone) può essere inviata ad un cellulare incorporando lo spartito musicale
direttamente nel file SMS.
Esiste uno standard realizzato da Nokia, chiamato Hex Dump, per l'utilizzo di questo servizio.

Come per i loghi operatore, in Internet si possono trovare svariate suonerie in formato RTTTL e programmi
capaci di convertire il formato RTTTL in Hex.

Le suonerie possono essere inviate circa nello stesso modo dei loghi operatore:

Esempio
-smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico                                                dell’utenza         di
destinazione in formato internazionale,+393291234567)
-smsSENDER = 333333333333 (12 volte la cifra "3")
-smsTEXT = ringtone in formato esadecimale
-smsUSER = il proprio user name
-smsPASSWORD = la propria password
-smsGATEWAY = O,1,4 (il numero del gateway desiderato; 0=automatico)
-smsTYPE = file.sms

Ecco un esempio di suoneria in formato esadecimale:
024A3A5D4DD15D85C9CCC404005A9912CC2CC2CC36551629461361161B29649461361161B296494613
614611224820B30B30B30D95458A5184D84586CA5925184D84586CA5925184D85184489000

                                             FLASH MESSAGE
Un Flash Message è un SMS che viene visualizzato immediatamente sullo schermo del cellulare. In questo
modo il ricevente non dovrà utilizzare il menù messaggi del cellulare per visualizzarlo. Anche i flash
message non vengono più utilizzati sui cellulari di ultima generazione.

Per inviare un Flash Message sui cellulari Nokia con display monocromatico basta settare il paramentro
smsTYPE=file.FLH

                                                                                                                                             24
                        Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
2.9) HLR

Il servizio HLR Lookup consente di sapere se un numero di cellulare esiste e a quale operatore appartiene
l'abbonato. Queste informazioni possono tornare utili per ripulire le proprie liste da numeri diventati
oramai irraggiungibili in quanto non più abilitati, e per poter instradare correttamente il proprio traffico
SMS.

Come effettuare una chiamata HLR :
Con qualunque protocollo, anche con il MySMS, basta semplicemente inviare un sms verso il gateway 8

Cosa si riceverà per ogni richiesta HLR? :
Di seguito un esempio di cosa si potrà ricevere dopo aver inviato un sms al gateway 8:
ITA 22F201 Vodafone Omnitel GSM 222010
dove
                                                     ITA                         Paese
                                                                                 Network
                                                     22F201
                                                                                 Code
                                                     Vodafone Omnitel            Operatore
                                                     GSM                         Tipologia
                                                     222010                      formato IMSI

In che modo si può ricevere la risposta dell'HLR ? :
La risposta viene visualizzata nel pannello di controllo sul sito www.netfunitalia.it, come se fosse stato
spedito un sms normale
Ma sarà possibile riceverla anche su una propria URL e/o su un proprio indirizzo e-mail, basta attivare la
ricezione dei delivery




                                                                                                                                 25
                     Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
3.1) Codici di errore via POST

Forniamo di seguito 2 tabelle con i codici di transizione dei messaggi

Per i messaggi che vengono inviati ai seguenti indirizzi:
                             URL                                      Spedizione                     Con quale account è possibile spedire
 A   http://213.140.1.123/PostNetfun.asp                         in chiaro                       Account principale
 B   https://sms.netfunitalia.it/PostNetFun.asp                  SSL (criptata)                  Account principale
 C   https://sms.netfunitalia.it/PostNetFunID.asp                SSL (criptata) + IDT*           Account principale

Questi sono i codici di riferimento
     Risposta dalla pagina ASP                                                    Significato
           Nessuna risposta                                       Timeout / Indirizzo errato / Server Down
               +Ok xxxxx                                  Messaggio accettato, il credito in millesimi d’Euro è xxxxx
  +Ok xxxxx [05043416234512345]                        Messaggio accettato, il credito in millesimi d’Euro è xxxxx, [IDT]
                -Err 001                                                 Incorrect user or password
                -Err 002                                                           No credits
                -Err 004                                                   GSM number incorrect
                -Err 005                                                 SmsNUMBER not specified
                -Err 006                                                   SmsTEXT not specified



Per i messaggi che vengono inviati ai seguenti indirizzi:
                            URL                                       Spedizione                     Con quale account è possibile spedire
 D   http://62.48.53.75/post/send.php                            in chiaro                       Account principale –se spedisci su pannello
                                                                                                 www.smsviainternet.it
 E   http://62.48.53.75/post/nomeReseller/send.php               in chiaro                       Subaccount /cliente del rivenditore

Questi sono i codici di riferimento
         Risposta dalla pagina ASP                                                            Significato
 +Ok xxxx (INVIATI:0, NON INVIATI:0, TOTALI:0)                             Messaggio inviato, il credito in millesimi è xxxx
                                                                           (questo accade quando si inviano fino a 50 sms per
                                                                           volta, quindi settando smsNUMBERS

           +Ok xxxx [yyyyyyyyyyyyyyy]                                      Messaggio inviato, il credito in millesimi è xxxx
                                                                           [IDT] (solo se inviato
                                                                           un sms per volta, IDT serve per il delivery)

                         -Err   999                                        Errore interno al server
                         -Err   888                                        Rivenditore non valido o non esistente
                         -Err   777                                        Nessuna variabile inviata
                         -Err   001                                        Login errato
                         -Err   002                                        Nessun credito
                         -Err   003                                        Formato numero (o in caso di numeri multipli uno
                                                                           dei numeri) non valido/i
                         -Err 004                                          Numero o numeri non specificato/i
                         -Err 005                                          Troppi    numeri    specificati,  il massimo      per
                                                                           smsNUMBERS è di 50 destinatari
                                                                           per volta
                         -Err 006                                          Testo non specificato
                         -Err 007                                          Mittente personalizato errato. Lunghezza massima
                                                                           di 16 caratteri numerici
                                                                           oppure 11 caratteri alfanumerici.
                         -Err 008                                          Formato data invio non valido
                         -Err 009                                          Data invio trascorsa. (almeno un minuto dall'invio)
                         -Err 100                                          Messaggio non inviato, i motivi possono essere
                                                                           diversi, errore non
                                                                           Conosciuto, problemi di connessione ecc.
                                                                                                                                               26
                        Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
3.2) Codici di notifica (Reason Code)

Quando per il parametro smsDELIVERY inviamo la risposta “N” (Non consegnato) sarà possibile conoscere
anche il motivo del “Not Delivered”, basta interpretare anche il parametro smsRSN (Reason Code)
Questo parametro è composto da 3 cifre.
L’elenco completo è visibile alla seguente pagina: http://www.netfunitalia.it/downloads/ReasonCode.pdf

Per chi sceglie di ricevere la notifica via e-mail troverà nell’oggetto dell’e-mail il seguente esempio di “Not
Deliverd”:
Not    Delivered      to  +3933112345678         Login:demo       Sender:ciao    Time:28/08/2008      16.37.26
SCTS:08083116372643521 Delivery Time:28/08/2008 16.37.34 Dati:The SMS sent to 003933112345678
has not been delivered Reason Code:111


4.1) Pannello Rivenditore

I rivenditori avranno a disposizione gratuitamente 2 pannelli (contattare il commerciale di NetFun Italia).
1) il primo è un pannello di amministrazione dove si potranno creare e gestire i subaccounts/clienti, si
potranno monitorare le operazioni dei propri clienti, con statistiche grafiche e approfondite, si potranno
esportare i logs degli storici degli sms inviati e ricevuti e ovviamente si potranno fare ricariche sui
subaccounts impostando per ognuno di essi anche il costo di vendita degli sms
2) Il secondo pannello viene utilizzato dal subaccount/cliente per poter eseguire una serie di operazioni:
-Invio di sms, storico sms inviati, storico sms ricevuti, e una decina di altri servizi.
Questo pannello viene personalizzato con il logo/banner del cliente e non saranno presenti riferimenti alla
NetFun Italia, al cliente sarà assegnato un proprio indirizzo.
Il pannello ha una grafica avanzata e sarà identico a www.smsviainternet.it (possono accedere i clienti
registrati sul sito www.nertfunitalia.it)


4.2) Ricarica credito cliente tramite POST

URL per comunicare tramite POST (solo per reseller):
utenti subaccount – http://62.48.53.75/post/nomeReseller/recharge.php
Le variabili (codificate) da inviare tramite POST sono:
smsUSER username di accesso reseller
smsPASSWORD oppure smsPSW password di accesso reseller
smsSUBACCOUNT Nome del subaacount da ricaricare (appartenente al reseller.
SmsCREDIT Credito da assegnare in centesimi di euro.
Esempio per 10,00 € scrivere 1000
Se impostato a 0, restituisce il credito del subaccount senza inserire alcuna transazione.
Questi gli errori/messaggi restituiti

  Risposta dalla pagina                                                              Significato
          ASP
        +Ok xxxx
                                   Transazione inserita con successo, il credito in millesimi è xxxx
          -Err   999               Errore interno al server
          -Err   888               Rivenditore non valido o non esistente
          -Err   777               Nessuna variabile inviata
          -Err   001               Login errato
          -Err   002               Valore credito errato
          -Err   003               Subaccount non esistente



                                                                                                                                   27
                       Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4

Weitere ähnliche Inhalte

Andere mochten auch

Gorrion Rojo Collar,Zonotrichia capecis
Gorrion Rojo Collar,Zonotrichia capecisGorrion Rojo Collar,Zonotrichia capecis
Gorrion Rojo Collar,Zonotrichia capeciswilfrido-lanchimba
 
Programación cultural Mayo-Junio-Julio en Santa Lucía
Programación cultural Mayo-Junio-Julio en Santa LucíaProgramación cultural Mayo-Junio-Julio en Santa Lucía
Programación cultural Mayo-Junio-Julio en Santa LucíaEmprende Santa Lucía
 
¿Qué es la Cavitación? Cavislim
¿Qué es la Cavitación? Cavislim¿Qué es la Cavitación? Cavislim
¿Qué es la Cavitación? Cavislimfitnessdigital
 
'Radio News: No. 19, 19 March 1993' by Grant Goddard
'Radio News: No. 19, 19 March 1993' by Grant Goddard'Radio News: No. 19, 19 March 1993' by Grant Goddard
'Radio News: No. 19, 19 March 1993' by Grant GoddardGrant Goddard
 
Arte pop [pop art]
Arte pop [pop art]Arte pop [pop art]
Arte pop [pop art]Manuel Glez
 
Guia tesis maestria 2010
Guia tesis maestria 2010Guia tesis maestria 2010
Guia tesis maestria 2010Jemima
 
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swcOGD-DACHLI Konferenzreihe
 

Andere mochten auch (11)

Taller info medica
Taller info medicaTaller info medica
Taller info medica
 
Gorrion Rojo Collar,Zonotrichia capecis
Gorrion Rojo Collar,Zonotrichia capecisGorrion Rojo Collar,Zonotrichia capecis
Gorrion Rojo Collar,Zonotrichia capecis
 
Programación cultural Mayo-Junio-Julio en Santa Lucía
Programación cultural Mayo-Junio-Julio en Santa LucíaProgramación cultural Mayo-Junio-Julio en Santa Lucía
Programación cultural Mayo-Junio-Julio en Santa Lucía
 
Educacion lopd andatic_II
Educacion lopd andatic_IIEducacion lopd andatic_II
Educacion lopd andatic_II
 
¿Qué es la Cavitación? Cavislim
¿Qué es la Cavitación? Cavislim¿Qué es la Cavitación? Cavislim
¿Qué es la Cavitación? Cavislim
 
'Radio News: No. 19, 19 March 1993' by Grant Goddard
'Radio News: No. 19, 19 March 1993' by Grant Goddard'Radio News: No. 19, 19 March 1993' by Grant Goddard
'Radio News: No. 19, 19 March 1993' by Grant Goddard
 
Arte pop [pop art]
Arte pop [pop art]Arte pop [pop art]
Arte pop [pop art]
 
Guia tesis maestria 2010
Guia tesis maestria 2010Guia tesis maestria 2010
Guia tesis maestria 2010
 
Lamp on a stand
Lamp on a standLamp on a stand
Lamp on a stand
 
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc
10 dirschl kaltenböck_ogd_d-a-ch-li 20121004_wkd-swc
 
ANGIOPLASTIA. BYPASS
ANGIOPLASTIA. BYPASSANGIOPLASTIA. BYPASS
ANGIOPLASTIA. BYPASS
 

Ähnlich wie Netfun italia

Come funziona il voip
Come funziona il voipCome funziona il voip
Come funziona il voipLuca
 
Presentazione Wap Vs I Mode
Presentazione Wap Vs I ModePresentazione Wap Vs I Mode
Presentazione Wap Vs I Modemasso87
 
Protocolli Posta Elettronica
Protocolli Posta ElettronicaProtocolli Posta Elettronica
Protocolli Posta Elettronicaandreacox89
 
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Gabriele Di Bernardo
 
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK Riccardo Galletti
 
PEC - guida all'uso Register.it
PEC - guida all'uso Register.itPEC - guida all'uso Register.it
PEC - guida all'uso Register.itRegister.it
 
Guida alla Strong Authentication via SMS
Guida alla Strong Authentication via SMSGuida alla Strong Authentication via SMS
Guida alla Strong Authentication via SMSSkebby
 
5 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte25 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte2Majong DevJfu
 
Vpn Virtual Private Network
Vpn Virtual Private NetworkVpn Virtual Private Network
Vpn Virtual Private Networkcarmine ricca
 
MOOC Piattaforme digitali per la gestione del territorio - 4.4
MOOC Piattaforme digitali per la gestione del territorio - 4.4MOOC Piattaforme digitali per la gestione del territorio - 4.4
MOOC Piattaforme digitali per la gestione del territorio - 4.4Alessandro Bogliolo
 
Vsnc m300 ok
Vsnc m300 okVsnc m300 ok
Vsnc m300 okGpsLazio
 
Web service architetture e standard - Tesi - cap1
Web service architetture e standard - Tesi - cap1Web service architetture e standard - Tesi - cap1
Web service architetture e standard - Tesi - cap1pma77
 
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecniche
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecnicheIntroduzione alla Posta Elettronica Certificata (PEC): le regole tecniche
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecnicheEnrico Zimuel
 
5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria5 Trasporto Affidabile Teoria
5 Trasporto Affidabile TeoriaMajong DevJfu
 

Ähnlich wie Netfun italia (20)

Come funziona il voip
Come funziona il voipCome funziona il voip
Come funziona il voip
 
Presentazione Wap Vs I Mode
Presentazione Wap Vs I ModePresentazione Wap Vs I Mode
Presentazione Wap Vs I Mode
 
Protocolli Posta Elettronica
Protocolli Posta ElettronicaProtocolli Posta Elettronica
Protocolli Posta Elettronica
 
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0Transmission Error Detector per Wi-Fi su kernel Linux 4.0
Transmission Error Detector per Wi-Fi su kernel Linux 4.0
 
DDive - Sametime e integrazione av
DDive -  Sametime e integrazione avDDive -  Sametime e integrazione av
DDive - Sametime e integrazione av
 
$Rzgejzw
$Rzgejzw$Rzgejzw
$Rzgejzw
 
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK
Tesi Asterisk: CONFIGURAZIONE DI UN SERVIZIO VOIP CON ASTERISK
 
I Call 2.0
I Call 2.0I Call 2.0
I Call 2.0
 
PEC - guida all'uso Register.it
PEC - guida all'uso Register.itPEC - guida all'uso Register.it
PEC - guida all'uso Register.it
 
Guida alla Strong Authentication via SMS
Guida alla Strong Authentication via SMSGuida alla Strong Authentication via SMS
Guida alla Strong Authentication via SMS
 
5 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte25 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte2
 
Vpn Virtual Private Network
Vpn Virtual Private NetworkVpn Virtual Private Network
Vpn Virtual Private Network
 
Mail Server
Mail ServerMail Server
Mail Server
 
MOOC Piattaforme digitali per la gestione del territorio - 4.4
MOOC Piattaforme digitali per la gestione del territorio - 4.4MOOC Piattaforme digitali per la gestione del territorio - 4.4
MOOC Piattaforme digitali per la gestione del territorio - 4.4
 
Vsnc m300 ok
Vsnc m300 okVsnc m300 ok
Vsnc m300 ok
 
Sip
SipSip
Sip
 
Web service architetture e standard - Tesi - cap1
Web service architetture e standard - Tesi - cap1Web service architetture e standard - Tesi - cap1
Web service architetture e standard - Tesi - cap1
 
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecniche
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecnicheIntroduzione alla Posta Elettronica Certificata (PEC): le regole tecniche
Introduzione alla Posta Elettronica Certificata (PEC): le regole tecniche
 
Networking Hand Vocabulary Book
Networking Hand Vocabulary BookNetworking Hand Vocabulary Book
Networking Hand Vocabulary Book
 
5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria
 

Netfun italia

  • 1. Documentazione tecnica Aggiornato al 12/10/2010 www.netfunitalia.it - www.smsplan.com - www.smsviainternet.it Tutti i diritti riservati. Nessuna parte del presente documento può essere riprodotto in qualsiasi forma senza l'autorizzazione scritta del titolare del copyright. Il contenuto di questo documento sono soggette a revisione senza preavviso a causa di continui progressi nella metodologia, progettazione e sviluppo. NetFun Italia non avrà alcuna responsabilità per eventuali errori o danni di qualsiasi natura derivanti dall'utilizzo di questo documento. NetFun Italia permette ai clienti di inviare SMS via web. Per poter utilizzare il servizio è necessario collegarsi ad Internet con una buona connessione. La soluzione per spedire i messaggi può essere tarata sulle specifiche esigenze del cliente. Si offrono infatti sei possibilità per spedire i propri messaggi: I sei metodi sono complementari. E’ infatti possibile, con un solo account, usufruire di tutti e sei i metodi. Come spedire Protocollo Descrizione Difficoltà Paragrafo HTTP/POST Metodo POST Programmatore (medio) 1.1 SMTP Invio sms attraverso e-mail Programmatore (facile) 1.2 UCP Protocollo SMSC-EMI Programmatore (esperto) 1.3 SOAP Protocollo per lo scambio di messaggi con standard HTTP Programmatore (esperto) 1.4 MYSMS Software per l’invio massivo di sms in pochi secondi facile 1.5 SMSviaINTERNET Pannello di controllo per utenti poco esperti facile 1.6 Altri comandi Descrizione Paragrafo Ricezione sms Come ricevere gli sms da una SIM o da un SMSC 2.1 Ricezione della notifica Come gestire il Delivery Notification o ricevuta di ritorno del messaggio inviato 2.2 Wap Push Come spedire immagini, video, suoni attraverso gli sms 2.3 SMS concatenati Come inviare sms con più di 160 caratteri 2.4 Sms in differita Come impostare una data e un ora di spedizione 2.5 Simulazione di invio Come simulare un invio senza far scalare il proprio credito 2.6 Unicode Come inviare caratteri speciali in tutto il mondo 2.7 Loghi, suonerie e Flash Come spedire i vecchi e ormai poco usati “loghi e suonerie ed sms Flash” 2.8 HLR Come inviare e ricevere gli HLR per avere informazioni sui numeri di cellulare 2.9 Codici Descrizione Paragrafo Codici di errore via POST Elenco dei codici di errore che restituisce la piattaforma dopo un invio 3.1 Codici di notifica Reason Code Elenco dei codici di notifica restituiti dagli operatori mobili 3.2 Rivenditore SMS Descrizione Paragrafo Pannello Rivenditore Cosa può fare un rivenditore di sms 4.1 Ricarica credito cliente tramite POST Come ricaricare i subaccounts tramite comandi HTTP/POST 4.2 1 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 2. 1.1) HTTP/POST Per inviare SMS via Post basta avare un account principale (occorre essere registrati sul sito www.netfunitalia.it) e con le credenziali scelte al momento della registrazione, spedire una richiesta HTTP POST ad uno dei seguenti indirizzi a scelta, tali pagine confermeranno in modo istantaneo l’esito della transazione dei dati sulla piattaforma NetFun. URL Spedizione Con quale account è possibile spedire A http://213.140.1.123/PostNetfun.asp in chiaro Account principale B https://sms.netfunitalia.it/PostNetFun.asp SSL (criptata) Account principale C https://sms.netfunitalia.it/PostNetFunID.asp SSL (criptata) + IDT* Account principale D http://62.48.53.75/post/send.php in chiaro Account principale –se spedisci su pannello www.smsviainternet.it E http://62.48.53.75/post/nomeReseller/send.php in chiaro Subaccount /cliente del rivenditore *Cos’è l’IDT? Vedi paragrafo n. 2.2 Variabili da utilizzare per l’invio via POST Parametro Lunghezza massima Descrizione smsUSER 16 Username smsPASSWORD 8 Password smsSENDER 16 Mittente (max 11 cifre per mittente numerico – Max 16 per alfanumerico) smsTEXT 160 Testo massimo 160 caratteri o maggiore in caso di sms concatenati smsNUMBER 16 numero telefonico dell'utenza di destinazione in formato internazionale,+393291234567 smsGATEWAY 2 Rotta di destinazione (0,1,4,7,8) Gateway di Default=0 smsTYPE 5 Tipologia di messaggio** **Tipologia di messaggio smsTYPE Parametro Descrizione file.sms per spedire SMS standard di testo file.udh per spedire gli sms concatenati file.uni per spedire SMS di testo con UNICODE file.flh per spedire SMS FLASH di testo file.nol per spedire loghi operatore in formato NOL file.bmp per spedire loghi operatore o screen saver *** in formato BMP file.gif per spedire loghi operatore o screen saver *** in formato GIF file.jpg per spedire loghi operatore o screen saver *** in formato JPG file.jpeg per spedire loghi operatore o screen saver *** in formato JPEG file.rtttl per spedire suonerie in formato RTTTL file.mid per spedire suonerie in formato MID file.midi per spedire suonerie in formato MIDI file.pic per spedire picture messages e screen savers direttamente come HEXDUMP file.picm per spedire picture messages come GIF,JPG,BMP *** gli screen saver sono GIF,JPG,BMP di dimensioni pari a 72 x 28 pixels gli standard logo sono GIF,JPG,BMP di 72 x 14 pixels Attenzione!! max destinatari per chiamata HTTP POST = 50 ma si consiglia di inviarne 1 per volta. • ESEMPIO GET: come spedire il POST di un sms standard con netFun Italia con GATEWAY 1 http://213.140.1.123/PostNetfun.asp?smsUSER=USER&smsPASSWORD=PASSWORD&smsSENDER=mitte nte&smsTEXT=ciao%20come%20stai&smsGATEWAY=1&smsNUMBER=+39348xxxxxxx Risposta da PostNetfun.asp +ok 1000 2 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 3. Ovvero: +ok indica che i dati trasmessi sono corretti e 1000 indica che il proprio credito è di 1000 millesimi (1 euro) • ESEMPIO DI SPEDIZIONE POST: <html> <head> <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <title>Metodo POST smsviainternet test</title> </head> <body> <form method="post" action="http://213.140.1.123/PostNetfun.asp" enctype="multipart/form-data" accept-charset="UTF-8"> <p>&nbsp;</p> <P>smsNUMBER <input name="smsNUMBER" size="16" value="+39" maxLength=16> </P> <p>smsTEXT <input name="smsTEXT" size="39" value="Test message" style="WIDTH: 276px; HEIGHT: 159px" maxLength=1024> </p> <p>smsUSER <INPUT style="LEFT: 9px; TOP: 139px" maxLength=16 size=16 value=login name=smsUSER> </p> <P>smsPASSWORD <INPUT name=smsPASSWORD type="password" value=login maxLength=8> </P> <P>smsSENDER <INPUT maxLength=20 size=15 value=www.xx.it name=smsSENDER style="WIDTH: 167px; HEIGHT: 22px"> </P> <P>smsType <INPUT style="WIDTH: 167px; HEIGHT: 22px" maxLength=20 size=15 value=file.sms name=smsTYPE></P> <P>smsGATEWAY <INPUT style="WIDTH: 167px; HEIGHT: 22px" maxLength=20 size=15 name=smsGATEWAY> </P> <P> <input type="submit" value="Send" name="B1" style="LEFT: 164px; TOP: 181px"> <input type="reset" value="Reset" name="B2"> </P> </form> </body> </html> 3 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 4. Per chi intende utilizzare la spedizione via POST verso il pannello www.smsviainternet.it URL Spedizione Con quale account è possibile spedire D http://62.48.53.75/post/send.php in chiaro Account principale E http://62.48.53.75/post/nomeReseller/send.php * in chiaro Subaccount /cliente del rivenditore *nomeReselles = Username del rivenditore Ecco le variabili: smsUSER username di accesso smsPASSWORD oppure smsPSW password di accesso smsDATE oppure smsSENDTO data di invio, vedi dettagli per formato smsSENDER mittente personalizzato smsTEXT Testo del messaggio smsNUMBER destinatario singolo smsNUMBERS destinatari multipli, sostituisce smsNUMBER smsGATEWAY Gateway di invio, default 0 smsRESPONSE-HTML Se impostato a 1 la risposta del server sarà in formato HTML In dettaglio, per inviare un SMS ad un solo destinatario, bisogna specificare il numero in smsNUMBER, esempio: +393331234567 in tal caso si avrà nella risposta anche l'IDT necessario per il delivery per inviare invece un SMS a più destinatari specificare i numeri nella variabile smsNUMBERS (che prende posto quindi di smsNUMBER la quale viene ignorata) separando i numeri da una virgola, esempio: +393331234567,+332221234567,+223336543217 I numeri possono essere specificati in formato internazionale (consigliato) quindi facendo seguire il prefisso della nazione (esempio +39 per l'Italia) dal numero; oppure inserire il numero senza prefisso, in tal caso verrà adottato il prefisso di default (+39) La risposta del server, sarà in formato HTML se viene settata e impostata a valore 1 (uno) la variabile smsRESPONSE-HTML La codifica che dev’essere utilizzata nella trasmissione dei dati è UTF-8 In caso si utilizzi un form per la spedizione dei dati tramite POST occorre specificare il charset (in rosso) <form action="http://62.48.53.75/post/send.php" method="post" enctype="multipart/form-data" accept-charset="UTF-8"> xxx xxx </form> Se invece vengono inviati tramite php o altri linguaggi (usando CURL o socket) bisogna impostare la giusta codifica. esempio di invio dati tramite php e socket richiede la presenza del modulo mb (multibyte di php) - funzioni mb_ In questo esempio si parte dal presupposto che la codifica interna sia ISO-8859-15 (standard italiano) encodeURL è una funzione, non inclusa in questo esempio, che trasforma i caratteri speciali nel formato corretto, esempio: € in %80..etc.. //Ovviamente i controlli sono stati omessi $queryString = array(); foreach($_POST AS $key => $value) $queryString[] = $key . '=' . encodeURL(mb_convert_encoding($value, 'UTF-8', 'ISO-8859- 15')); //converto in UTF-8 $queryString = implode('&', $queryString); $fp = fsockopen(HOST, PORT, $errNo, $errStr, 30); //Vanno fatti i dovuti controlli 4 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 5. fputs($fp, "POST /send/post.php HTTP/1.0rn"); fputs($fp, "Host: " . HOST . "rn"); fputs($fp, "User-Agent: PHP/" . phpversion() . "rn"); fputs($fp, "Content-Type:application/x-www-form-urlencoded; charset=UTF-8rn"); fputs($fp, "Content-Length: ".strlen($queryString)."rn"); fputs($fp, "Accept-Language: itrn"); fputs($fp, "Cache-Control: no-cachern"); fputs($fp, "Connection: closern"); fputs($fp, "rn" . $queryString); 1.2) SMTP - Invio tramite e-mail Ci sono 2 modalità di spedizione 1. invio di e-mail con allegato le credenziali criptate 2. invio di e-mail senza allegato 1) invio di e-mail con allegato le credenziali criptate utenti netfun - email alla quale inviare i dati: smtp@smsviainternet.it utenti subaccount – email alla quale inviare i dati: (deciso dal rivenditore dal suo pannello) -ALLEGATO Ogni account o subaccount deve allegare all’e-mail delle credenziali criptate (2010-09- 07.username.credentials.sms) Il file può essere scaricato dal pannello www.smsviainternet.it nel servizio “E-MAIL verso SMS” se si sta utilizzando un account principale, mentre i subaccounts devono scaricarlo nel servizio “E-MAIL verso SMS” del pannello creato per il rivenditore. -L'oggetto corrisponde alla username Nel corpo del messaggio ci saranno sia il testo dell'sms, sia i numeri dei destinatari. Esempio: per spedire il testo ciao al numero +393301231231 si scriverà: <<Ciao [+393301231231]>> (importante sono i simboli << e >> rispettivamente all'inizio e alla fine del testo e i simboli Radice quadrata ([ e ]) che definiscono i numeri di cellulare. Per spedire il testo ciao ai 2 numeri +393301231231 e +393481234567 si scriverà: <<Ciao [+393301231231,+393481234567]>> (importante è la virgola tra un numero ed un altro). Il numero deve essere in formato internazionale, in caso contrario verra' aggiunto il prefisso italiano (+39) -Altri parametri Mittente e Gateway Il mittente va indicato tra 2 parentesi quadre di apertura e chiusura (non più di 16 cifre se numerico, e non più di 11 caratteri se alfanumerico) Il Gateway va indicato tra 2 parentesi tonde di apertura e di chiusura Esempio: <<Ciao, sono lieto di invitarti alla mia festa [[compleanno]] [+393481234567,+393359876543] ((6))>> in assenza della variabile [[mittente]], il mittente del messaggio sarà il nome dello User in assenza della variabile ((numero gateway)), i messaggi passeranno per il gateway di default “0” e possibile anche impostare in una sola e-mail più di un testo come nell'esempio riportato di seguito: <<questo è il testo del primo messaggio[[mittente]] 5 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 6. [+393480123456,+393389876543,+393207878787] ((6)) 7||| Questo invece è il testo del secondo messaggio[[mittente]][+393926565656,+393804646464] ((1)) |||Q uesto invece è il testo del terzo messaggio[[mittente]][+393480123456] ((6)) >> Come si può ben notare i simboli << e >> si trovano solo all'inizio e alla fine, in più i messaggi devono essere intervallati tra loro con i seguenti simboli: ||| (3 pipe in fila) NON HA IMPORTANZA L'ORDINE E LA DISPOSIZIONE DELLE VARIABILI 2) invio di e-mail senza allegato La procedura corretta per spedire sms singoli o sms multipli è la seguente: le e-mail dovranno essere spedite sempre e solo dall’indirizzo inserito nella registrazione al sito www.netfunitalia.it inviare l’e-mail al seguente indirizzo: smtp@smsplan.com l'oggetto dovrà essere: il proprio Username Nel corpo del messaggio ci saranno le stesse variabili descritte sopra ulteriori informazioni sui gateway: http://www.netfunitalia.it/sms/gateway.html 1.3) UCP E’ possibile spedire SMS tramite un sistema UCP utilizzando I seguenti parametri: Ip = 213.140.1.123 User/LA = User name della vostra registrazione su NetFun Italia Password = Password della vostra registrazione su NetFun Italia Port 6000 = gateway automatico (gateway 0) Port 6001 = gateway 1 (connessione diretta) Port 6004 = gateway 4 (interconnessione x personalizzazione mittente Tim e Vodafone) Port 6007 = gateway 7 (x inviare i Wap-Push) Port 6008 = gateway 8 (HLR Lookup x conoscere l’operatore dell’utente) Per inviare un messaggio basta utilizzare i seguenti comandi: Comando UCP 60 = Log In Comando UCP 51 = Inviare il messaggio Comando UCP 13 = Segnale Keep Alive Per visionare il Protocollo UCP (SMSC –EMI) http://www.netfunitalia.it/downloads/SMSC_EMI_Specification.PDF 1.4) SOAP E’ possibile spedire SMS tramite SOAP utilizzando il seguente file WSDL: https://sms.netfunitalia.it/Services/soap/NetfunWSDL.zip o visualizzarlo di seguito: 6 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 7. https://sms.netfunitalia.it/Services/soap/soap.asp?wsdl DESCRIZIONE VARIABILI: correlationId = numero identificativo del messaggio originatingAddress = mittente originatorTON = (1 se mittente alfanumerico) - (0 se mittente numerico) destinationAddress = destinatario messaggio userData = testo messaggio userDataHeader = UDH per concatenamenti messaggi DCS = Data coding scheme valore forzato a 17 username = User della registrazione password = Password della registrazione ESEMPI: di seguito il file di esempio Netfun.vb zippatp http://www.netfunitalia.it//downloads/Esempio_SOAP_VB.zip Dopo avere incluso in un progetto .NET il Netfun.vb Dim MyClientSoap As New Netfun.Soap.SmsApiNetfun Dim MyDatiSoap As New Netfun.Soap.SendRequest Dim MyRispostaSoap As Netfun.Soap.SendResponse MyDatiSoap.userDataHeader = "#NULL#" MyDatiSoap.originatorTON = "1" MyDatiSoap.originatingAddress = "MiaAzienda" MyDatiSoap.destinationAddress = "+393341234567" MyDatiSoap.correlationId = "mio_id_messaggio" MyDatiSoap.userData = "Test messaggio" MyDatiSoap.username = User della registrazione MyDatiSoap.password = Password della registrazione MyDatiSoap.DCS = 17 MyRispostaSoap = MyClientSoap.send(MyDatiSoap) If Not MyRispostaSoap Is Nothing Then MsgBox(MyRispostaSoap.responseMessage) Else MsgBox("Nessuna risposta") End If Esempio di invio in XML <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.netfunitalia.it/api/services/SmsApi2010"> <soap:Body> <tns:SendRequest> <tns:correlationId>123</tns:correlationId> <tns:originatingAddress>Test</tns:originatingAddress> <tns:originatorTON>1</tns:originatorTON> <tns:destinationAddress>+393331234567</tns:destinationAddress> <tns:userData>Sms di Test</tns:userData> <tns:userDataHeader>#NULL#</tns:userDataHeader> <tns:DCS>17</tns:DCS> <tns:username> User della registrazione </tns:username> 7 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 8. <tns:password> Password della registrazione </tns:password> </tns:SendRequest> </soap:Body> </soap:Envelope> 1.5) MYSMS Il MySMS è un software sviluppato in Visual Basic da NetFun Italia e sfrutta il protocollo TCP/IP Facilissimo da utilizzare e adatto ai meno esperti Permette di avere una velocità di spedizione tra le più elevate nel mondo. Circa 100 sms al secondo. Il software richiede una installazione in ambiente Windows Di seguito un tutorial sul suo funzionamento: http://www.netfunitalia.it/MySMS/HELP.HTM • Informazione per i più esperti: Il MySMS può essere utilizzato dai programmatori come motore di spedizione da tenere nel System Try del proprio Windows Server. Il programmatore non dovrà fare altro che creare nella cartella INBOX i file .sms che il motore divorerà in un instante, il motore MySMS penserà poi alla connessione e alla trasmissione dei dati. Come lavora il programma MySMS cerca periodicamente nella directory “Inbox” i file con estensione .sms .gif .bmp .jpg .jpeg .nol .lnol .rtttl .midi .mid .flh .uni Se ne vengono trovati, il programma li spedisce immediatamente via Internet. In caso di errore (nome o contenuto del messaggio errato) il file viene rinominato come .err e viene spostato nella directory locale “Outbox”. Come scrivere file .sms tramite un programma Per creare un programma che scriva file .sms e li metta nella cartella Inbox, puoi utilizzare il linguaggio di programmazione preferito. e.s. in Visual Basic: Open Inbox & FILENAME & ".txt" For Output As #out Print #out, SMSText Close #out '###Rinomina il file Dim FS, f Set FS = CreateObject("Scripting.FileSystemObject") Set f = FS.GetFile(Inbox & FILENAME & ".txt") If Not FS.FileExists(Inbox & "D" & SMSNumber & "_O" & SMSSender & "_G" & SMSGateway & "_" & FILENAME & ".sms") Then f.Name = "D" & SMSNumber & "_O" & SMSSender & "_G" & SMSGateway & "_" & FILENAME & ".sms" End If Il file è creato in formato .txt, successivamente viene rinominato. Questo procedimento è necessario poichè il lasso di tempo per la trasmissione di un SMS tramite MySMS è così corto che il file .sms sarebbe inviato prima ancora che ne sia finita la scrittura da parte del programma. Come scrivere file .sms tramite un web form Per creare un web form che scriva file .sms e li metta nella cartella Inbox, puoi utilizzare un asp. Copiare l’esempio riportato come myform.asp, impostare la variabile MySMSInPath per definire il percorso della cartella “smsin” e.s. in Visual Basic Script: <%@ LANGUAGE=VBScript %> <% 8 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 9. ‘QUESTA FUNZIONE QUANDO RICHIAMATA CREA IL FILE *.SMS NELLA TUA DIRECTORY SMS IN-FOLDER Private Function MySMSFile(FILENAME1,SMSNUMBER1,SMSFROM1,SMSMSG1) Dim MYFILE1,MySMSInPath,MyTitle 'ATTENZIONE LA DIRCTORY "C:smsin" NECESSITA DEI PERMESSI PER L’UTENTE EVERYONE ‘OPPURE PUO’ ESSERE UNA VIRTUAL DIRECTORY DEL TUO SITO MySMSInPath = "C:smsin" 'PERCORSO PER SMS IN-FOLDER MyTitle = "by www.smsplan.com" 'MESSAGGIO PROMOZIONALE FACOLTATIVO MYFILE1 = MySMSInPath & FILENAME1 'CREATE FILE *.sms Set fso = CreateObject("Scripting.FileSystemObject") Set Aa = fso.CreateTextFile(MYFILE1,True) Aa.WriteLine(SMSNUMBER1) Aa.WriteLine(SMSFROM1) Aa.WriteLine(MyTitle) Aa.WriteLine(SMSMSG1) Aa.close Set Aa = nothing set fso = nothing MySMSFile = "OK" End Function Dim FILENAME,SMSNUMBER,SMSFROM,SMSMSG Dim ERROR_MSG,GATEWAY 'LEGGO LE VARIABILI PASSATEMI DAL FORM SMSNUMBER = Request.Form("PHONENUMBER") SMSFROM = Request.Form("MSGFROM") SMSMSG = Request.Form("SMSTEXT") GATEWAY = "" ERROR_MSG = "" 'CONTROLLO IL NUMERO DEL CELLULARE: IMPLEMENTA LE CONDIZIONI IF CON I TUOI PARAMETRI SPCIFICI SE NECESSARIO 'ESISTE IL NUMERO? If SMSNUMBER <> "" Then ERROR_MSG = "Please insert the mobile number!" 'E’ ABBASTANZA LUNGO IL NUMERO PER ESSERE CONSIDERTO VALIDO? If Len(SMSNUMBER) >= 10 Then ERROR_MSG = "The mobile number is too short!" 'IL NUMERO E’ SENZA SPAZI? If InStr(1, SMSNUMBER, " ") <= 0 Then ERROR_MSG = "The mobile number must be without spaces!" 'CONTIENE SOLO NUMERI? If IsNumeric(SMSNUMBER) = True Then ERROR_MSG = "Insert a number in the mobile number field!" 'IL FORMATO INTERNAZIONALE E’ VALIDO? If Left(SMSNUMBER, 2) = "00" Then ERROR_MSG = "Not a valid international format! Number does not begin with 00." else '############################################################# 'IMPLEMENTA LE CONDIZIONI IF A TE NECESSARIE 'QUESTA CONDIZIONE SPEDISCE SOLO IN ITALIA 9 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 10. If (Left(SMSNUMBER, 6) <> "+39") Then ERROR_MSG = "" else '############################################################# 'IMPLEMENTA LE CONDIZIONI IF A TE NECESSARIE End If End If End IF End If End If End If ‘CONTROLLO IL TESTO DEL MESSAGGIO SMS If Trim(SMSMSG) = "" then ERROR_MSG = "You must digit an SMS message!" 'NESSUN MESSAGGIO NESSUN MITTENTE NEANCHE IL NUMERO = STA APRENDO IL FORM PER LA PRIMA VOLTA TUTTEL LE VARIABILI SONO if Trim(SMSFROM) = "" And Trim(SMSNUMBER) = "" then ERROR_MSG = "NO" ‘SETTO LA VARIABILE CON NO PER INDICARE CHE HA APERTO IL FORM E NON STA SPEDENDO end if End If '’CONTROLLO CHE NON CI SIANO MESSAGGI DI ERRORE EPROSEGUO NELLA CREAZIONE DEL FILE If ERROR_MSG = "" Then Randomize FILENAME=Int((999 * Rnd) + 1) FILENAME = FILENAME & Right(SMSNUMBER,5) 'G1_ o G2_ o G3_ o G4_ o G5_ o G6 PER FORZARE IL GATEWAY. G0_ PER USARE GATEWAY AUTOMATICO GATEWAY = "G1_" FILENAME = GATEWAY & FILENAME & "sms.sms" SMSNUMBER = "+" & SMSNUMBER 'RICHIAMO LA FUZIONE PER CREARE I FILE E PASSO LE VARIABILI FILENAME = MySMSFile(FILENAME,SMSNUMBER,SMSFROM,SMSMSG) If FILENAME = "OK" then 'FILE CREATO CORRETTAMENTE ERROR_MSG = "SMS sended!" Else 'ERRORE NEL CREARE IL FILE ERROR_MSG = FILENAME'"Critical error! Please contact the webmaster" End if End If ‘STO SOLO APRENDO IL FORM E NON SPEDENDO SETTAGGIO SENZA MESSAGGI PER IL POPUP If ERROR_MSG = "NO" Then ERROR_MSG = "" End If %> <html> <head> <meta http-equiv="Content-Language" content="it"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 10 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 11. <title>NetFunItalia Example FORM</title> <% 'SE NON CI SONO MESSAGGI ELIMINO IL JS PER IL POPUP If ERROR_MSG <> "" Then %> <script language="JavaScript"> <!-- function MM_popupMsg(msg) { //v1.0 alert(msg); } //--> </script> <% End If %> </head> <body bgcolor="#FFFFFF" <% 'SE NON CI SONO MESSAGGI ELIMINO L’EVENTO PER IL POPUP If ERROR_MSG <> "" Then %> onLoad="MM_popupMsg('<% =ERROR_MSG %>')" <% End If %>> <p>NetFun Italia Example FORM</p> <p>File Name myform.asp</p> <p>Use these asp combined with a MySMS SW</p> <!--webbot BOT="GeneratedScript" PREVIEW=" " startspan --><script Language="JavaScript" Type="text/javascript"><!-- function FrontPage_Form1_Validator(theForm) { if (theForm.PHONENUMBER.value == "") { alert("Please enter a value for the "Mobile Phone Number" field."); theForm.PHONENUMBER.focus(); return (false); } if (theForm.PHONENUMBER.value.length < 10) { alert("Please enter at least 10 characters in the "Mobile Phone Number" field."); theForm.PHONENUMBER.focus(); return (false); } if (theForm.PHONENUMBER.value.length > 16) { alert("Please enter at most 16 characters in the "Mobile Phone Number" field."); theForm.PHONENUMBER.focus(); return (false); } var checkOK = "0123456789-."; var checkStr = theForm.PHONENUMBER.value; var allValid = true; 11 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 12. var validGroups = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } if (ch != ".") allNum += ch; } if (!allValid) { alert("Please enter only digit characters in the "Mobile Phone Number" field."); theForm.PHONENUMBER.focus(); return (false); } if (theForm.MSGFROM.value.length > 16) { alert("Please enter at most 16 characters in the "From" field."); theForm.MSGFROM.focus(); return (false); } var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-"; var checkStr = theForm.MSGFROM.value; var allValid = true; var validGroups = true; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } } if (!allValid) { alert("Please enter only letter and digit characters in the "From" field."); theForm.MSGFROM.focus(); return (false); } if (theForm.SMSTEXT.value == "") { alert("Please enter a value for the "Message Text" field."); 12 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 13. theForm.SMSTEXT.focus(); return (false); } if (theForm.SMSTEXT.value.length < 1) { alert("Please enter at least 1 characters in the "Message Text" field."); theForm.SMSTEXT.focus(); return (false); } if (theForm.SMSTEXT.value.length > 160) { alert("Please enter at most 160 characters in the "Message Text" field."); theForm.SMSTEXT.focus(); return (false); } var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789-@£$¥èéùìòÇØøÅå_ÆæßÉ!"#%&'()*+,- ./¡ÄÖÑܧ¿äöñüà;:<=>? trnf"; var checkStr = theForm.SMSTEXT.value; var allValid = true; var validGroups = true; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } } if (!allValid) { alert("Please enter only letter, digit, whitespace and "@£$¥èéùìòÇØøÅå_ÆæßÉ!"#%&'()*+,- ./¡ÄÖÑܧ¿äöñüà;:<=>?" characters in the "Message Text" field."); theForm.SMSTEXT.focus(); return (false); } return (true); } //--></script><!--webbot BOT="GeneratedScript" endspan --><form method="POST" action="myform.asp" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1"> <p align="center"><br> <br> <br> &nbsp;</p> <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1"> <tr> <td width="33%"> <p align="right">Phone Number:</td> <td width="33%"> 13 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 14. <p align="center">+<!--webbot bot="Validation" s-display-name="Mobile Phone Number" s- data-type="Integer" s-number-separators="." b-value-required="TRUE" i-minimum-length="10" i- maximum-length="16" --><input type="text" name="PHONENUMBER" size="20" tabindex="0" maxlength="16">&nbsp;&nbsp; </td> <td width="34%">eg. +4410555***</td> </tr> <tr> <td width="33%"> <p align="right">From:</td> <td width="33%"> <p align="center"> <!--webbot bot="Validation" s-display-name="From" s-data-type="String" b-allow- letters="TRUE" b-allow-digits="TRUE" i-maximum-length="16" --><input type="text" name="MSGFROM" size="20" tabindex="1" maxlength="16"></td> <td width="34%">&nbsp;</td> </tr> <tr> <td width="33%"> <p align="right">Message Text:</td> <td width="33%"> <p align="center"> <!--webbot bot="Validation" s-display-name="Message Text" s-data-type="String" b-allow- letters="TRUE" b-allow-digits="TRUE" b-allow-whitespace="TRUE" s-allow-other- chars="@£$¥èéùìòÇØøÅå_ÆæßÉ!&quot;#%&amp;'()*+,-./¡ÄÖÑܧ¿äöñüà;:&lt;=&gt;?" b-value- required="TRUE" i-minimum-length="1" i-maximum-length="160" --><textarea rows="4" name="SMSTEXT" cols="40" tabindex="2"></textarea></td> <td width="34%">&nbsp;</td> </tr> <tr> <td width="33%">&nbsp;</td> <td width="33%"> <p align="center"> <input type="submit" value="Send" name="SEND" tabindex="3"></td> <td width="34%">&nbsp;</td> </tr> <tr> <td width="33%">&nbsp;</td> <td width="33%">&nbsp;</td> <td width="34%">&nbsp;</td> </tr> <tr> <td width="33%">&nbsp;</td> <td width="33%"> <p align="center"> <input type="reset" value="Reset Form" name="RESET" tabindex="4"></td> <td width="34%">&nbsp;</td> </tr> </table> <p align="center">&nbsp;</p> </form> </body> </html> 14 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 15. 1.6) SMSviaINTERNET SMSviaINTERNET.it ideato e realizzato da NetFun Italia, è il pannello di controllo SMS più completo che sia mai stato realizzato, ed è riservato ai propri clienti e rivenditori In questa nuova area riservata sono disponibili numerosi servizi gratuiti www.SMSviaINTERNET.it Il Pannello è gratuito e personalizzabile per i nostri rivenditori. 2.1) Ricezione SMS Per poter ricevere SMS dai propri clienti o da dispositivi automatici, occorre acquisire una numerazione. Le numerazioni possono essere di due tipi: SIM e SMSC I servizi di ricezione non supportano gli UDH (sms concatenati) e gli UNICODE Ricezione su SIM Il servizio di ricezione sms e squilli su SIM può essere gestito in diversi modi: 1) via e-mail su vostro indirizzo 2) via http su nostra pagina (www.smsviainternet.it ) 3) attraverso web-server (con vostro script su vostro sito) per tutte le soluzioni inviamo i seguenti dati: - testo del messaggio, - mittente, - data di ricezione - ora di ricezione Informazione per i Programmatori: Il programmatore dovrà realizzare uno script che accetti i seguenti parametri: OADC=Mittente ADC=Destinatario (Sim Card) BODY=Testo Messaggio (oppure RING se si tratta di uno squillo) Date=20051218 (YYYYMMDD) Time=1203 (HHMM) Esempio GET: http://www.vostrosito.com/vostroasp.asp?OADC=+393381212121&ADC=+393481234567&Body=Ciao&D ate=20051218&Time=1203 Le numerazioni su SIM possono ricevere anche squilli, quest’ultimi vengono gestiti come normali sms e nel body comparirà il testo: RING Ricezione su SMSC NetFun Italia fornisce sia numeri SMSC dedicati, sia SMSC condivisi. I numeri condivisi vengono così denominati perché la stessa numerazione viene utilizzata da più clienti, gli sms vengono quindi dirottati al giusto cliente mediante keyword; queste parole chiavi vengono scelte dal cliente, l’utente finale invierà quindi messaggi sms nel seguente modo: *keyword* testo del messaggio 15 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 16. Esempio ricezione SMSC cosa riceve il vostro script: Esempio GET http://www.vostrosito.com/vostroasp.asp?Phone=%2B393202043268&Msg=Ciao%20Test%20Ricezione& TimeStamp=25-DEC2005%2012:30:00PM&Sender=%2B393491234567 Gli sms ricevuti potranno essere inoltrati su richiesta anche su vostro indirizzo e-mail Le numerazioni SMSC possono ricevere anche sms binari 2.2) Ricezione della notifica Il delivery Notification o ricevuta di ritorno è una notifica che invia gratuitamente l’operatore di telefonia per segnalare l’esito della transazione degli sms. L’operatore invia la notifica alla NetFun Italia, quest’ultima la rende disponibile sul pannello di controllo sms del sito www.netfunitalia.it Il cliente in qualunque momento può decidere di poter ricevere le notifiche anche via e-mail o su una propria pagina web, e potrà farlo scegliendo una delle 2 procedure disponibili: 1) NetFun spedisce la notifica al cliente 2) Il cliente richiede la notifica a NetFun 1) NetFun spedisce la notifica al cliente In questa modalità il cliente decide di creare uno script che possa accettare le notifiche da NetFun Italia, L’operatore telefonico invia la notifica a NetFun e quest’ultimo la invia al cliente. In questa notifica, NetFun comunicherà 2 cose fondamentali: • ID-T (codice identificativo del messaggio) • Status del delivery con relativo Reason Code (significato della notifica) Cos’è l’ID-T? Il codice ID-T serve per dare un valore univoco al messaggio che il cliente ha spedito, è di conseguenza importante che il cliente che intende ricevere questo codice abbia precedentemente conservato lo stesso codice che NetFun ha provveduto a comunicare al momento del passaggio dell’sms dal cliente a NetFun Spedizione SMS: Il cliente invia un sms a NetFun, L’operatore e NetFun subito restituisce il consegna codice ID-T di quel messaggio l’SMS ID-T NetFun gira il messaggio in tempo reale all’operatore 16 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 17. Restituzione della notifica: La SIM comunica all’operatore NetFun invia al cliente nuovamente l’ID-T di aver ricevuto il messaggio di quel messaggio + l’esito della notifica proveniente dalla SIM L’Operatore inoltra a NetFun la notifica proveniente dalla SIM Come richiedere l’ID-T a NetFun? Se il cliente intende ricevere l’ID-T subito dopo aver inviato il messaggio, deve spedire tramite POST i dati all’indirizzo: https://sms.netfunitalia.it/PostNetFunID.asp Come associare SMS spedito con la notifica Per potere associare SMS con la sua relativa notifica prima di tutto bisogna abilitarsi alla ricezione del servizio. Per abilitarsi occorre accedere nell’area riservata sul sito www.netfunitalia.it e alla voce “Delivery” indicare la URL dove si intende ricevere la notifica. Dal momento che si è abilitati alla ricezione della notifica bisogna salvare per ogni singolo SMS spedito il relativo ID di transazione ( ID-T). Quindi ID-T è uguale al valore di ritorno per ogni passaggio di dati tra il cliente e il sistema NETFUN. La corrispondenza del numero di cellulare di destinazione e questo ID di transazione servirà in futuro per sapere lo stato di NOTIFICA di quel SMS. Da qui si deduce che ogni passaggio di dati deve corrispondere a un numero di cellulare univoco all’interno del protocollo (nel caso di spedizione di più SMS con una singola transazione). Ovviamente la ricezione di questo dato dipende dal metodo con cui si inviano gli SMS al sistema. Se si spedisce tramite il metodo POST la ricezione sarà uguale alla seguente: +OK xxxxxx [<ID-T>] Esempio: +OK 1000 [05043416234598765] Se si spedisce utilizzando il protocollo MySMS la ricezione del dato sarà come il seguente: +OK 1 xxxxx [<ID-T>] Esempio: +OK 1 1000 [05043416234512345] La variabile ID-T viene quindi trasmessa tra parentesi quadre ed è lunga 17 caratteri numerici. 17 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 18. Attenzione che per motivi di espansione del sistema potrebbero aumentare,quindi utilizzare i numeri ricevuti tra parentesi quadre. Se si spedisce utilizzando il protocollo UCP la variabile ID-T la si trova all’interno della risposta del comando 51 nella forma 11/00045/R/51/A//<CELLULARE>:<ID-T>/AF Esempio: 11/00045/R/51/A//00393281234567:05043416234512345/AF Ricezione della notifica via http POST Per abilitarsi alla ricezione della notifica sms via POST è necessario creare nel proprio sistema uno script che possa accettare delle variabili ben definite, compreso il valore ID-T ricevuto in fase di spedizione. L’URL di questo script deve essere memorizzato nel proprio account,sarà compito del sistema NETFUN ad ogni avvenuta notifica lanciare il relativo script che accetta le seguenti variabili tramite il metodo POST: smsDATA=<ID-T> smsDATADELIVERY=data ed ora di ricezione da parte dell’utente del messaggio,formato yymmddhhmmss smsNUMBER=numero di cellulare da cui proviene la notifica,ovvero cellulare di destinazione del sms smsuser=login di spedizione smsDELIVERY=<stato delivery> S= ok sms consegnato N= Non consegnato smsSender= mittente del messaggio spedito (opzionale) Ricezione della notifica via SMTP Per abilitarsi alla ricezione della notifica sms via SMTP è necessario indicare un indirizzo di e-mail valido nell’area riservata sul sito www.netfunitalia.it Questo indirizzo email deve essere memorizzato nel proprio account,sarà compito del sistema NETFUN ad ogni avvenuta notifica spedire una E-MAIL con un OGGETTO (subject email) specifico,come il seguente: Oggetto della E-Mail in caso di notifica OGGETTO=”Delivered to <cellulare> Login:<user> Sender:<mittente> Time:<dataora> SCTS:<ID- T> Delivery Time:<dataoradelivery>” Oggetto della E-Mail in caso di notifica negativa OGGETTO=”Not delivered to <cellulare> Login:<user> Sender:<mittente> Time:<dataora> SCTS:<ID-T> Delivery Time:<dataoradelivery>” 2) Il cliente richiede la notifica a NetFun In questa modalità è il cliente che decide di richiedere le notifiche a NetFun attraverso una query Per poter utilizzare questa funzione è obbligatorio inviare gli sms ai seguenti indirizzi: URL Spedizione Con quale account è possibile spedire D http://62.48.53.75/post/send.php in chiaro Account principale E http://62.48.53.75/post/nomeReseller/send.php * in chiaro Subaccount /cliente del rivenditore *nomeReselles = Username del rivenditore Richiesta dettagli delivery L'utente può chiedere dettagli sullo stato del delivery direttamente tramite richiesta POST o GET. L'indirizzo da richiamare per l'interrogazione è: utenti netfun – http://62.48.53.75/detailsdelivery/request.php utenti subaccount – http://62.48.53.75/detailsdelivery/nomeReseller/request.php Variabili da passare tramite metodo POST o metodo GET (il sistema accetta entrambi, da preferire metodo POST) • smsUSER: Username di accesso al servizio SMS • smsPASSWORD o smsPSW: Password di accesso al servizio SMS 18 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 19. • smsRECEIVER: E' possibile, indicando questa variabile, cercare per il numero del ricevente. E' possibile specificare solo gli ultimi numeri, ad esempio per +393331234567 basta specificare 1234567 • smsSTATUS: E' possibile cercare solo i messaggi consegnati oppure no; Valori accettati: SI – OK – YES (per gli SMS consegnati) KO – NO (per gli SMS non consegnati) • smsDATE: E' possibile cercare per data, il formato corretto è YYYYMMDD, dove: YYYY - sta per anno a 4 cifre quindi ad esempio: 2009 MM - sta per mese a due cifre, per gennaio indicare 01 DD - sta per giorno a 2 cifre, per il 6 indicare quindi 06 Esempio per indicare il 7 febbraio 2009: 20090207 E possibile indicare un intervallo di date, separando i valori con un trattino (-) esempio: 20080101-20081231 cerca gli SMS dal primo gennaio 2009 al 31 dicembre 2009. • smsHOUR: E' possibile filtrare gli SMS in base all'ora. Il formato corretto è Hhmm dove HH - sta per ora in formato 24 a 2 cifre. mm - sta per minuti in formato 2 cifre. Per filtrare quindi i messaggi iniviati alle 4 del pomeriggio: 1600 E' possibile, come per smsDATE, indicare un intervallo, esempio: 1600-2130 (quindi dalle 16 alle 21:30) • smsIDT: E' possibile anche cercare per uno specifico IDT. La ricerca è di tipo LIKE %%, quindi basta indicare anche solo parte dell'IDT • smsFORMAT: se a questa variabile viene impostato il valore =0 il separatore di righe corrisponderà a CR+LF Se invece il valore impostato sarà =1 allora il separatore sarà un PIPE | Errori restituiti: -Err 999: Error sconosciuto -Err 888: Rivenditore non valido o non esistente -Err 777: Nessuna variabile inviata -Err 001: Login errato Il sistema restituisce un file CSV con i valori separati dal simbolo | o da CR+LF La prima riga (intestazione) indica i nomi dei campi, qui sotto riportati: N|Date|GateWay|Number|Sender|DeliveryStatus|DeliveryDate Dove: N E' un numero progressivo Date Indica la data di invio dell'SMS, formato YYYY-MM-DD HH-mm Gateway Gateway utilizzato per l'invio Number Destinatario dell'SMS Sender Mittente personalizzato DeliveryStatus Indica lo stato del delivery: W – Y – N (Attesa – Si – No) DeliveryDate Indica la data di consegna dell'SMS 2.3) Wap Push La tecnologia Wap-Push permette di inviare immagini, suoni e video sui cellulari abilitati attraverso un semplice sms. Il messaggio che l'utente riceverà è diverso dal classico sms, corrisponde ad un testo con una URL, il Wap Push infatti inviterà l'utente a collegarsi attraverso la propria connessione (WAP-EDGE-GPRS-UMTS) per il downloads del file Come spedire i Wap-Push : Basta spedire attraverso il gateway 7 si possono utilizzare tutti i protocolli disponibili, anche il MySMS nel testo va scritto l'URL + il TITOLO 19 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 20. esempio: www.miosito.it/immagine.jpg caro cliente, ti invio la brochure per i prodotti che ti possono interessare LIMITI: - non si possono superare i 115 caratteri - non sono ammesse nel TITOLO vocali accentate, solo caratteri e numeri. 2.4) SMS Concatenati La lunghezza massima di un sms è di 160 caratteri, ma è possibile concatenare (unire) più messaggi e ottenere un unico messaggio lungo anche migliaia di caratteri. E’ possibile spedire sms lunghi e concatenare un numero massimo di 99 sms. Ogni sms però ha un limite massimo di 153 caratteri (non 160) e bisogna porre attenzione al simbolo dell’euro € che corrisponde a 2 caratteri. Per inviare gli sms concatenati ci sono 2 soluzioni: 1) Spedire la variabile UDH 2) Non spedire la variabile UDH 1) Spedire la variabile UDH Questa modalità funziona solo se si spedisce verso i seguenti indirizzi: URL Spedizione Con quale account è possibile spedire A http://213.140.1.123/PostNetfun.asp in chiaro Account principale B https://sms.netfunitalia.it/PostNetFun.asp SSL (criptata) Account principale C https://sms.netfunitalia.it/PostNetFunID.asp SSL (criptata) + IDT* Account principale Nella trasmissione degli sms occorre spedire il parametro smsUdh (16 cifre) Esempio di smsUdh: 0106050003000201 0106050003000201 È il parametro UDH, è un codice esadecimale che deve interpretare il cellulare 0106050003 È la parte che deve rimanere intatta 00 È l’ID del gruppo di sms da concatenare (tutti gli sms che fanno parte di un unico gruppo devono avere lo stesso ID) 0201 Indica che sto spedendo il primo di 2 messaggi, (quindi il gruppo è formato da 2 sms) Esempio GET: del primo sms https://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittent e&smsTEXT=primo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=0106050 003000201 secondo sms https://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittent e&smsTEXT=%20secondo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=01 06050003000202 2) Non spedire la variabile UDH Questa modalità funziona solo se si spedisce verso i seguenti indirizzi: URL Spedizione Con quale account è possibile spedire D http://62.48.53.75/post/send.php in chiaro Account principale –se spedisci su pannello www.smsviainternet.it E http://62.48.53.75/post/nomeReseller/send.php in chiaro Subaccount /cliente del rivenditore 20 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 21. In questa modalità il cliente non dovrà preoccuparsi di specificare la variabile UDH, perché il concatenamento verrà gestito in automatico da NetFun, il sistema provvederà a suddividere in automatico gli sms in 153 caratteri e a comunicare alla SIM che riceverà gli sms, il parametro UDH. SMS CONCATENATI via e-mail Il cliente ha la possibilità inviare sms concatenati e di non specificare il parametro UDH anche se utilizza il protocollo SMTP. Inviando infatti le e-mail a: utenti netfun - email alla quale inviare i dati: smtp@smsviainternet.it utenti subaccount – email alla quale inviare i dati: (deciso dal rivenditore dal suo pannello) Non bisogna passare nessuna variabile al sistema, se il testo inviato contiene più di 160 caratteri, in automatico vengono suddivisi in blocchi da 153 caratteri (per messaggio) per poi essere ri-concatenati dal cellulare. Esempio: se viene spedito un messaggio di 500 caratteri, il sistema li suddivide prima in 4 messaggi (500 : 153 = 4) ovvero 3 sms da 153 caratteri + 1 sms da 41 caratteri e poi in automatico vengono accorpati in un solo sms che riceverà l’utente sul proprio telefonino. 2.5) SMS in differita Il servizio di sms in differita permette di impostare una data ed un’ora per le proprie spedizioni, è possibile utilizzare questa funzione attraverso il protocollo HTTP/POST e il protocollo SMTP SMS in differita con Protocollo HTTP/POST Questa modalità funziona solo se si spedisce verso i seguenti indirizzi: URL Spedizione Con quale account è possibile spedire D http://62.48.53.75/post/send.php in chiaro Account principale –se spedisci su pannello www.smsviainternet.it E http://62.48.53.75/post/nomeReseller/send.php in chiaro Subaccount /cliente del rivenditore Oltre ai vari parametri che il cliente dovrà specificare (vedi paragrafo 1.1) Per gli sms in differita occore spedire il seguente parametro: smsDATE o di smsSENDTO 2009-03-12 15:00 quindi AAAA-MM-GG oo:mm oppure 200903121500 qundi AAAAMMGGoomm ma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio: now – invia subito 10 September 2009 – invio programmato il 10 settembre 2009 a mezzanotte +1 day – (tra un giorno) +1 week – tra una settimana +2 days 4 hours 2 seconds – invio tra 2 giorni, 4 ore e 2 secondi da ora next monday – invia il prossimo lunedì SMS in differita con Protocollo SMTP Questa modalità funziona solo se si spedisce verso l’indirizzo smtp@smsviainternet.it o verso l’indirizzo e- mail di un rivenditore. Per rivedere i parametri da utilizzare nell’e-mail (vedi paragrafo 1.2) Invio posticipato nel body dell’e-mail E' possibile stabilire un ora di invio per i messaggi. L'ora e la data devono essere impostati tra 3 parentesi quadre, esempio: <<Ciao, sono lieto di invitarti alla mia festa [[[2009-03-12 15:00]]] [+393481234567,+393359876543] ((6))>> Il formato della data, puo' essere: 2009-03-12 15:00 quindi AAAA-MM-GG oo:mm 21 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 22. oppure 200903121500 qundi AAAAMMGGoomm ma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio: now – invia subito 10 September 2009 – invio programmato il 10 settembre 2009 a mezzanotte +1 day – (tra un giorno) +1 week – tra una settimana +2 days 4 hours 2 seconds – invio tra 2 giorni, 4 ore e 2 secondi da ora next monday – invia il prossimo lunedì. Se la data non viene scritta nel modo corretto, il sistema invia immediatamente. 2.6) Simulazione d’invio Inviando un normale SMS, mettendo però come destinatario "+11111111111" il messaggio non viene spedito ma viene fatta una simulazione di invio. Il programma cioè testa la corretta sintassi del messaggio e comunica all'utente il risultato della simulazione. Le simulazioni non vengono contate come messaggi inviati. 2.7) Unicode Il supporto UNICODE (UCS-2 e UTF-8 concatenati verso gli operatori abilitati) consente l'utilizzo dei caratteri di tutti gli alfabeti inclusi il cinese, l'arabo, il giapponese, il greco etc. Cos'è l'Unicode. Praticamente i computer dialogano utilizzando dei numeri e l'Unicode fornisce un numero unico per ogni carattere digitato, qualunque sia la piattaforma, il programma o il linguaggio utilizzato. Il consorzio Unicode (http://www.unicode.org ) è un'organizzazione non-profit fondata per sviluppare, estendere e promuovere l'uso dello standard di Unicode. Il nostro SMS Gateway supporta anche i messaggi UNICODE concatenati verso tutti gli operatori abilitati. Su http://www.unicode.org/charts è possibile trovare tutti i caratteri grafici raffigurabili attraverso l'uso della codifica Unicode. Unicode tramite Protocollo HTTP/POST Questa modalità funziona solo se si spedisce via POST verso i seguenti indirizzi: URL Spedizione Con quale account è possibile spedire A http://213.140.1.123/PostNetfun.asp in chiaro Account principale B https://sms.netfunitalia.it/PostNetFun.asp SSL (criptata) Account principale C https://sms.netfunitalia.it/PostNetFunID.asp SSL (criptata) + IDT* Account principale Per inviare un messaggio utilizzando caratteri Unicode bisogna indicare nel parametro smsTYPE il file.UNI Il testo che dev’essere inviato deve essere convertito in esadecimale Ogni 4 caratteri corrispondono a 2 byte in formato esadecimale. Esempio: Per spedire utilizzando caratteri Unicode la parola “Ciao” si dovrà immettere campo smsTEXT la seguente stringa: 004300690061006F Seguendo la tabella dei caratteri Unicode (Basic Latin) , infatti 0043 = C 0069 = i 0061 = a 006F = o Ecco alcuni esempi: testo Conversione in esadecimale (Unicode UCS2) ciao 006300690061006F 123456789 003100320033003400350036003700380039 Уральскія мовы 042304400430043B044C0441043A0456044F0020043C043E0432044B ‫لاروا لابج‬ 062C062806270644002006270648063106270644 22 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 23. -smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazione in formato internazionale,+393291234567) -smsSENDER (max 16 caratteri per il numero telefonico del mittente in formato internazionale oppure max 11 caratteri per una stringa di testo) (NON IN FORMATO UNICODE) -smsTEXT = esadecimale dei caratteri unicode da spedire (senza spazi tra di essi) (max 280 caratteri, 70 visualizzati sul cellulare) -smsUSER = il proprio user name -smsPASSWORD = la propria password -smsGATEWAY = O,1,4 (il numero del gateway desiderato) -smsTYPE = file.uni Unicode tramite il MySMS (protocollo TCP/IP) Per inviare un messaggio utilizzando caratteri Unicode con il motore MySMS, occorre seguire la seguente procedura: 1) Creare un file di testo (cioè con estensione .TXT) 2) Aprire il file con un editor di testo e scrivere al suo interno la lista dei caratteri Unicode in formato esadecimale (in chiaro) senza nessuno spazio tra un carattere e l’altro (Max. 280 caratteri, 70 visualizzati sul cellulare) 3) Rinominare il file nel seguente modo Ddestinatario_Oorigine_Ggateway_Fnomefile.UNI In cui: - destinatario è il numero (in formato internazionale) al quale si vuole spedire il messaggio. (Campo obbligatorio) (MAX 16 caratteri numerici) - origine è il nome o il numero da visualizzare come mittente del messaggio (Campo opzionale, se non specificato verrà usato quello di default) (MAX 16 Caratteri per un numero in formato internazionale o MAX 11 caratteri per una stringa di testo) (NON PUO’ ESSERE IN FORMATO UNICODE) - gateway è il numero del gateway da utilizzare per spedire il messaggio (O,1,4) (Campo obbligatorio) - nomefile è il nome del file di testo (Campo obbligatorio) 4) Spostare il file nella propria cartella INBOX Ogni 4 caratteri corrispondono a 2 byte in formato esadecimale. Esempio: Per spedire utilizzando caratteri Unicode la parola “Ciao” con gateway 1 si dovrà immettere nel file di testo la seguente stringa: 004300690061006F Il file verrà poi rinominato nel seguente modo D393471234567_OTest_G1_Fprova-unicode.uni 2.8) Loghi, suonerie e Flash Message LOGHI OPERATORI Un logo operatore è una piccola immagine che può essere visualizzata sul cellulare. Il logo operatore ormai non viene più utilizzato sui cellulari di ultima generazione, ma per chi possiede ancora vecchi modelli nokia con display monocromatici è ancora possibile riceverli, semplicemente inviando un SMS. La grandezza di ogni singolo Logo Operatore è di 72x14 pixels (Formato standard) L’invio di un logo operatore tramite protocollo POST può avvenire solo alle seguenti pagine: 23 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 24. URL Spedizione Con quale account è possibile spedire A http://213.140.1.123/PostNetfun.asp in chiaro Account principale B https://sms.netfunitalia.it/PostNetFun.asp SSL (criptata) Account principale C https://sms.netfunitalia.it/PostNetFunID.asp SSL (criptata) + IDT* Account principale Esempio -smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazione in formato internazionale,+393291234567) -smsSENDER = 222222222222 (12 volte la cifra "2") -smsTEXT = logo in formato esadecimale (OTA BITMAP) -smsUSER = il proprio user name -smsPASSWORD = la propria password -smsNETCODE = network code dell’operatore desiderato (Opzionale) -smsGATEWAY = O,1,4 (il numero del gateway desiderato; 0=automatico) -smsTYPE = file.sms L'OTA Bitmap è uno standard realizzato da Nokia. L’idea è semplice, bisogna controllare ogni singolo pixel ed assegnargli un valore predefinito: se il pixel è bianco _ Hex(30), se è nero Hex(31) Ecco un esempio di un logo in formato OTA Bitmap: 00480E01003E03E0007E01F000007E07F000FF03F80000FE0F7801E7871C0001EE0E3801C3871C0001CE0 C380183871C00000E0038E00F871C00000E0078E01F071C00000E00F0E00F071C00000E01E00003871C0 0000E03C00183871C00000E07F8E1C7871C 00000E0FF8E0FF03F800000E0FF8E07E01F000000000000000000000 N.B. Ogni logo in formato OTA Bitmap deve iniziare con la string 00480E01. SUONERIE Una suoneria (o ringtone) può essere inviata ad un cellulare incorporando lo spartito musicale direttamente nel file SMS. Esiste uno standard realizzato da Nokia, chiamato Hex Dump, per l'utilizzo di questo servizio. Come per i loghi operatore, in Internet si possono trovare svariate suonerie in formato RTTTL e programmi capaci di convertire il formato RTTTL in Hex. Le suonerie possono essere inviate circa nello stesso modo dei loghi operatore: Esempio -smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazione in formato internazionale,+393291234567) -smsSENDER = 333333333333 (12 volte la cifra "3") -smsTEXT = ringtone in formato esadecimale -smsUSER = il proprio user name -smsPASSWORD = la propria password -smsGATEWAY = O,1,4 (il numero del gateway desiderato; 0=automatico) -smsTYPE = file.sms Ecco un esempio di suoneria in formato esadecimale: 024A3A5D4DD15D85C9CCC404005A9912CC2CC2CC36551629461361161B29649461361161B296494613 614611224820B30B30B30D95458A5184D84586CA5925184D84586CA5925184D85184489000 FLASH MESSAGE Un Flash Message è un SMS che viene visualizzato immediatamente sullo schermo del cellulare. In questo modo il ricevente non dovrà utilizzare il menù messaggi del cellulare per visualizzarlo. Anche i flash message non vengono più utilizzati sui cellulari di ultima generazione. Per inviare un Flash Message sui cellulari Nokia con display monocromatico basta settare il paramentro smsTYPE=file.FLH 24 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 25. 2.9) HLR Il servizio HLR Lookup consente di sapere se un numero di cellulare esiste e a quale operatore appartiene l'abbonato. Queste informazioni possono tornare utili per ripulire le proprie liste da numeri diventati oramai irraggiungibili in quanto non più abilitati, e per poter instradare correttamente il proprio traffico SMS. Come effettuare una chiamata HLR : Con qualunque protocollo, anche con il MySMS, basta semplicemente inviare un sms verso il gateway 8 Cosa si riceverà per ogni richiesta HLR? : Di seguito un esempio di cosa si potrà ricevere dopo aver inviato un sms al gateway 8: ITA 22F201 Vodafone Omnitel GSM 222010 dove ITA Paese Network 22F201 Code Vodafone Omnitel Operatore GSM Tipologia 222010 formato IMSI In che modo si può ricevere la risposta dell'HLR ? : La risposta viene visualizzata nel pannello di controllo sul sito www.netfunitalia.it, come se fosse stato spedito un sms normale Ma sarà possibile riceverla anche su una propria URL e/o su un proprio indirizzo e-mail, basta attivare la ricezione dei delivery 25 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 26. 3.1) Codici di errore via POST Forniamo di seguito 2 tabelle con i codici di transizione dei messaggi Per i messaggi che vengono inviati ai seguenti indirizzi: URL Spedizione Con quale account è possibile spedire A http://213.140.1.123/PostNetfun.asp in chiaro Account principale B https://sms.netfunitalia.it/PostNetFun.asp SSL (criptata) Account principale C https://sms.netfunitalia.it/PostNetFunID.asp SSL (criptata) + IDT* Account principale Questi sono i codici di riferimento Risposta dalla pagina ASP Significato Nessuna risposta Timeout / Indirizzo errato / Server Down +Ok xxxxx Messaggio accettato, il credito in millesimi d’Euro è xxxxx +Ok xxxxx [05043416234512345] Messaggio accettato, il credito in millesimi d’Euro è xxxxx, [IDT] -Err 001 Incorrect user or password -Err 002 No credits -Err 004 GSM number incorrect -Err 005 SmsNUMBER not specified -Err 006 SmsTEXT not specified Per i messaggi che vengono inviati ai seguenti indirizzi: URL Spedizione Con quale account è possibile spedire D http://62.48.53.75/post/send.php in chiaro Account principale –se spedisci su pannello www.smsviainternet.it E http://62.48.53.75/post/nomeReseller/send.php in chiaro Subaccount /cliente del rivenditore Questi sono i codici di riferimento Risposta dalla pagina ASP Significato +Ok xxxx (INVIATI:0, NON INVIATI:0, TOTALI:0) Messaggio inviato, il credito in millesimi è xxxx (questo accade quando si inviano fino a 50 sms per volta, quindi settando smsNUMBERS +Ok xxxx [yyyyyyyyyyyyyyy] Messaggio inviato, il credito in millesimi è xxxx [IDT] (solo se inviato un sms per volta, IDT serve per il delivery) -Err 999 Errore interno al server -Err 888 Rivenditore non valido o non esistente -Err 777 Nessuna variabile inviata -Err 001 Login errato -Err 002 Nessun credito -Err 003 Formato numero (o in caso di numeri multipli uno dei numeri) non valido/i -Err 004 Numero o numeri non specificato/i -Err 005 Troppi numeri specificati, il massimo per smsNUMBERS è di 50 destinatari per volta -Err 006 Testo non specificato -Err 007 Mittente personalizato errato. Lunghezza massima di 16 caratteri numerici oppure 11 caratteri alfanumerici. -Err 008 Formato data invio non valido -Err 009 Data invio trascorsa. (almeno un minuto dall'invio) -Err 100 Messaggio non inviato, i motivi possono essere diversi, errore non Conosciuto, problemi di connessione ecc. 26 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  • 27. 3.2) Codici di notifica (Reason Code) Quando per il parametro smsDELIVERY inviamo la risposta “N” (Non consegnato) sarà possibile conoscere anche il motivo del “Not Delivered”, basta interpretare anche il parametro smsRSN (Reason Code) Questo parametro è composto da 3 cifre. L’elenco completo è visibile alla seguente pagina: http://www.netfunitalia.it/downloads/ReasonCode.pdf Per chi sceglie di ricevere la notifica via e-mail troverà nell’oggetto dell’e-mail il seguente esempio di “Not Deliverd”: Not Delivered to +3933112345678 Login:demo Sender:ciao Time:28/08/2008 16.37.26 SCTS:08083116372643521 Delivery Time:28/08/2008 16.37.34 Dati:The SMS sent to 003933112345678 has not been delivered Reason Code:111 4.1) Pannello Rivenditore I rivenditori avranno a disposizione gratuitamente 2 pannelli (contattare il commerciale di NetFun Italia). 1) il primo è un pannello di amministrazione dove si potranno creare e gestire i subaccounts/clienti, si potranno monitorare le operazioni dei propri clienti, con statistiche grafiche e approfondite, si potranno esportare i logs degli storici degli sms inviati e ricevuti e ovviamente si potranno fare ricariche sui subaccounts impostando per ognuno di essi anche il costo di vendita degli sms 2) Il secondo pannello viene utilizzato dal subaccount/cliente per poter eseguire una serie di operazioni: -Invio di sms, storico sms inviati, storico sms ricevuti, e una decina di altri servizi. Questo pannello viene personalizzato con il logo/banner del cliente e non saranno presenti riferimenti alla NetFun Italia, al cliente sarà assegnato un proprio indirizzo. Il pannello ha una grafica avanzata e sarà identico a www.smsviainternet.it (possono accedere i clienti registrati sul sito www.nertfunitalia.it) 4.2) Ricarica credito cliente tramite POST URL per comunicare tramite POST (solo per reseller): utenti subaccount – http://62.48.53.75/post/nomeReseller/recharge.php Le variabili (codificate) da inviare tramite POST sono: smsUSER username di accesso reseller smsPASSWORD oppure smsPSW password di accesso reseller smsSUBACCOUNT Nome del subaacount da ricaricare (appartenente al reseller. SmsCREDIT Credito da assegnare in centesimi di euro. Esempio per 10,00 € scrivere 1000 Se impostato a 0, restituisce il credito del subaccount senza inserire alcuna transazione. Questi gli errori/messaggi restituiti Risposta dalla pagina Significato ASP +Ok xxxx Transazione inserita con successo, il credito in millesimi è xxxx -Err 999 Errore interno al server -Err 888 Rivenditore non valido o non esistente -Err 777 Nessuna variabile inviata -Err 001 Login errato -Err 002 Valore credito errato -Err 003 Subaccount non esistente 27 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4