SMS Infraestructura V3
By: Date: noviembre 13, 2016 Categories: Redes y Telecoms

SMS INFRAESTRUCTURA como su nombre indica, crea una infraestructura para envío de mensajes de texto SMS , está pensando para construirla de manera económica con terminales Android razonablemente baratas, mientras más terminales de Android tenga en su pool más rápido podrán despacharse cientos o miles de mensajes. El uso más común para este tipo de aplicaciones es envío de mensajes de falla de servidores. En programación puede ser usado en el código try catch para excepciones importantes como falla en la conexión de una base de datos, lectura de disco, error de red, ETC. En grupos sociales se puede usar como envío masivo de mensajes SMS por ejemplo el gobierno avisando de una alerta climatológica a sus ciudadanos.

SMS INFRAESTRUCUTURA ( Ver articulo )

En el 2012 había escrito un App llamada SMS INFRAESTRUCTURA, no quede muy satisfecho ya que esta versión pronto dejo claro que amarra al programador a usar exclusivamente la base de datos MySQL, el APK del app al incluir drivers de conexión para la base de datos se vuelve aún más pesado por lo que quiere más CPU del celular, más RAM para ejecutarse y más espacio para almacenar el APK. Sin contar que la conexión a la DB no va cifrada.

SMS INFRAESTRUCTURA 2

Para solventar este problema la versión 2 hace uso de webservice SOAP, Esto consiguió liberar el uso exclusivo de MySQL como DB pero involucra que cada lenguaje en el que se quiera trabajar deberá escribir el webservice apropiado lo cual se complica un poco si se trata de SOAP. Por esta razón nunca se publicó esta versión en la Google Play Store

SMS INFRAESTRUCTURA 3

Para solventar los problemas que involucran los webservice con SOAP escribí la nueva app para usar un sencillo API REST WebService que básicamente es recibir un bloque en JSON con GET y lo obtiene consultando una única URL, este tipo de webservice es fácilmente soportado por cualquier lenguaje de programación. En algunos lenguajes como PHP construir el bloque JSON es cosa de 2 líneas de código, las demás líneas de código son para la consulta en la DB que podría ser cualquiera soportado por PHP,Python,Ruby,ETC en el caso de escribir el webservice con C# o Java este podría consultar DB como Oracle o SQL Server o incluso NoSQL sin mayor problema pues al final lo que vale para esta versión es el JSON

JSON para controlar el APP

En cada consulta que hace el APP al url espera recibir un JSON y es con este que sabe si debe enviar un SMS o no hacer nada cuando no hay SMS que enviar.

Bloque JSON para no hacer nada.

{"num":"NO","payload":"MENSAJE"}

Cuando “num” vale NO y debe ser NO con mayúsculas, el APP descarta este bloque, aunque PAYLOAD tenga un valor de texto para enviar no hay número a donde enviarlo, la aplicación se mantiene quieta hasta la próxima consulta GET para obtener un nuevo bloque JSON. Como la aplicación tiene que estar consultando por nuevos mensajes para enviar se debe controlar con num valor NO cuando no tenga mensajes nuevos o en cola por enviar.

Bloque JSON para enviar un mensaje a un numero de celular

{"num":"5544332211","payload":"AQUI VA EL MENSAJE DE TEXTO"}

Ejemplo en código PHP para construir el bloque JSON

<?php

// Codigo para darle valor a num y payload

header('Content-Type', 'application/json');
header('Content-Type: text/html; charset=UTF-8');

$resultado = array('num' => "NO", 'payload' => "MENSAJE");
echo (json_encode($resultado));

?>

Descargar SMS INFRAESTRUCTURA V3 desde su sitio oficial en Google Play

https://play.google.com/store/apps/details?id=smsinfrav3.lastdragon.net.smsinfrav3&hl=es

4 thoughts on “SMS Infraestructura V3

  1. Google Chrome 53.0.2785.116 Windows NT

    Hola, buenas noches!

    Acabo de realizar la prueba de concepto y todo funciono correctamente. Salvo por una cosa: cada 3 segundos vuelve a enviar todos los mensajes que aparecen en el JSON que genere mediante PHP.

    ¿Cómo puedo hacerle para que cada vez que envie un mensaje lo saque de la cola de mensajes pendientes? En cuestión de 1 minuto lleve la bandeja de mensajes del número que puse en el bloque de JSON jajajaja.

    Espero puedes orientarme.

    Saludos y gracias por compartir tu conocimiento 😉

Responder a Last Dragon Cancelar respuesta

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