Documentazione tecnica                                          Aggiornato al 12/10/2010                        www.netfun...
1.1) HTTP/POSTPer inviare SMS via Post basta avare un account principale (occorre essere registrati sul sitowww.netfunital...
Ovvero: +ok indica che i dati trasmessi sono corretti e 1000 indica che il proprio credito è di 1000millesimi (1 euro)   •...
Per chi intende utilizzare la spedizione via POST verso il pannello www.smsviainternet.it                              URL...
fputs($fp,   "POST /send/post.php HTTP/1.0rn");fputs($fp,   "Host: " . HOST . "rn");fputs($fp,   "User-Agent: PHP/" . phpv...
[+393480123456,+393389876543,+393207878787] ((6))7|||Questo invece è il testo del secondo messaggio[[mittente]][+393926565...
https://sms.netfunitalia.it/Services/soap/soap.asp?wsdlDESCRIZIONE VARIABILI:correlationId = numero identificativo del mes...
<tns:password> Password della registrazione </tns:password>  </tns:SendRequest></soap:Body></soap:Envelope>1.5) MYSMSIl My...
‘QUESTA FUNZIONE QUANDO RICHIAMATA CREA IL FILE *.SMS NELLA TUA DIRECTORY SMS IN-FOLDERPrivate Function MySMSFile(FILENAME...
If (Left(SMSNUMBER, 6) <> "+39") Then                                            ERROR_MSG = ""                           ...
<title>NetFunItalia Example FORM</title><%SE NON CI SONO MESSAGGI ELIMINO IL JS PER IL POPUPIf ERROR_MSG <> "" Then%><scri...
var validGroups = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) {   ch = checkStr.charAt...
theForm.SMSTEXT.focus();     return (false); } if (theForm.SMSTEXT.value.length < 1) {   alert("Please enter at least 1 ch...
<p align="center">+<!--webbot bot="Validation" s-display-name="Mobile Phone Number" s-data-type="Integer" s-number-separat...
1.6) SMSviaINTERNETSMSviaINTERNET.it ideato e realizzato da NetFun Italia, è il pannello di controllo SMS più completo che...
Esempio ricezione SMSCcosa riceve il vostro script:Esempio GEThttp://www.vostrosito.com/vostroasp.asp?Phone=%2B39320204326...
Restituzione della notifica:        La SIM comunica all’operatore                                                      Net...
Attenzione che per motivi di espansione del sistema potrebbero aumentare,quindi utilizzare i numeriricevuti tra parentesi ...
• smsRECEIVER: E possibile, indicando questa variabile, cercare per il numero del ricevente. E possibilespecificare solo g...
esempio:www.miosito.it/immagine.jpg caro cliente, ti invio la brochure per i prodotti che ti possono interessareLIMITI:- n...
In questa modalità il cliente non dovrà preoccuparsi di specificare la variabile UDH, perché ilconcatenamento verrà gestit...
oppure200903121500 qundi AAAAMMGGoommma è possibile anche specificare una stringa (in inglese, per indicare quando inviare...
-smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazionein formato internazio...
URL                                      Spedizione                     Con quale account è possibile spedire A   http://2...
2.9) HLRIl servizio HLR Lookup consente di sapere se un numero di cellulare esiste e a quale operatore appartienelabbonato...
3.1) Codici di errore via POSTForniamo di seguito 2 tabelle con i codici di transizione dei messaggiPer i messaggi che ven...
3.2) Codici di notifica (Reason Code)Quando per il parametro smsDELIVERY inviamo la risposta “N” (Non consegnato) sarà pos...
Upcoming SlideShare
Loading in...5
×

Netfun italia

1,043

Published on

gdftged

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,043
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Netfun italia

  1. 1. Documentazione tecnica Aggiornato al 12/10/2010 www.netfunitalia.it - www.smsplan.com - www.smsviainternet.itTutti i diritti riservati. Nessuna parte del presente documento può essere riprodotto in qualsiasi forma senza lautorizzazione scritta del titolare delcopyright. Il contenuto di questo documento sono soggette a revisione senza preavviso a causa di continui progressi nella metodologia, progettazionee sviluppo. NetFun Italia non avrà alcuna responsabilità per eventuali errori o danni di qualsiasi natura derivanti dallutilizzo di questo documento.NetFun Italia permette ai clienti di inviare SMS via web. Per poter utilizzare il servizio è necessario collegarsi adInternet con una buona connessione. La soluzione per spedire i messaggi può essere tarata sulle specifiche esigenzedel 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. 2. 1.1) HTTP/POSTPer inviare SMS via Post basta avare un account principale (occorre essere registrati sul sitowww.netfunitalia.it) e con le credenziali scelte al momento della registrazione, spedire una richiesta HTTPPOST ad uno dei seguenti indirizzi a scelta, tali pagine confermeranno in modo istantaneo l’esito dellatransazione 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 dellutenza 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 pixelsAttenzione!! 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 1http://213.140.1.123/PostNetfun.asp?smsUSER=USER&smsPASSWORD=PASSWORD&smsSENDER=mittente&smsTEXT=ciao%20come%20stai&smsGATEWAY=1&smsNUMBER=+39348xxxxxxxRisposta 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. 3. Ovvero: +ok indica che i dati trasmessi sono corretti e 1000 indica che il proprio credito è di 1000millesimi (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=15value=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. 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 accessosmsPASSWORD oppure smsPSW password di accessosmsDATE oppure smsSENDTO data di invio, vedi dettagli per formatosmsSENDER mittente personalizzatosmsTEXT Testo del messaggiosmsNUMBER destinatario singolosmsNUMBERS destinatari multipli, sostituisce smsNUMBERsmsGATEWAY Gateway di invio, default 0smsRESPONSE-HTML Se impostato a 1 la risposta del server saràin formato HTMLIn dettaglio, per inviare un SMS ad un solo destinatario, bisogna specificare il numero insmsNUMBER, esempio:+393331234567in tal caso si avrà nella risposta anche lIDT necessario per il deliveryper 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 unavirgola, esempio:+393331234567,+332221234567,+223336543217I numeri possono essere specificati in formato internazionale (consigliato) quindi facendo seguire ilprefisso della nazione (esempio +39 per lItalia) dal numero; oppure inserire il numero senza prefisso, intal 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) lavariabile smsRESPONSE-HTMLLa codifica che dev’essere utilizzata nella trasmissione dei dati è UTF-8In 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">xxxxxx</form>Se invece vengono inviati tramite php o altri linguaggi (usando CURL o socket) bisogna impostare lagiusta codifica.esempio di invio dati tramite php e socketrichiede 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 formatocorretto, 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. 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-mailCi 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 criptateutenti netfun - email alla quale inviare i dati: smtp@smsviainternet.itutenti subaccount – email alla quale inviare i dati: (deciso dal rivenditore dal suo pannello)-ALLEGATOOgni 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 stautilizzando un account principale,mentre i subaccounts devono scaricarlo nel servizio “E-MAIL verso SMS” del pannello creato per ilrivenditore.-Loggetto corrisponde alla usernameNel corpo del messaggio ci saranno sia il testo dellsms, sia i numeri dei destinatari.Esempio:per spedire il testo ciao al numero +393301231231si scriverà:<<Ciao [+393301231231]>>(importante sono i simboli << e >> rispettivamente allinizio e alla fine del testo e i simboli Radicequadrata ([ 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, incaso contrario verra aggiunto il prefisso italiano (+39)-Altri parametriMittente e GatewayIl mittente va indicato tra 2 parentesi quadre di apertura e chiusura (non più di 16 cifre se numerico, enon più di 11 caratteri se alfanumerico)Il Gateway va indicato tra 2 parentesi tonde di apertura e di chiusuraEsempio:<<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 Userin assenza della variabile ((numero gateway)), i messaggi passeranno per il gateway didefault “0”e possibile anche impostare in una sola e-mail più di un testo come nellesempio riportatodi 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. 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 allinizio e alla fine,in più i messaggi devono essere intervallati tra loro con i seguenti simboli: ||| (3 pipe in fila)NON HA IMPORTANZA LORDINE E LA DISPOSIZIONE DELLE VARIABILI 2) invio di e-mail senza allegatoLa 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 sitowww.netfunitalia.itinviare l’e-mail al seguente indirizzo: smtp@smsplan.comloggetto dovrà essere: il proprio UsernameNel corpo del messaggio ci saranno le stesse variabili descritte sopraulteriori informazioni sui gateway: http://www.netfunitalia.it/sms/gateway.html1.3) UCPE’ possibile spedire SMS tramite un sistema UCP utilizzando I seguenti parametri:Ip = 213.140.1.123User/LA = User name della vostra registrazione su NetFun ItaliaPassword = Password della vostra registrazione su NetFun ItaliaPort 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 InComando UCP 51 = Inviare il messaggioComando UCP 13 = Segnale Keep AlivePer visionare il Protocollo UCP (SMSC –EMI)http://www.netfunitalia.it/downloads/SMSC_EMI_Specification.PDF1.4) SOAPE’ possibile spedire SMS tramite SOAP utilizzando il seguente file WSDL:https://sms.netfunitalia.it/Services/soap/NetfunWSDL.zipo visualizzarlo di seguito: 6 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  7. 7. https://sms.netfunitalia.it/Services/soap/soap.asp?wsdlDESCRIZIONE VARIABILI:correlationId = numero identificativo del messaggiooriginatingAddress = mittenteoriginatorTON = (1 se mittente alfanumerico) - (0 se mittente numerico)destinationAddress = destinatario messaggiouserData = testo messaggiouserDataHeader = UDH per concatenamenti messaggiDCS = Data coding scheme valore forzato a 17username = User della registrazionepassword = Password della registrazioneESEMPI:di seguito il file di esempio Netfun.vb zippatphttp://www.netfunitalia.it//downloads/Esempio_SOAP_VB.zipDopo avere incluso in un progetto .NET il Netfun.vbDim MyClientSoap As New Netfun.Soap.SmsApiNetfunDim MyDatiSoap As New Netfun.Soap.SendRequestDim MyRispostaSoap As Netfun.Soap.SendResponseMyDatiSoap.userDataHeader = "#NULL#"MyDatiSoap.originatorTON = "1"MyDatiSoap.originatingAddress = "MiaAzienda"MyDatiSoap.destinationAddress = "+393341234567"MyDatiSoap.correlationId = "mio_id_messaggio"MyDatiSoap.userData = "Test messaggio"MyDatiSoap.username = User della registrazioneMyDatiSoap.password = Password della registrazioneMyDatiSoap.DCS = 17MyRispostaSoap = MyClientSoap.send(MyDatiSoap)If Not MyRispostaSoap Is Nothing Then MsgBox(MyRispostaSoap.responseMessage)Else MsgBox("Nessuna risposta")End IfEsempio di invio in XML<?xml version="1.0" encoding="utf-8"?> <soap:Envelopexmlns: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. 8. <tns:password> Password della registrazione </tns:password> </tns:SendRequest></soap:Body></soap:Envelope>1.5) MYSMSIl MySMS è un software sviluppato in Visual Basic da NetFun Italia e sfrutta il protocollo TCP/IPFacilissimo da utilizzare e adatto ai meno espertiPermette di avere una velocità di spedizione tra le più elevate nel mondo. Circa 100 sms al secondo.Il software richiede una installazione in ambiente WindowsDi 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 delproprio Windows Server.Il programmatore non dovrà fare altro che creare nella cartella INBOX i file .sms che il motore divorerà inun instante, il motore MySMS penserà poi alla connessione e alla trasmissione dei dati. Come lavora il programmaMySMS cerca periodicamente nella directory “Inbox” i file con estensione .sms .gif .bmp .jpg .jpeg .nol.lnol .rtttl .midi .mid .flh .uniSe 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 vienespostato nella directory locale “Outbox”. Come scrivere file .sms tramite un programmaPer creare un programma che scriva file .sms e li metta nella cartella Inbox, puoi utilizzare il linguaggio diprogrammazione 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 IfIl 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 delprogramma. Come scrivere file .sms tramite un web formPer 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 percorsodella 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. 9. ‘QUESTA FUNZIONE QUANDO RICHIAMATA CREA IL FILE *.SMS NELLA TUA DIRECTORY SMS IN-FOLDERPrivate Function MySMSFile(FILENAME1,SMSNUMBER1,SMSFROM1,SMSMSG1)Dim MYFILE1,MySMSInPath,MyTitleATTENZIONE LA DIRCTORY "C:smsin" NECESSITA DEI PERMESSI PER L’UTENTE EVERYONE‘OPPURE PUO’ ESSERE UNA VIRTUAL DIRECTORY DEL TUO SITOMySMSInPath = "C:smsin" PERCORSO PER SMS IN-FOLDERMyTitle = "by www.smsplan.com" MESSAGGIO PROMOZIONALE FACOLTATIVOMYFILE1 = 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 FunctionDim FILENAME,SMSNUMBER,SMSFROM,SMSMSGDim ERROR_MSG,GATEWAYLEGGO LE VARIABILI PASSATEMI DAL FORMSMSNUMBER = 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 PARAMETRISPCIFICI SE NECESSARIOESISTE 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 beginwith 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. 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 IfEnd If‘CONTROLLO IL TESTO DEL MESSAGGIO SMSIf Trim(SMSMSG) = "" then ERROR_MSG = "You must digit an SMS message!" NESSUN MESSAGGIO NESSUN MITTENTE NEANCHE IL NUMERO = STA APRENDO IL FORM PER LAPRIMA 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 ENON STA SPEDENDO end ifEnd If’CONTROLLO CHE NON CI SIANO MESSAGGI DI ERRORE EPROSEGUO NELLA CREAZIONE DEL FILEIf 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 GATEWAYAUTOMATICO 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 ifEnd If‘STO SOLO APRENDO IL FORM E NON SPEDENDO SETTAGGIO SENZA MESSAGGI PER IL POPUPIf 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. 11. <title>NetFunItalia Example FORM</title><%SE NON CI SONO MESSAGGI ELIMINO IL JS PER IL POPUPIf 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 POPUPIf 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. 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. 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. 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. 15. 1.6) SMSviaINTERNETSMSviaINTERNET.it ideato e realizzato da NetFun Italia, è il pannello di controllo SMS più completo che siamai stato realizzato, ed è riservato ai propri clienti e rivenditoriIn questa nuova area riservata sono disponibili numerosi servizi gratuiti www.SMSviaINTERNET.it Il Pannello è gratuito e personalizzabile per i nostri rivenditori.2.1) Ricezione SMSPer poter ricevere SMS dai propri clienti o da dispositivi automatici, occorre acquisire una numerazione.Le numerazioni possono essere di due tipi: SIM e SMSCI servizi di ricezione non supportano gli UDH (sms concatenati) e gli UNICODE Ricezione su SIMIl servizio di ricezione sms e squilli su SIM può essere gestito in diversi modi:1) via e-mail su vostro indirizzo2) 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 ricezioneInformazione per i Programmatori:Il programmatore dovrà realizzare uno script che accetti i seguenti parametri:OADC=MittenteADC=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&Date=20051218&Time=1203Le numerazioni su SIM possono ricevere anche squilli, quest’ultimi vengono gestiti come normali sms e nelbody comparirà il testo: RING Ricezione su SMSCNetFun Italia fornisce sia numeri SMSC dedicati, sia SMSC condivisi.I numeri condivisi vengono così denominati perché la stessa numerazione viene utilizzata da più clienti, glisms vengono quindi dirottati al giusto cliente mediante keyword; queste parole chiavi vengono scelte dalcliente, 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. 16. Esempio ricezione SMSCcosa riceve il vostro script:Esempio GEThttp://www.vostrosito.com/vostroasp.asp?Phone=%2B393202043268&Msg=Ciao%20Test%20Ricezione&TimeStamp=25-DEC2005%2012:30:00PM&Sender=%2B393491234567Gli sms ricevuti potranno essere inoltrati su richiesta anche su vostro indirizzo e-mailLe numerazioni SMSC possono ricevere anche sms binari2.2) Ricezione della notificaIl delivery Notification o ricevuta di ritorno è una notifica che invia gratuitamente l’operatore di telefoniaper segnalare l’esito della transazione degli sms.L’operatore invia la notifica alla NetFun Italia, quest’ultima la rende disponibile sul pannello di controllosms del sito www.netfunitalia.itIl cliente in qualunque momento può decidere di poter ricevere le notifiche anche via e-mail o su unapropria pagina web, e potrà farlo scegliendo una delle 2 procedure disponibili:1) NetFun spedisce la notifica al cliente2) Il cliente richiede la notifica a NetFun 1) NetFun spedisce la notifica al clienteIn 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 conseguenzaimportante che il cliente che intende ricevere questo codice abbia precedentemente conservato lo stessocodice che NetFun ha provveduto a comunicare al momento del passaggio dell’sms dal cliente a NetFunSpedizione 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. 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 datiall’indirizzo: https://sms.netfunitalia.it/PostNetFunID.asp Come associare SMS spedito con la notificaPer potere associare SMS con la sua relativa notifica prima di tutto bisogna abilitarsi alla ricezione delservizio. 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 ilrelativo 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 persapere 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’internodel 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. 18. Attenzione che per motivi di espansione del sistema potrebbero aumentare,quindi utilizzare i numeriricevuti tra parentesi quadre. Se si spedisce utilizzando il protocollo UCP la variabile ID-T la si trova all’interno della risposta delcomando 51 nella forma 11/00045/R/51/A//<CELLULARE>:<ID-T>/AFEsempio: 11/00045/R/51/A//00393281234567:05043416234512345/AF Ricezione della notifica via http POSTPer abilitarsi alla ricezione della notifica sms via POST è necessario creare nel proprio sistema uno scriptche 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 adogni 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 yymmddhhmmsssmsNUMBER=numero di cellulare da cui proviene la notifica,ovvero cellulare di destinazione del smssmsuser=login di spedizionesmsDELIVERY=<stato delivery> S= ok sms consegnato N= Non consegnatosmsSender= mittente del messaggio spedito (opzionale) Ricezione della notifica via SMTPPer abilitarsi alla ricezione della notifica sms via SMTP è necessario indicare un indirizzo di e-mail validonell’area riservata sul sito www.netfunitalia.itQuesto indirizzo email deve essere memorizzato nel proprio account,sarà compito del sistema NETFUN adogni avvenuta notifica spedire una E-MAIL con un OGGETTO (subject email) specifico,come il seguente:Oggetto della E-Mail in caso di notificaOGGETTO=”Delivered to <cellulare> Login:<user> Sender:<mittente> Time:<dataora> SCTS:<ID-T> Delivery Time:<dataoradelivery>”Oggetto della E-Mail in caso di notifica negativaOGGETTO=”Not delivered to <cellulare> Login:<user> Sender:<mittente> Time:<dataora>SCTS:<ID-T> Delivery Time:<dataoradelivery>” 2) Il cliente richiede la notifica a NetFunIn questa modalità è il cliente che decide di richiedere le notifiche a NetFun attraverso una queryPer 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 deliveryLutente può chiedere dettagli sullo stato del delivery direttamente tramite richiesta POST o GET.Lindirizzo da richiamare per linterrogazione è:utenti netfun – http://62.48.53.75/detailsdelivery/request.phputenti subaccount – http://62.48.53.75/detailsdelivery/nomeReseller/request.phpVariabili da passare tramite metodo POST o metodo GET (il sistema accetta entrambi, da preferire metodoPOST)• 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. 19. • smsRECEIVER: E possibile, indicando questa variabile, cercare per il numero del ricevente. E possibilespecificare 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: 2009MM - sta per mese a due cifre, per gennaio indicare 01DD - sta per giorno a 2 cifre, per il 6 indicare quindi 06Esempio per indicare il 7 febbraio 2009: 20090207E 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 allora.Il formato corretto è Hhmm doveHH - 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: 1600E 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 è ditipo LIKE %%, quindi basta indicare anche solo parte dellIDT• smsFORMAT: se a questa variabile viene impostato il valore =0 il separatore di righe corrisponderà aCR+LFSe 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 erratoIl sistema restituisce un file CSV con i valori separati dal simbolo | o da CR+LFLa prima riga (intestazione) indica i nomi dei campi, qui sotto riportati:N|Date|GateWay|Number|Sender|DeliveryStatus|DeliveryDateDove:N E un numero progressivoDate Indica la data di invio dellSMS, formato YYYY-MM-DD HH-mmGateway Gateway utilizzato per linvioNumber Destinatario dellSMSSender Mittente personalizzatoDeliveryStatus Indica lo stato del delivery: W – Y – N (Attesa – Si – No)DeliveryDate Indica la data di consegna dellSMS2.3) Wap PushLa tecnologia Wap-Push permette di inviare immagini, suoni e video sui cellulari abilitati attraverso unsemplice sms.Il messaggio che lutente riceverà è diverso dal classico sms, corrisponde ad un testo con una URL, il WapPush infatti inviterà lutente a collegarsi attraverso la propria connessione (WAP-EDGE-GPRS-UMTS) per ildownloads del file Come spedire i Wap-Push :Basta spedire attraverso il gateway 7si possono utilizzare tutti i protocolli disponibili, anche il MySMSnel testo va scritto lURL + il TITOLO 19 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  20. 20. esempio:www.miosito.it/immagine.jpg caro cliente, ti invio la brochure per i prodotti che ti possono interessareLIMITI:- non si possono superare i 115 caratteri- non sono ammesse nel TITOLO vocali accentate, solo caratteri e numeri.2.4) SMS ConcatenatiLa lunghezza massima di un sms è di 160 caratteri, ma è possibile concatenare (unire) più messaggi eottenere 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 simbolodell’euro € che corrisponde a 2 caratteri.Per inviare gli sms concatenati ci sono 2 soluzioni:1) Spedire la variabile UDH2) Non spedire la variabile UDH 1) Spedire la variabile UDHQuesta 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 principaleNella 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 smshttps://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittente&smsTEXT=primo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=0106050003000201secondo smshttps://sms.netfunitalia.it/PostNetfun.asp?smsUSER=xxxxx&smsPASSWORD=xxxxx&smsSENDER=mittente&smsTEXT=%20secondo%20messaggio&smsGATEWAY=1&smsNUMBER=+3934812345678&smsUdh=0106050003000202 2) Non spedire la variabile UDHQuesta 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. 21. In questa modalità il cliente non dovrà preoccuparsi di specificare la variabile UDH, perché ilconcatenamento verrà gestito in automatico da NetFun, il sistema provvederà a suddividere in automaticogli sms in 153 caratteri e a comunicare alla SIM che riceverà gli sms, il parametro UDH.SMS CONCATENATI via e-mailIl cliente ha la possibilità inviare sms concatenati e di non specificare il parametro UDH anche se utilizza ilprotocollo SMTP.Inviando infatti le e-mail a:utenti netfun - email alla quale inviare i dati: smtp@smsviainternet.itutenti 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, inautomatico vengono suddivisi in blocchi da 153 caratteri (per messaggio) per poi essere ri-concatenati dalcellulare.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 inun solo sms che riceverà l’utente sul proprio telefonino.2.5) SMS in differitaIl servizio di sms in differita permette di impostare una data ed un’ora per le proprie spedizioni, è possibileutilizzare questa funzione attraverso il protocollo HTTP/POST e il protocollo SMTP SMS in differita con Protocollo HTTP/POSTQuesta 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 rivenditoreOltre 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 smsSENDTO2009-03-12 15:00 quindi AAAA-MM-GG oo:mmoppure200903121500 qundi AAAAMMGGoommma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio:now – invia subito10 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 oranext monday – invia il prossimo lunedì SMS in differita con Protocollo SMTPQuesta 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-mailE possibile stabilire un ora di invio per i messaggi. Lora e la data devono essere impostati tra3 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. 22. oppure200903121500 qundi AAAAMMGGoommma è possibile anche specificare una stringa (in inglese, per indicare quando inviare, esempio:now – invia subito10 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 oranext monday – invia il prossimo lunedì.Se la data non viene scritta nel modo corretto, il sistema invia immediatamente.2.6) Simulazione d’invioInviando un normale SMS, mettendo però come destinatario "+11111111111" il messaggio non vienespedito ma viene fatta una simulazione di invio. Il programma cioè testa la corretta sintassi del messaggioe comunica allutente il risultato della simulazione. Le simulazioni non vengono contate come messaggiinviati.2.7) UnicodeIl supporto UNICODE (UCS-2 e UTF-8 concatenati verso gli operatori abilitati) consente lutilizzo deicaratteri di tutti gli alfabeti inclusi il cinese, larabo, il giapponese, il greco etc.Cosè lUnicode. Praticamente i computer dialogano utilizzando dei numeri e lUnicode fornisce un numerounico per ogni carattere digitato, qualunque sia la piattaforma, il programma o il linguaggio utilizzato. Ilconsorzio Unicode (http://www.unicode.org ) è unorganizzazione non-profit fondata per sviluppare,estendere e promuovere luso 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 lusodella codifica Unicode. Unicode tramite Protocollo HTTP/POSTQuesta 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 principalePer inviare un messaggio utilizzando caratteri Unicode bisogna indicare nel parametro smsTYPE il file.UNIIl testo che dev’essere inviato deve essere convertito in esadecimaleOgni 4 caratteri corrispondono a 2 byte in formato esadecimale.Esempio:Per spedire utilizzando caratteri Unicode la parola “Ciao” si dovrà immettere campo smsTEXT la seguentestringa: 004300690061006FSeguendo la tabella dei caratteri Unicode (Basic Latin) , infatti0043 = C 0069 = i 0061 = a 006F = oEcco 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. 23. -smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza di destinazionein formato internazionale,+393291234567)-smsSENDER (max 16 caratteri per il numero telefonico del mittente in formato internazionale oppure max11 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, 70visualizzati 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 seguenteprocedura: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 formatoesadecimale (in chiaro) senza nessuno spazio tra un carattere e l’altro (Max. 280 caratteri, 70 visualizzatisul 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. (Campoobbligatorio) (MAX 16 caratteri numerici)- origine è il nome o il numero da visualizzare come mittente del messaggio (Campo opzionale, se nonspecificato verrà usato quello di default) (MAX 16 Caratteri per un numero in formato internazionale oMAX 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 INBOXOgni 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 testola seguente stringa: 004300690061006FIl file verrà poi rinominato nel seguente modo D393471234567_OTest_G1_Fprova-unicode.uni2.8) Loghi, suonerie e Flash Message LOGHI OPERATORIUn 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 possiedeancora vecchi modelli nokia con display monocromatici è ancora possibile riceverli, semplicementeinviando 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. 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 principaleEsempio-smsNUMBER = numero del destinatario (max 16 caratteri, numero telefonico dell’utenza didestinazione 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.smsLOTA 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:00480E01003E03E0007E01F000007E07F000FF03F80000FE0F7801E7871C0001EE0E3801C3871C0001CE0C380183871C00000E0038E00F871C00000E0078E01F071C00000E00F0E00F071C00000E01E00003871C00000E03C00183871C00000E07F8E1C7871C00000E0FF8E0FF03F800000E0FF8E07E01F000000000000000000000N.B. Ogni logo in formato OTA Bitmap deve iniziare con la string 00480E01. SUONERIEUna suoneria (o ringtone) può essere inviata ad un cellulare incorporando lo spartito musicaledirettamente nel file SMS.Esiste uno standard realizzato da Nokia, chiamato Hex Dump, per lutilizzo di questo servizio.Come per i loghi operatore, in Internet si possono trovare svariate suonerie in formato RTTTL e programmicapaci 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 didestinazione 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.smsEcco un esempio di suoneria in formato esadecimale:024A3A5D4DD15D85C9CCC404005A9912CC2CC2CC36551629461361161B29649461361161B296494613614611224820B30B30B30D95458A5184D84586CA5925184D84586CA5925184D85184489000 FLASH MESSAGEUn Flash Message è un SMS che viene visualizzato immediatamente sullo schermo del cellulare. In questomodo il ricevente non dovrà utilizzare il menù messaggi del cellulare per visualizzarlo. Anche i flashmessage non vengono più utilizzati sui cellulari di ultima generazione.Per inviare un Flash Message sui cellulari Nokia con display monocromatico basta settare il paramentrosmsTYPE=file.FLH 24 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  25. 25. 2.9) HLRIl servizio HLR Lookup consente di sapere se un numero di cellulare esiste e a quale operatore appartienelabbonato. Queste informazioni possono tornare utili per ripulire le proprie liste da numeri diventatioramai irraggiungibili in quanto non più abilitati, e per poter instradare correttamente il proprio trafficoSMS.Come effettuare una chiamata HLR :Con qualunque protocollo, anche con il MySMS, basta semplicemente inviare un sms verso il gateway 8Cosa 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 222010dove ITA Paese Network 22F201 Code Vodafone Omnitel Operatore GSM Tipologia 222010 formato IMSIIn che modo si può ricevere la risposta dellHLR ? :La risposta viene visualizzata nel pannello di controllo sul sito www.netfunitalia.it, come se fosse statospedito un sms normaleMa sarà possibile riceverla anche su una propria URL e/o su un proprio indirizzo e-mail, basta attivare laricezione dei delivery 25 Copyright © 1999-2010 Group NetFun Italia, All Rights Reserved - Last modification (12/10/2010) – v 6.6.4
  26. 26. 3.1) Codici di errore via POSTForniamo di seguito 2 tabelle con i codici di transizione dei messaggiPer 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 principaleQuesti 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 specifiedPer 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 rivenditoreQuesti 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 dallinvio) -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. 27. 3.2) Codici di notifica (Reason Code)Quando per il parametro smsDELIVERY inviamo la risposta “N” (Non consegnato) sarà possibile conoscereanche 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.pdfPer chi sceglie di ricevere la notifica via e-mail troverà nell’oggetto dell’e-mail il seguente esempio di “NotDeliverd”:Not Delivered to +3933112345678 Login:demo Sender:ciao Time:28/08/2008 16.37.26SCTS:08083116372643521 Delivery Time:28/08/2008 16.37.34 Dati:The SMS sent to 003933112345678has not been delivered Reason Code:1114.1) Pannello RivenditoreI 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, sipotranno monitorare le operazioni dei propri clienti, con statistiche grafiche e approfondite, si potrannoesportare i logs degli storici degli sms inviati e ricevuti e ovviamente si potranno fare ricariche suisubaccounts impostando per ognuno di essi anche il costo di vendita degli sms2) 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 allaNetFun Italia, al cliente sarà assegnato un proprio indirizzo.Il pannello ha una grafica avanzata e sarà identico a www.smsviainternet.it (possono accedere i clientiregistrati sul sito www.nertfunitalia.it)4.2) Ricarica credito cliente tramite POSTURL per comunicare tramite POST (solo per reseller):utenti subaccount – http://62.48.53.75/post/nomeReseller/recharge.phpLe variabili (codificate) da inviare tramite POST sono:smsUSER username di accesso resellersmsPASSWORD oppure smsPSW password di accesso resellersmsSUBACCOUNT Nome del subaacount da ricaricare (appartenente al reseller.SmsCREDIT Credito da assegnare in centesimi di euro.Esempio per 10,00 € scrivere 1000Se 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

×