Publicado el Deja un comentario

04 – Integración con sus aplicaciones. (Para programadores)

Ficheros de comando

Puede crear su propio fichero de texto con su mensaje (fichero de comando) y copiarlo a la carpeta de salida de SevinfSMS que por defecto se encuentra en:    ..\SevinfSMS\_Intecambio\Salida\

Estructura del fichero

  • Se trata de un fichero de texto estandar.
  • El nombre es irrelevante.
  • La extensión debe ser .sms

Contenido

Debe contener 10 líneas que se componen de título exacto seguido por un dato variable.

– Formato válido:

FECHA_ENVIO:dd/mm/aaaa
HORA:hh:mm
NUMERO:+nnnnnnnnnnn
TEXTO:cadena de texto. obligatorio en una unica línea
USAR_TEXTO_PREDEFINIDO_NUMERO:0 o bien 1 o bien 2 o bien 3 o bien 4
Comodín [MIDATO1]:
Comodín [MIDATO2]:
Comodín [MIDATO3]:
Comodín [MIDATO4]:
Comodín [MIDATO5]:

Si su fichero de comando no cumple con esta sintaxis el programa lo moverá a la carpeta «..\SevinfSMS\_Intecambio\Descartados» indicando en su nombre que se descarta por error sintáctico

Ejemplo de un fichero de comando válido: fichero <comandodejemplo.sms>

FECHA_ENVIO:10/03/2018
HORA:17:20
NUMERO:+34609000000
TEXTO:Este es el texto del mensaje sms
USAR_TEXTO_PREDEFINIDO_NUMERO:0
Comodín [MIDATO1]:
Comodín [MIDATO2]:
Comodín [MIDATO3]:
Comodín [MIDATO4]:
Comodín [MIDATO5]:

Título FECHA_ENVIO:

La fecha especificada a continuación del título «FECHA_ENVIO:» será la que defina qué día será procesado dicho comando.

Si la fecha especificada a continuación del título «FECHA_ENVIO:» es anterior al día de hoy el programa moverá el fichero a la carpeta «..\SevinfSMS\_Intecambio\Descartados» indicando en su nombre que se descarta porque está caducado.

Si un fichero cumple con la sintaxis correcta y su fecha es la del día de hoy, será enviado al aplicativo de Android (SevinfSMS.apk) y movido a la carpeta «..\SevinfSMS\_Intecambio\Enviados» indicando en su nombre que ha sido enviado.

Si en el momento del envío al aplicativo de Android (SevinfSMS.apk) existiera aún un fichero pendiente de gestionar por éste, el comando permanecerá en la carpeta donde se encuentra, «..\SevinfSMS\_Intecambio\Salida», y volverá a intentar reprocesarse en el siguiente ciclo.

Título HORA:
Es obligatorio especificar una hora en formato hh:mm aunque actualmente este dato no se usa en ningún lugar del programa ni del mensaje. Se usará en futuras ampliaciones.

Título NUMERO:
Debe especificarse el número de teléfono móvil al que se enviará el SMS.
Es obligatorio especificar el signo + en su primera posición.

Título TEXTO:
Especifique literalmente el texto del SMS.

Es obligatorio que ocupe una unica línea, sin caracteres de salto ni retorno.

No hay límite de longitud pero tenga en cuenta que su compañía de telecomunicaciones o su dispositivo movil puede dividir el SMS en  varios consecutivos en función de dicha longitud.

Procure evitar el uso de caracteres y símbolos no habituales porque pueden influir también en la longitud resultante de su SMS y la consecuente division en multiples envíos.

Título USAR_TEXTO_PREDEFINIDO_NUMERO:
Permite los valores vacío o del 0 al 4.
Use el valor 0 (cero) ó vacio para que el SMS asuma el texto especificado en el Título ‘TEXTO:’
Los valores del 1 al 4 usarán los textos que vd. haya predefinido en la aplicación.
Si en la definición de sus textos predefinidos ha usado identificadores de comodines serán sustituidos por los valores de los siguientes títulos.

Títulos
Comodín [MIDATO1]:cadena de texto opcional. obligatorio en una unica línea
Comodín [MIDATO2]:cadena de texto opcional. obligatorio en una unica línea
Comodín [MIDATO3]:cadena de texto opcional. obligatorio en una unica línea
Comodín [MIDATO4]:cadena de texto opcional. obligatorio en una unica línea
Comodín [MIDATO5]:cadena de texto opcional. obligatorio en una unica línea

Pueden carecer de valor o especificar una cadena de texto de idénticas características al título ‘TEXTO:’
Si especifica valores y el Título ‘USAR_TEXTO_PREDEFINIDO_NUMERO:’ es un numero del 1 al 4 se construirá el texto predefinido especificado sustituyendo en él los comodines por los datos correspondientes que figuran en estos títulos.

