Come Integrare Gli SMS Nelle Web Application Grazie Agli SMS Gateway

A RomeCamp2008 mi sono occupato della registrazione dei campers alla rete wifi: una legge sull’accesso ai sistemi informatici infatti richiede l’identificazione personale di ogni individuo che accede ad una rete pubblica. Durante una conversazione telefonica Nicola Mattina mi paventò l’idea di vincolare la verifica delle registrazioni online con messaggi SMS di conferma, legando così l’identità del possessore della SIM agli account generati per il wifi.

Dopo una brevissima ricerca ho potuto appurare che l’uso di SMS in entrata ed in uscita come dati I/O di una web application non solo è molto utile, ma anche estremamente semplice.

Gli SMS come parametri di un modulo HTML

Le piattaforme hardware/software che offrono questo tipi di servizio si chiamano SMS gateway. Ne esistono diversi anche in italia e permettono di gestire gli SMS esattamente come parametri di un modulo HTML tramite il metodo GET.

Le informazioni;

  • numero mittente
  • testo

non sono altro che parametri da valorizzare on-the-fly  tramite codice prima di inviarli allo script apposito che si occupa della spedizione, oppure sono parametri già valorizzati dall’sms stesso nel caso in cui il nostro scrip lo riceva dall’esterno.

In poche parole:

per inviare un SMS via script dobbiamo simulare il click di un modulo web che invia i parametri [numero-mittente] e [messaggio] col metodo get

ricevere e gestire un SMS equivale a sviluppare uno scritp che riceve e gestisce  i parametri [numero-mittente] e [messaggio] da un modulo HTML che usa il metodo GET

Integrare l’sms gateway col proprio script

In genere questi servizi offrono un pannello di controllo online tramite il quale inviare SMS e gestire quelli ricevuti, ma le potenzialità maggiori si ottengono integrando il sistema con la propria applicazione.

In tal caso l’azienda che offre il servizio di SMS gayeway fornisce oltre a specifiche tecniche precise la possibilità di impostare gli script di interfaccia dal nostro lato.

Dobbiamo:

  • verificare nomi e tipologie dei parametri da valorizzare per ogni SMS
  • verificare nome e URI dello scritpt verso il quale inviare i dati per l’invio dell’SMS
  • specificare nome e URI dello script sul nostro lato che è in attesa di ricevere l’SMS per gestirne i valori

Un esempio pratico

Ecco il flusso semplificato dell’applicazione per la registrazione al wifi di RomeCamp con autenticazione via SMS;

 
Grafico creato con Lucidchart

Chi offre il servizio

I servizi sono a pagamento ed in genere dipendono dal numero di SMS prepagati. L’invio è sempre incluso nel prezzo, mentre può capitare che alcuni gestiscano la ricezione di SMS come servizio da acquistare a parte.

Per RomeCamp2008 ho utilizzato il primo e mi sono trovato bene. Tutti gli evento sono perfettamente tracciabili e su  100 iscrizioni si è perso solo 1 sms (a parte altri errori di natura umana).

Entrando più sul tecnico qui puoi scaricare tutorial e documentazione per molti linguaggi (basati sui parametri di SMS hosting).

Possibili applicazioni 

Legare applicazioni software agli SMS degli utenti offre nuove possibilità tutte ancora da esplorare. In particolare ritengo che questa possibilità possa rivelarsi particolarmente utile per abbattere la burocrazia ed automatizzare  tutti quei processo (la dove sia possibile) che richiedono una identificazione personale.

Anche come antispam non sarebbe male, la dove ovviamente il disagio di dover inviare un SMS è compensati dai requisiti di sicurezza di una simile schema di autenticazione.

Altre possibili applicazioni?

Che ne pensi?