PHP: programar mensajes SMS

SDK-PHP

1. Descripción

La API PHP te permite hacer un envío de SMS en diferido, estos mensajes se podrán programar para que su envío se realice a determinadas fechas y/o horas.

2. Documentación

Llamada

Para enviar un mensaje programado, lo hacemos exactamente igual como con un envío normal, salvo que debemos indicar la programción gracias a la clase programacion. Esta clase tiene la siguientes funciones que nos ayudará a programar el mensaje en le momento adecuado:

  • nunca; para que no se programe, el envío se realizaría en ese mismo momento
  • unavez; para enviar el mensaje una única vez en un momento determinado. Estos son los argumentos:
Nombre
Argumento
Descripción Posibles Valores Tipo de
Dato
idprog Establecer un identificativo único de programación, para sucesivas programaciones

1, 2, 3, ...

Int
nombre Nombre que le asignaremos a esta programación. String
fecha Fecha en la que se realizará en envío de mensajes. Formato: dd/mm/yyyy String
hora Hora en la que se realizará el envío del mensaje Formato: hhmm String
  • diariamente; para enviar el mensaje diariamente a una hora determinada. Estos son los argumentos:
Nombre
Argumento
Descripción Posibles Valores Tipo de
Dato
idprog Establecer un identificativo único de programación, para sucesivas programaciones

1, 2, 3, ...

Int
nombre Nombre que le asignaremos a esta programación. String
fecha Fecha en la que se comenzará el envío programado. Formato: dd/mm/yyyy String
hora Hora en la que se realizará el envío del mensaje Formato: hhmm String
fechafin Fecha en la que finalizará de enviarse el mensaje programado. Formato: ff/mm/yyyy String
  • semanalmente; para enviar el mensaje semanalmente en un día ya hora determinada. Estos son los argumentos:
Nombre
Argumento
Descripción Posibles Valores Tipo de
Dato
idprog Establecer un identificativo único de programación, para sucesivas programaciones

1, 2, 3, ...

Int
nombre Nombre que le asignaremos a esta programación. String
fecha Fecha en la que se comenzará el envío programado. Formato: dd/mm/yyyy String
hora Hora en la que se realizará el envío del mensaje Formato: hhmm String
fechafin Fecha en la que finalizará de enviarse el mensaje programado. Formato: ff/mm/yyyy String
diaSemana Día de la semana que se enviará el mensaje 1 (lunes), 2, 3, 4, 5, 6, y 7 (Domingo) Int
  • mensualmente; para enviar el mensaje mensualmente en un día de lmes y a una hora determinada. Estos son los argumentos:
Nombre
Argumento
Descripción Posibles Valores Tipo de
Dato
idprog Establecer un identificativo único de programación, para sucesivas programaciones

1, 2, 3, ...

Int
nombre Nombre que le asignaremos a esta programación. String
fecha Fecha en la que se comenzará el envío programado. Formato: dd/mm/yyyy String
hora Hora en la que se realizará el envío del mensaje Formato: hhmm String
fechafin Fecha en la que finalizará de enviarse el mensaje programado. Formato: ff/mm/yyyy String
diaMes Día del mes en el cual se enviará el mensaje. 1, 2, 3, ..., 31 Int
  • anualmente; para enviar el mensaje en un día del año a una hora determinada. Estos son los argumentos:
Nombre
Argumento
Descripción Posibles Valores Tipo de
Dato
idprog Establecer un identificativo único de programación, para sucesivas programaciones

1, 2, 3, ...

Int
nombre Nombre que le asignaremos a esta programación. String
fecha Fecha en la que se comenzará el envío programado. Formato: dd/mm/yyyy String
hora Hora en la que se realizará el envío del mensaje Formato: hhmm String
fechafin Fecha en la que finalizará de enviarse el mensaje programado. Formato: ff/mm/yyyy String
diaMes Día del año en el cual se enviará el mensaje 1, 2, 3, ..., 31 Int
mes Mes del año que se enviará el mensaje. 1, 2, 3, ..., 12 Int

 

Respuesta

Una vez enviado la petición de programar el mensaje, comprobaremos el resultado del mismo. Para ello, en la subclase programacion, podemos leer las siguientes propiedades:

Nombre
Propiedad
Descripción Posibles Valores Tipo de
Dato
result_id Idendtificativo único del mensaje programado en la plataforma Descom SMS

1, 2, 3, ...

Int
result_resultado Descripción del resultado de la programación. String

result_msg_ok

Número de mensajes que se han programado correctamente. 0, 1, 2, 3, ... Int

result_msg_err

Número de mensajes que no se han programado correctamente.

0, 1, 2, 3, ... Int

3. Ejemplos y descargas


include ("class_dms.php");
$dms=new dms_send;
 
//Autentificar
$dms->autentificacion->idcli="codigo cliente";
$dms->autentificacion->username="nombre de usuario";
$dms->autentificacion->passwd="password";

//Configurar envio
$dms->remitente="";
//Agregar mensajes
$dms->mensajes->add("1","611111111","Felicidades, que cumplas muchos más","Felicidades");
$dms->mensajes->add("2","611111112","Feilz cumpleaños", "Felicidades");
//programar el mensaje anualmnte cada 27 de Noviembre a las 7 y media de la tarde.
$dms->programacion->anualmente("1","felicitanciones","01/01/2002","1930","01/01/4000",27,11);
//enviar SMS's
$dms->send();
//Verificar Resultado
if ($dms->autentificacion->error){
     //Error de autentificacion con la plataforma
    echo "Error: ".$dms->autentificacion->mensajeerror."\n";
}else{
    //Autentificacion correcta
    echo "\nProgramacion:\n";
    echo "\tid Programacion: ".$dms->programacion->result_id."\n";
    echo "\tResultado:       ".$dms->programacion->result_resultado."\n";
    echo "\tMensajes OK:     ".$dms->programacion->result_msg_ok."\n";
    echo "\tMensajes Error:  ".$dms->programacion->result_msg_err."\n";
}

 

4. Gráfico


Enviar-SMS-InterfazHTTP