CONSIDERACIONES RESPECTO A LA LONGITUD DE LOS MENSAJES

Escribir SMS con acentos correctos puede implicar la subdivisión en varios mensajes.

El alfabeto con el que funciona la mayoría de los móviles no reconoce algunas letras con tilde. El problema no se debe a las operadoras de telefonía sino a los fabricantes de móviles.

El problema puede afectar también a otros signos de uso menos frecuente como el signo que abre una interrogación en castellano (¿),  aunque no el que lo cierra (?), la i con diéresis (ï, como en la  palabra catalana raïm) o la ce cedilla (ç), tanto mayúscula como minúscula.

El origen del problema no se encuentra en las operadoras telefónicas, aunque son quienes cobran el  importe de los mensajes, sino en los fabricantes de móviles. Gran parte de los modelos de teléfono móvil comercializados en los últimos meses por distintos fabricantes están  programados para funcionar con los símbolos del llamado alfabeto GSM 3.38, que consta de 138 símbolos distintos y permite escribir mensajes de hasta 160 caracteres.

Pero si se utiliza algún símbolo que no está en este alfabeto, el móvil pasa automáticamente a funcionar con el sistema Unicode, que limita  a 70 caracteres la longitud de cada mensaje. Por este motivo, si un usuario apura los 160 caracteres que cree tener en un SMS, pero escribe  En él letras con acento u otros caracteres no incluidos en el alfabeto GSM 3.38, se le factura por mensajes de 70 caracteres. Y un único mensaje de 160 caracteres se le factura como tres mensajes (dos de 70 más uno de 20).

El problema no afecta a todas las letras con acento ni a todas las diéresis. Así, se pueden escribir los símbolos é, è, ì, ò y ù (aunque no sus mayúsculas correspondientes) sin que el móvil conmute al modo Unicode. Pero el alfabeto GSM 3.38 no incluye otros caracteres más habituales en español y catalán como á, à, í o ú.

Un problema similar se da con las diéresis. Con ä, ö y ü se puede llegar a 160 caracteres, pero una ë y una ï hacen pasar al sistema Unicode.

En cuanto a la letra ñ, se puede escribir con alfabeto GSM 3.38 en minúscula, pero salta a Unicode en mayúscula.

 

Ficheros .csv para envío de una lista de mensajes

Puede generar ficheros de comandos para el envío de mensajes desde la información contenida en un
fichero csv con una estructura especifica.

Cuando se procesa un fichero csv, después de ser validado, SevinfSMS creará en su carpeta de Salida tantos «ficheros de comando» como filas válidas existen en su fichero csv.

La estructura que debe tener su fichero csv es la siguiente:

FECHA_ENVIO;HORA;NUMERO;TEXTO;USARTPREDEF;MIDATO1;MIDATO2;MIDATO3;MIDATO4;MIDATO5
13/12/2017;12:00;34609158838;TEXTO DEL MENSAJE1;0;;;;;
14/12/2017;12:00;34609158838;;1;9999BC;17/12/2018;Pepe Rodriguez;954000000;Dpto.Att.Cliente
15/12/2017;12:00;34609158838;TEXTO DEL MENSAJE3;0;;;;;
16/15/2017;32:00;3460158838;TEXTO DEL MENSAJE4;0;;;;;

 

Reglas:
– El separador de campos será el signo del punto y coma ;
– Después del último campo no se especifica separador de campos.
– La primera línea de su fichero csv NO debe contener las cabeceras.
– Si un campo carece de valor, se especificará no obstante su caracter separador.

FECHA_ENVIO: Longitud 10. Fecha de envío del sms. Formato dd/mm/aaaa
HORA: Longitud 10. Formato hh:mm Especifique una hora. Aplicación en futuras características.
NUMERO: Longitud 11 (Numérico). Teléfono del receptor. Debe empezar por el código de pais SIN especificar el signo +
TEXTO: Cadena de texto de su sms.

USAR_TEXTO_PREDEFINIDO_NUMERO: Permite los valores vacío ó del 0 al 4.
Use el valor 0 ó vacio para que el SMS asuma el texto especificado en el Título ‘TEXTO:’
Los valores del 1 al 4 usarán los textos que vd. haya predefinido en la aplicación.
Si en la definición de sus textos predefinidos ha usado identificadores de comodines serán sustituidos por los valores de los siguientes campos ‘MIDATOn’

MIDATO1..5 Cadenas de texto opcional
Pueden carecer de valor o especificar una cadena de texto de idénticas características al título ‘TEXTO:’
Si especifica valores y el Título ‘USAR_TEXTO_PREDEFINIDO_NUMERO:’ es un numero del 1 al 4 se construirá el texto predefinido especificado sustituyendo en
él los comodines por los datos correspondientes que figuran en estos títulos.

 

(C) 2018. Sevillana de informática y desarrollo
Todos los derechos reservados.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *