Actualmente estoy en un proyecto en el que nos comunicaremos entre un electrodoméstico (por ejemplo, un horno) con una computadora integrada y un dispositivo móvil (teléfono). He aquí un breve resumen de la configuración:
¿Existen marcos que admitan comunicación en tiempo real a través de Internet y LAN, publicación-suscripción y RPC, y que se ejecuten tanto en Java como en C#? Tengo algunos buenos candidatos, pero especialmente no veo forma de compartir protocolos entre la comunicación a través de Internet y la comunicación a través de LAN (¿es esto posible?). Mi lista actual consta de (en orden):
XMPP también parece que podría ser prometedor, pero por lo que he visto en la comunidad y la documentación/los ejemplos no parecen sólidos, también he leído que el rendimiento con XMPP no es del todo en tiempo real.
Entonces, esta no es realmente una respuesta (más información), pero es demasiado para el campo de comentarios.
¡Suena como un proyecto divertido! Solo puedo hablar por XSockets, pero estoy seguro de que alguien más llenará los espacios en blanco para los demás técnicos.
Dado que XSockets tiene comunicación de "protocolo cruzado" y permite protocolos personalizados como complementos, la comunicación se puede realizar entre cualquier dispositivo que tenga TCP/IP.
La V 4.0 está a punto de ser lanzada pronto y admitirá pub/sub así como también rpc. Hay clientes para .NETMF, .NET 2.0, 3.5, 4.0 e iOS + Android (Xamarin), pero debido a la función de protocolo cruzado, puede conectar sockets sin procesar para hablar con estos clientes si lo desea.
Ejecuto el servidor XSockets en casa en una raspberry pi y tengo Arduino y Netduinos conectados, así como un cliente iOS (además de un sitio web y una aplicación de consola). Funciona bien a pesar de que es solo por diversión y no es un producto real. Acabo de comprobar la temperatura y el movimiento en mi casa como prueba de concepto.
Para llegar a su pregunta/problema... elegiría un marco en tiempo real, no las opciones de MQ. La mayoría de las cosas anteriores serían bastante sencillas con un buen marco. La única pregunta es la LAN. No tengo experiencia en intentarlo, pero debería ser factible, especialmente si puede tener un servidor en tiempo real en la LAN que se hace cargo cuando el dispositivo llega a casa.
De todos modos, suena como un proyecto divertido. ¡La mejor de las suertes!
w3therby
Uffe
Uffe