Saque el máximo rendimiento a los servicios de arsys.es

Desde arsys.es se ha desarrollado un componente que ofrece a los programadores de aplicaciones una herramienta que les permite realizar el envío de mensajes SMS a móviles desde sus propios desarrollos.
Para facilitar el uso de este componente mediante diferentes tecnologías de programación, se han desarrollado tres versiones diferentes del mismo:
Para poder utilizar el componente SMSSend debe dar de alta el servicio SMS en arsys.es. El alta de este servicio es gratuita y puede realizarla desde nuestra web.
Cuando se produce el alta, se genera una 'cuenta SMS' con una serie de características:
A partir del momento del que disponga de esta 'cuenta SMS' podrá comenzar a usar el servicio en cualquiera de sus dos modalidades:
Este componente permite enviar un mensaje SMS a una lista de destinatarios o programar un nuevo mensaje para su envío en una fecha/hora determinada.
Si dispone de un servidor dedicado, necesita permitir tráfico saliente desde su dedicado al puerto 8080 TCP del servidor SMS.
Su utilización es muy sencilla.
| Métodos | Para poder realizar el envío es necesario establecer valores correctos para los parámetros asociados a estos métodos. |
|---|---|
|
setAccount (account as String) |
Establece el usuario (account) de la cuenta desde la que se va a realizar el envío. Este dato será la dirección de correo con que activó su cuenta SMS. |
|
setPwd (pwd as String) |
Establece la contraseña de la cuenta desde la que se va a realizar el envío. |
|
setText (text as String) |
Establece el texto del mensaje SMS. Máximo de 160 caracteres. |
|
setFrom (text as String) |
Establece el remite para el mensaje SMS. Máximo de 11 caracteres. No es un parámetro obligatorio |
|
setTo (para as String) |
Establece los destinatarios del mensaje (separados por ;). |
| Para poder programar un envío, es necesario establecer valores para los siguientes métodos. | |
|
setDescriptionEP (text as String) |
Establece la descripción del Envío programado. |
|
setDateEP (text as String) |
Establece la fecha del Envío programado ("dd/mm/aaaa") |
|
setTimeEP (text as String) |
Establece la hora del Envío programado ("hh/mm") |
|
setPeriodEP (text as String) |
Establece la periodicidad del Envío programado. Los posibles valores son:
|
| Para obtener el estado de envío de un mensaje, es necesario establacer valores para los siguientes métodos. | |
|
setIdEnvio (text as String) |
Establece el identificador del envío del mensaje cuyo estado se quiere consultar. El identificador del envío es devuelto por el método "Send" (ver respuesta del método Send más adelante). |
| Para obtener los identificadores y estado de los SMS enviados en un intervalo de tiempo, es necesario establacer valores para los siguientes métodos.
El intervalo de tiempo entre la fecha y hora de inicio y fin no podrá ser mayor a 24 horas. | |
|
setFechaIni (text as String) |
Establece la fecha y hora de inicio para la consulta. El formato debe ser "DD/MM/AAAA HH:MM:SS" |
|
setFechaFin (text as String) |
Establece la fecha y hora de inicio para la consulta. El formato debe ser "DD/MM/AAAA HH:MM:SS" |
| Métodos para el Envío - Programación - Consultas | |
|
(respuesta as String) = Send |
Envía el mensaje SMS. El método Send devuelve como respuesta lo siguiente: <SendSMS> -1 |
|
(respuesta as String) = Program |
Programa el mensaje SMS. El método Program devuelve como respuesta lo siguiente: <ProgramSMS>
O si ha habido un error en la conexión y no se ha podido obtener respuesta, el valor
<result>(OK o KO)</result> <description>Descripción del resultado</description> <credit>Credito restante</credit> </Program> -1 |
|
(respuesta as String) = Estado |
Consulta el estado de un envío. El método Estado devuelve como respuesta el estado de entrega al operador y al terminal de cada uno de los mensajes incluidos en el envío del modo siguiente: <SendSMS>
O si ha habido un error en la conexión y no se ha podido obtener respuesta, el valor
<result>OK</result> <description>Estado del envío obtenido</description> <envio> <item> <phone>34666666666</phone> <estado_operador>entregado</estado_operador> <estado_terminal>entregado</estado_terminal> </item> <item> <phone>34666666667</phone> <estado_operador>entregado</estado_operador> <estado_terminal>entregado</estado_terminal> </item> </envio> </SendSMS> -1 |
|
(respuesta as String) = Listado |
Consulta el listado de SMS enviados entre una fecha y hora de inicio y otra de fin. La duración del intervalo no debe ser mayor a 24 horas. El método Listado devuelve como respuesta el ID del envío, teléfono, fecha y hora y estado de entrega al operador y al terminal de cada uno de los SMS enviados en dicho intervalo del modo siguiente: <SendSMS>
O si ha habido un error en la conexión y no se ha podido obtener respuesta, el valor
<result>OK</result> <description>Estado del envío obtenido</description> <listado> <item> <idenvio>9999991</idenvio> <phone>34666666666</phone> <timestamp>20/10/2009 18:46:16</timestamp> <estado_operador>entregado</estado_operador> <estado_terminal>entregado</estado_terminal> </item> <item> <idenvio>9999991</idenvio> <phone>34666666667</phone> <timestamp>20/10/2009 18:46:16</timestamp> <estado_operador>entregado</estado_operador> <estado_terminal>entregado</estado_terminal> </item> <item> <idenvio>9999992</idenvio> <phone>34666666666</phone> <timestamp>20/10/2009 20:30:00</timestamp> <estado_operador>entregado</estado_operador> <estado_terminal>entregado</estado_terminal> </item> </listado> </SendSMS> -1 |
| Obtención del resultado | Podemos también acceder al resultado de la operación mediante los siguientes métodos. |
|
(resultado as String) = getResult |
Recupera lo que hay entre <result></result> |
|
(descripcion as String) = getDescription |
Recupera lo que hay entre <description></description> |
|
(credit as String) = getCredit |
Recupera lo que hay entre <credit></credit> tras enviar un sms con "Send" o programarlo con "Program". |
|
(envio as String) = getIdEnvio |
Recupera lo que hay entre <idenvio></idenvio> al realizar el envío de un sms con "Send". |
| Métodos opcionales | No es necesaria su utilización para realizar el envío SMS. |
|
(account as String) = getAccount |
Recupera el usuario de la cuenta desde la que se va a realizar el envío. |
|
(pwd as String) = getPwd |
Recupera la contraseña la cuenta desde la que se va a realizar el envío. |
|
(text as String) = getText |
Recupera el texto del mensaje SMS. Máximo de 160 caracteres. |
|
(para as String) = getTo |
Recupera los destinatarios del mensaje (separados por ;). |
|
(Remite as String) = getFrom |
Recupera el remite configurado para el mensaje. |
|
(DescriptionEP as String) = getDescriptionEP |
Recupera la descripción configurada para el envío programado. |
|
(DateEP as String) = getDateEP |
Recupera la fecha configurada para el envío programado. |
|
(TimeEP as String) = getTimeEP |
Recupera la hora configurada para el envío programado. |
|
(PeriodEP as String) = getPeriodEP |
Recupera el ID de la periodicidad configurada para el envío programado. |
A continuación incluimos ejemplos del uso del componente para sus diferentes versiones:
<%@ LANGUAGE=VBScript %>
<%
Set objSendSMS= Server.CreateObject("SMSCOM.SMSSend")
'Defino las propiedades
objSendSMS.setAccount ("micuenta@micuenta.com")
objSendSMS.setPwd ("mipwd")
objSendSMS.setText ("Este es mi texto")
objSendSMS.setTo ("666666666")
objSendSMS.setFrom ("mi remite") ' Parámetro opcional
'Recupero los valores establecidos
Account = objSendSMS.getAccount
Pwd = objSendSMS.getPwd
Texto = objSendSMS.getText
Para = objSendSMS.getTo
Remite = objSendSMS.getFrom
'Envío del mensaje
resultado = objSendSMS.Send
'Resultado de la operación
getResult = objSendSMS.getResult
getDescription = objSendSMS.getDescription
getCredit = objSendSMS.getCredit
getIdEnvio = objSendSMS.getIdEnvio
Response.write "El resultado es "& resultado & "<br>"
Response.write "getResult es " & getResult & "<br>"
Response.write "getDescription es "& getDescription & "<br>"
Response.write "getCredit es " & getCredit & "<br>"
Response.write "getIdEnvio es " & getIdEnvio & "<br>"
Set objSendSMS=Nothing
%>
<%@ LANGUAGE=VBScript %>
<%
Set objSendSMS= Server.CreateObject("SMSCOM.SMSSend")
'Defino las propiedades
objSendSMS.setAccount ("micuenta@micuenta.com")
objSendSMS.setPwd ("mipwd")
objSendSMS.setIdEnvio ("9999999")
'Recupero los valores establecidos
Account = objSendSMS.getAccount
Pwd = objSendSMS.getPwd
IdEnvio = objSendSMS.getIdEnvio
'Consulto el estado
resultado = objSendSMS.Estado
'Resultado de la operación
getResult = objSendSMS.getResult
getDescription = objSendSMS.getDescription
getEstado = objSendSMS.getEstado
Response.write "El resultado es "& resultado & "<br>"
Response.write "getResult es " & getResult & "<br>"
Response.write "getDescription es "& getDescription & "<br>"
Response.write "getEstado es " & getEstado & "<br>"
Set objSendSMS=Nothing
%>
<%@ LANGUAGE=VBScript %>
<%
Set objSendSMS= Server.CreateObject("SMSCOM.SMSSend")
'Defino las propiedades
objSendSMS.setAccount ("micuenta@micuenta.com")
objSendSMS.setPwd ("mipwd")
objSendSMS.setText ("Este es mi texto")
objSendSMS.setTo ("666666666")
objSendSMS.setFrom ("mi remite") ' Parámetro opcional
objSendSMS.setDescriptionEP ("Descripción del envío")
objSendSMS.setDateEP ("12/10/2005")
objSendSMS.setTimeEP ("10:25")
objSendSMS.setPeriodEP ("periodSemanal")
'Recupero los valores establecidos
Account = objSendSMS.getAccount
Pwd = objSendSMS.getPwd
Texto = objSendSMS.getText
Para = objSendSMS.getTo
Remite = objSendSMS.getFrom
DescriptionEP = objSendSMS.getDescriptionEP
DateEP = objSendSMS.getDateEP
TimeEP = objSendSMS.getTimeEP
PeriodEP = objSendSMS.getPeriodEP
'Envío del mensaje
resultado = objSendSMS.Program
'Resultado de la operación
getResult = objSendSMS.getResult
getDescription = objSendSMS.getDescription
getCredit = objSendSMS.getCredit
Response.write "El resultado es "& resultado & "<br>"
Response.write "getResult es " & getResult & "<br>"
Response.write "getDescription es "& getDescription & "<br>"
Response.write "getCredit es " & getCredit & "<br>"
Set objSendSMS=Nothing
%>
<%@ LANGUAGE=VBScript %>
<%
Set objSendSMS= Server.CreateObject("SMSCOM.SMSSend")
'Defino las propiedades
objSendSMS.setAccount ("micuenta@micuenta.com")
objSendSMS.setPwd ("mipwd")
objSendSMS.setFechaIn ("14/04/2009 00:00:00")
objSendSMS.setFechaFin ("14/04/2009 23:59:59")
'Recupero los valores establecidos
Account = objSendSMS.getAccount
Pwd = objSendSMS.getPwd
'Obtengo listado
resultado = objSendSMS.Listado
'Resultado de la operación
getResult = objSendSMS.getResult
getDescription = objSendSMS.getDescription
getListado = objSendSMS.getListado
Response.write "El resultado es "& resultado & "<br>"
Response.write "getResult es " & getResult & "<br>"
Response.write "getDescription es "& getDescription & "<br>"
Response.write "getListado es " & getListado & "<br>"
Set objSendSMS=Nothing
%>
use Arsys::SMSSend;
my $SMS = new Arsys::SMSSend;
#Defino las propiedades
$SMS->setAccount("micuenta\@micuenta.com ");
$SMS->setPwd("mipwd");
$SMS->setTo("666666666");
$SMS->setText("Este es mi texto");
$SMS->setFrom("mi remite"); # Parámetro opcional
#Recupero los valores establecidos
$Account = $SMS->getAccount;
$Pwd = $SMS->getPwd;
$To = $SMS->getTo;
$Text = $SMS->getText;
$Remite = $SMS->getFrom;
#Envío del mensaje
$resultado = $SMS->Send;
#Resultado de la operación
$getResult = $SMS->getResult;
$getDescription = $SMS->getDescription;
$getCredit = $SMS->getCredit;
$getIdEnvio = $SMS->getIdEnvio;
print "El resultado es $resultado\n";
print "getResult es $getResult \n";
print "getDescription es $getDescription \n";
print "getCredit es $getCredit \n";
print "getIdEnvio es $getIdEnvio \n";
use Arsys::SMSSend;
my $SMS = new Arsys::SMSSend;
#Defino las propiedades
$SMS->setAccount("micuenta\@micuenta.com ");
$SMS->setPwd("mipwd");
$SMS->setIdEnvio("9999999");
#Recupero los valores establecidos
$Account = $SMS->getAccount;
$Pwd = $SMS->getPwd;
$IdEnvio = $SMS->getIdEnvio;
#Consulto el estado del envío
$resultado = $SMS->Estado;
#Resultado de la operación
$getResult = $SMS->getResult;
$getDescription = $SMS->getDescription;
$getEstado = $SMS->getEstado;
print "El resultado es $resultado\n";
print "getResult es $getResult \n";
print "getDescription es $getDescription \n";
print "getEstado es $getEstado \n";
use Arsys::SMSSend;
my $SMS = new Arsys::SMSSend;
#Defino las propiedades
$SMS->setAccount("micuenta\@micuenta.com ");
$SMS->setPwd("mipwd");
$SMS->setTo("666666666");
$SMS->setText("Este es mi texto");
$SMS->setFrom("mi remite"); # Parámetro opcional
$SMS->setDescriptionEP ("Descripción del envío");
$SMS->setDateEP ("12/10/2005");
$SMS->setTimeEP ("10:25");
$SMS->setPeriodEP (periodSemanal);
#Recupero los valores establecidos
$Account = $SMS->getAccount;
$Pwd = $SMS->getPwd;
$To = $SMS->getTo;
$Text = $SMS->getText;
$Remite = $SMS->getFrom;
$DescriptionEP = $SMS->getDescriptionEP;
$DateEP = $SMS->getDateEP;
$TimeEP = $SMS->getTimeEP;
$PeriodEP = $SMS->getPeriodEP;
#Envío del mensaje
$resultado = $SMS->Program;
#Resultado de la operación
$getResult = $SMS->getResult;
$getDescription = $SMS->getDescription;
$getCredit = $SMS->getCredit;
print "El resultado es $resultado\n";
print "getResult es $getResult \n";
print "getDescription es $getDescription \n";
print "getCredit es $getCredit \n";
use Arsys::SMSSend;
my $SMS = new Arsys::SMSSend;
#Defino las propiedades
$SMS->setAccount("micuenta\@micuenta.com ");
$SMS->setPwd("mipwd");
$SMS->setFechaIni("14/04/2009 00:00:00");
$SMS->setFechaFin("14/04/2009 23:59:59");
#Recupero los valores establecidos
$Account = $SMS->getAccount;
$Pwd = $SMS->getPwd;
#Envío del mensaje
$resultado = $SMS->Listado;
#Resultado de la operación
$getResult = $SMS->getResult;
$getDescription = $SMS->getDescription;
$getListado = $SMS->getListado;
print "El resultado es $resultado\n";
print "getResult es $getResult \n";
print "getDescription es $getDescription \n";
print "getListado es $getListado \n";
<?php
require "SMSSend.inc";
//Defino las propiedades
$testsms=new smsItem;
$testsms->setAccount("micuenta@micuenta.com");
$testsms->setPwd("mipwd");
$testsms->setTo("666666666");
$testsms->setText("Este es mi texto ");
$testsms->setFrom("mi remite"); // Parámetro opcional
//Recupero los valores establecidos
$Account = $testsms->getAccount();
$Pwd = $testsms->getPwd();
$To = $testsms->getTo();
$Text = $testsms->getText();
$Remite = $testsms->getFrom();
//Envío del mensaje
$resultado = $testsms->Send();
//Resultado de la operación
$getResult = $testsms->getResult();
$getDescription = $testsms->getDescription();
$getCredit = $testsms->getCredit();
$getIdEnvio = $testsms->getIdEnvio();
print_r($resultado);
print_r("<BR>");
print_r($getResult);
print_r("<BR>");
print_r($getDescription);
print_r("<BR>");
print_r($getCredit);
print_r("<BR>");
print_r($getIdEnvio);
print_r("<BR>");
?>
<?php
require "SMSSend.inc";
//Defino las propiedades
$testsms=new smsItem;
$testsms->setAccount("micuenta@micuenta.com");
$testsms->setPwd("mipwd");
$testsms->setIdEnvio("9999999");
//Recupero los valores establecidos
$Account = $testsms->getAccount();
$Pwd = $testsms->getPwd();
$IdEnvio = $testsms->getIdEnvio();
//Consulto el estado
$resultado = $testsms->Estado();
//Resultado de la operación
$getResult = $testsms->getResult();
$getDescription = $testsms->getDescription();
$getEstado = $testsms->getEstado();
print_r($resultado);
print_r("<BR>");
print_r($getResult);
print_r("<BR>");
print_r($getDescription);
print_r("<BR>");
print_r($getEstado);
print_r("<BR>");
?>
<?php
require "SMSSend.inc";
//Defino las propiedades
$testsms=new smsItem;
$testsms->setAccount("micuenta@micuenta.com");
$testsms->setPwd("mipwd");
$testsms->setTo("666666666");
$testsms->setText("Este es mi texto ");
$testsms->setFrom("mi remite"); // Parámetro opcional
$testsms->setDescriptionEP ("Descripción del envío");
$testsms->setDateEP ("12/10/2005");
$testsms->setTimeEP ("10:25");
$testsms->setPeriodEP (periodSemanal);
//Recupero los valores establecidos
$Account = $testsms->getAccount();
$Pwd = $testsms->getPwd();
$To = $testsms->getTo();
$Text = $testsms->getText();
$Remite = $testsms->getFrom;
$DescriptionEP = $testsms->getDescriptionEP;
$DateEP = $testsms->getDateEP;
$TimeEP = $testsms->getTimeEP;
$PeriodEP = $testsms->getPeriodEP;
//Envío del mensaje
$resultado = $testsms->Program();
//Resultado de la operación
$getResult = $testsms->getResult();
$getDescription = $testsms->getDescription();
$getCredit = $testsms->getCredit();
print_r($resultado);
print_r("<BR>");
print_r($getResult);
print_r("<BR>");
print_r($getDescription);
print_r("<BR>");
print_r($getCredit);
print_r("<BR>");
?>
<?php
require "SMSSend.inc";
//Defino las propiedades
$testsms=new smsItem;
$testsms->setAccount("micuenta@micuenta.com");
$testsms->setPwd("mipwd");
$testsms->setFechaIni("14/04/2009 00:00:00");
$testsms->setFechaFin("14/04/2009 23:59:59");
//Recupero los valores establecidos
$Account = $testsms->getAccount();
$Pwd = $testsms->getPwd();
//Envío del mensaje
$resultado = $testsms->Listado();
//Resultado de la operación
$getResult = $testsms->getResult();
$getDescription = $testsms->getDescription();
$getListado = $testsms->getListado();
print_r($resultado);
print_r("<BR>");
print_r($getResult);
print_r("<BR>");
print_r($getDescription);
print_r("<BR>");
print_r($getListado);
print_r("<BR>");
?>
* Los precios no incluyen IVA.