1. Programar el envío de SMS
2. Documentación
Creación del objeto e instancia:
Primero debemos iniciar una instancia de la DLL en nuestro programa, para posteriormente llamar a la clase
De esta forma, el objeto oDMEnvio, nos permitirá interactuar con la plataforma de Descom SMS.
Configuración de la autentificación
Definiremos la autentificación a la Plataforma de Descom Mensajes SMS, asignando los siguientes parámetros:
Configurar datos opcionales de envío:
Disponemos de varios parámetros para configurar el envío que queremos realizar, a continuación les exponemos los parámetros disponibles
| Nombre Parámetro  | 
Descripción | Posibles Valores | Tipo de Dato  | 
| Remitente | 
 Remitente que vamos a utilizar en el envío.  | 
 
  | 
String | 
| idEnvioExt | 
 Puede definir un id de envío, de está forma podrá agregar nuevos mensajes a una programación, siempre que tenga este mismo identificativo.  | 
String | |
| MaxNumSMS | Número máximo de SMS que enviará en un solo mensaje. Si este campo es Cero, no tendrá ninguna limitación, salvo las impuestas por el protocolo (actualmente 99) | 0, 1, 2, ... | Int | 
Ejemplo:
Agregar mensajes en la programación
La DLL dispone de una sub-clase para configurar los mensajes a enviar, se denomina, XMLMensajes, que a su vez dispone de 2 subclases para gestionar cada tipo de mensajes:
- XMLMensajes.MensajesSMS
 
Es una colección con todos los mensajes a enviar o enviados. Para agregar un mensaje a la colección, disponemos de la función ADD la cual acepta los siguientes argumentos:
| Nombre Argumentos  | 
Descripción | Posibles Valores | Tipo de Dato  | 
| Id | 
 Identificador del mensaje que vamos a enviar  | 
 1, 2, 3, ...  | 
Int | 
| Destino | 
 Número de móvil del destinatario del mensaje.  | 
String | |
| Mensaje | Texto del mensaje a enviar | String | |
| Remitente | Opcional; remitente para este mensaje | String | |
| 
 ControlarMensajesRepetidos  | 
 Control para no enviar mensajes repetidos por error.  | 
 True (por defecto); realizará dicho control, False; para deshabilitar este control  | 
Bool | 
Ejemplo:
- XMLMensajes.MensajesWAP
 
Es una colección con todos los mensajes WAP a enviar o enviados. Para agregar un mensaje a la colección, disponemos de la función ADD la cual acepta los siguientes argumentos:
| Nombre Argumentos  | 
Descripción | Posibles Valores | Tipo de Dato  | 
| Id | 
 Identificador del mensaje que vamos a enviar  | 
 1, 2, 3, ...  | 
Int | 
| Destino | 
 Número de móvil del destinatario del mensaje.  | 
String | |
| Asunto | Asunto del mensaje WAP | String | |
| 
 URL  | 
 Dirección URL con el contenido multimedia  | 
 
  | 
String | 
| Remitente | Opcional; remitente para este mensaje | String | 
Ejemplo:
Creación de la programación.
Para programar el envío, debemos crear una clase dcXMLSend.Programacion, tal como se muestra en este ejemplo:
Para iniciar el objeto, y dependiendo del tipo de programación de los mensajes que deseemos, realizaremos una de estas llamadas: 
 
- 
Enviar SMS una sola vez (diferido):
 
- nombreProgramacion (string); el nombre que deseamos que tenga dicha programación
 - fecha (date); la fecha y hora en las que se enviará el mensaje.
 
- 
Enviar SMS Diariamente:
 
- nombreProgramacion (string); el nombre que deseamos que tenga dicha programación
 - fecha (date); la fecha y hora en las que se comenzará a enviar los mensajes. La hora determina la hora de cada envío.
 
- 
Enviar SMS Semanalmente:
 
- nombreProgramacion (string); el nombre que deseamos que tenga dicha programación
 - fecha (date); la fecha y hora en las que se comenzará a enviar los mensajes. La hora determina la hora de cada envío.
 - diaSemana (integer); día de la semana en la que se enviaran el mensaje (0=Lunes ... 6=Domingo)
 
- 
Enviar SMS Mensualmente:
 
- nombreProgramacion (string); el nombre que deseamos que tenga dicha programación
 - fecha (date); la fecha y hora en las que se comenzará a enviar los mensajes. La hora determina la hora de cada envío.
 - diaMes (integer); día del mes en la que se enviarán el mensaje (1 .. 31)
 
- 
Enviar SMS Anualmente:
 
- nombreProgramacion (string); el nombre que deseamos que tenga dicha programación
 - fecha (date); la fecha y hora en las que se comenzará a enviar los mensajes. La hora determina la hora de cada envío.
 - diaMes (integer); día del mes en la que se enviarán el mensaje (1 .. 31)
 - Mes (integer); mes en el que se envía los mensajes (1 .. 12)
 
Una vez inciada el objecto Prog, podemos definir sobre él, los siguientes parametros: 
- Prog.ProgAvisar (boolean); avisar por correo cada vez que se produzca el envío de un mensaje programado.
 - Prog.ProgFechaFinal (date); especifique aquí cuando desea que se finalice la programación de los mensajes.
 
Es posible que una vez creemos una programación, queramos agregar más mensajes a la misma programación, para ello debemos enviar el mismo campo IdEnvioext, esto hará que en una previa programación con dicho ID, agreguemos nuevos mensajes. 
 
IMPORTANTE: en este caso solo se agregan los nuevos mensajes en la programación, no se modifican las propiedades.
Enviar la petición
Una vez formalizada la autentificación y definido los mensajes, enviaremos los mismos con el siguiente comando:
Con esta función se establece la comunicación con nuestra plataforma y se procede a realizar la autenticación y posterior programación de los mensajes.
Analizar la Respuesta
Respuesta de Autentificación y saldo
Para analizar el resultado de la programación, debemos analizar la clase RXAutentificacion que nos ofrece las siguientes propiedades:
| Nombre Parámetro  | 
Descripción | Posibles Valores | Tipo de Dato  | 
| Resultado | 
 Resultado de la autentificación en la plataforma  | 
  | 
String | 
| Comentario | 
 Texto descriptivo del error al conectar con la plataforma  | 
String | |
| Saldo | Saldo actual de la cuenta, si ha autentificado correctamente en la plataforma Descom SMS | 0, 1, 2, ... | Int | 
Respuesta de la programación
La clase dcXMLSend.XMLSendClass, contiene los siguientes parámetros globales para determirar si los mensajes han sido programados correctamente:
| Nombre Parámetro  | 
Descripción | Posibles Valores | Tipo de Dato  | 
| ResultProgramacion | 
 Devuelve si la programación se ha creado correctamente  | 
  | 
Bool | 
| 
 ResultProgramacionId  | 
 Identificativo único de la porgramación  | 
0, 1, 2, ... | long | 
| 
 ResultProgramacionMsgOk  | 
Número de mensajes programados correctamente. | 0, 1, 2, ... | Int | 
| 
 ResultProgramacionMsgErr  | 
 Número de mensajes que no se han agregado en la programación.  | 
0, 1, 2, ... | Int | 
3. Ejemplos y Descargas
Ejemplo en VB .NET
4. Gráfico
