CF – Gateway SMS
Oggi ho dovuto interfacciarmi con un SMS gateway esterno, per l’invio ed il check di sms, la cui richiesta parte dal mio server Coldfusion.
Il fornitore mi ha dato l’indirizzo del gateway (web service):
http://151.38.8.115/progettosms/WSGateway/Gateway.asmx?wsdl
e il codice dimostrativo (non so in quale linguaggio, ma sicuramente non tramite web service):
Using ProjectTest.WSGateway;
namespace ProjectTest
{
class Class1
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
Gateway gw = new Gateway();
AdC adc = new AdC();
adc.InternationalPrefix = "+39";
adc.Prefix = "333";
adc.Number = "3333333";
SendMessageAnswer answer = gw.SendMessage("mioNomeUtente", "miaPassword", "Io",
adc, "Chiamami");
Console.WriteLine("{0} {1}", answer.Sent, answer.Credit);
Console.ReadLine();
}
}
Purtroppo avevo pochissime informazioni in mio possesso ma alla fine ci sono riuscito.
Un consiglio: per chi usa Dreamweaver può essere molto utile collegare il pannello componenti al webservice, in modo da poter vedere metodi, oggetti e proprietà. Come fare?
- Aprire il pannello Windows > Component (CTRL-F7)
- Selezionare dal menù a tendina "Servizi Web"
- Inserire l’indirzzo del webservice
- Tadan… il gioco è fatto: vedete tutto!
Analizziamo ora il codice originale:
- crea l’oggetto gateway
- crea un oggetto destinatario (AdC) con numero di telefono
- invia il messaggio
Ok allora, procediamo con il codice CF…
<cfscript>
//accesso
user = "xxx";
password = "yyyyyy";
//destinatario
prefisso = 000;
numero = 00000000;
//mittente
aOAdC = "MittenteNome";
//messaggio
mess = "test invio messaggio";
//creo numero destinatario
aAdC=StructNew();
aAdC.InternationalPrefix = "+39";
aAdC.Prefix = prefisso;
aAdC.Number = numero;
gw = CreateObject("webservice","http://151.38.8.115/progettosms/WSGateway/Gateway.asmx?wsdl");
aSendMessageAnswer = gw.sendMessage(user,password,aOAdC,aAdc,mess);
</cfscript>
Ed il gioco è fatto. Inizialmente ho avuto qualche problema in quanto avevo l’utente sbagliato e il sistema non mi restituiva l’errore, bensì non mi creava correttamente l’oggetto answer.
Adios e W gli SMS.
Approfondimenti online
La tecnologia informatica ha fatto passi da gigante. In modo particolare Google, che con il suo analizzatore di testo, è in grado di proporre collegamenti contestuali a quanto hai appena letto. Questi i link pubblicitari proposti da Adsense.









bravissimo
Esagerato! Il problema era fondamentalmente l’utente sbagliato e la documentazione sufficentemente scarsa.
Il codice, non vorrei sbagliarmi ma mi sembra c#…
Nessuno ha mai provato a costruirsi un proprio SMS Gateway?
Bye Bye
Un proprio gateway in che senso? farsi una piattaforma con SIM?