sábado, 15 de noviembre de 2008

Seguimiento y control del mouse con Java

Bien, tratare de ser breve ya es la 1:10am y acabo de terminar un pequeño prototipo. Como algunos de uds saben (o David pues es el unico que creo que lee jejeje), estoy trabajando en un sistema de escritorio remoto, basado en Java, ¿por que java? bueno yo no elegi el lenguaje (aunque no hice nada para cambiar eso).

Hasta el momento me han comentado algunos aspectos en los cuales debo concentrarme:
  • Remote Desktop que pueda pasar sin problemas en firewall de tu empresa o ISP, operar incluso en comunicacion entre red publica-privada y el caso contrario tambien.
  • Se debera evitar que el usuario instale algun programa, como estara basado en web, solo los plugins del browser nos valen.
  • Facilidad de uso.
Por lo tanto para administrar un equipo remoto, necesitamos poder manipular algunos de sis dispositivos de entrada, como el mouse y el keyboard. Siendo el lenguaje Java, de momento me di cuenta de que existe algo que se llama JNI (Java Native Interface), con la cual podemos hacer invocacion a metodos y funciones escritos en lenguaje C/C++, con el objetivo principal de accesar a los recursos de la maquina. ¿Pero al ser web como envio los binarios? podria tratar de resolver esto de algunas maneras que no se me hicieron muy practicas, asi que segui buscando y vi algo en las librerias de AWT, con lo que puede resolverme ese detalle.

Lo dejare en suspenso para la proxima publicacion, donde les comentare que clases me sirvieron y de la misma manera le compartire un video demostrativo del funcionamiento del prototipo. Les dejo solo el screen, cada ventana viene en un proceso independiente los cuales comunico con un socket, si yo muevo el mouse en la ventana de la izquierda, automaticamente le hago un seguimiento de su rastro en la otra venta, es decir estoy mandando coooredenas, y sobre esas coordenadas yo movere mi mouse en el equipo remoto, asi o mas facil.


Como nota final, quiero comentar que buscando en la red, como hacer esto, la informacion no me fue muy util ya que veo que se mal interpreta, controlar el mouse con monitorear el mouse y recibir sus eventos. Para mi controlar el mouse es moverlo por software y monitorerear es recibir sus eventos.

3 comentarios:

David Estrada dijo...

Que onda Martín como te va? Jaja! Quién diría que te iba a tocar programar en Javita para tus residencias, ojalá que le empieces a agarrar el gusto :).

Bueno, sobre el tema, muy interesante tu proyecto, aún no se bien que planean hacer con la aplicación que estás desarrollando :o pero a mi punto de vista, aplicaciones de ese tipo ayudan a aprender bastante.

Me dejaste emocionado, estaré al pendiente para cuando subas más información sobre tu proyecto, no me vayas a dejar en suspenso jajaja!

Saludos.

Anónimo dijo...

posibilidades de que montes el codigo fuente??

Unknown dijo...

hola mandame un mensaje quiero consultarte algo, saludos de arg.
dariocdabeja@gmail.com