Evaluando propuestas

Comunicaciones entre clientes y un servidor para comunicación de comandos y programaciones.

Publicado el 02 Abril, 2018 en Programación y Tecnología

Sobre este proyecto

Abierto

Necesito de una aplicación para un servidor, que pueda recibir y enviar información a/de diferentes tipos de clientes (celulares o módulos wifi), y pueda redirigir a ésta entre ellos según un paquete de información que contiene a quien se le debe  enviar o de quien proviene. El software para los celulares como para los módulos wifi o aplicaciones con módulos GSM ya están desarrollados.
En un proyecto inicial, no se necesita que el servidor mantenga ningún acceso ni control con un operador que actúe sobre ella o la modifique.
El concepto es mantener una base de datos de la IP pública y puerta de comunicación que tengan los dispositivos clientes activos en los momentos que están “conectados” y que ante un comando enviado desde determinado origen pueda redirigirse inmediatamente a su destino solicitado.
Debido a que los dispositivos que componen esta “red” pueden cambiar su IP cada vez que lo  inicializan,  es necesario mantener actualizado esa “ubicación” y ante un cambio en ese valor se enviará una petición al servidor para que mantenga esta función de nexo entre clientes.
La utilización de numero de imei para los celulares o  códigos especiales en los módulos wifi serán los que contengan la id necesaria para ubicarlos en la base (mysql). No es necesario mantener estadísticas ni bases de datos sobre el uso que tenga el sistema.
Resumiendo, cualquier cliente de la red que  se quiere comunicar con otro cliente (sean cualquiera de ellos un celular o modulo wifi) para pasarle un comando (string), usará al servidor como nexo de ubicación del destino solicitado y no debe esperar que haya constantes peticiones de cada cliente para hacerle saber que hay “algo” para otros clientes.

Salvo para cuando cambie su ip, cuando se conecte mediante un heart beat (para indicar que está conectado a la red), cuando se produzcan eventos en el módulo o que se quiera enviar un comando de programación o solicitud de estado destinado a otro cliente, no habrá peticiones periódicas al servidor. En este caso se redirigirá inmediatamente (y  en forma transparente), el comando en que se especifica al destino especificado.
Además cualquier cliente podrá enviar una petición al servidor para “conocer” si determinado  cliente de la red está activo y poder actualizar sus datos internos y determinar si debe “encolar” información mientras no pueda hacerle llegar un determinado comando. Una vez recibido que si está disponible, enviará una serie de strings con toda la información que tenía pendiente para que se “distribuya” según coresponda .

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo el diseño
Disponibilidad requerida Según se necesite
Roles necesarios Programador

Plazo de Entrega: No definido

Habilidades necesarias

Otros proyectos publicados por S. S.