Java - Que clase utilizo para la conexion en una app de C

   
Vista:

Que clase utilizo para la conexion en una app de C

Publicado por Fausto Almeida (9 intervenciones) el 29/07/2008 22:32:43
Quiero desarrollar un chat que funcione en una red LAN, pero que no necesite de una app Servidor, sino que cuando cada usuario corra la app, ésta detecte a todos los usuarios que posean esa misma app corriendo y cree una lista de usuarios para poder enviar mensajes dirigidos a un usuario especifico de la lista... Por ejemplo como el Softros LAN Messenger... Repito, no quisiera hacer algo como el mIRC (en dond hay un textarea comun)... En si, solo quisiera saber que clase debo usar para establecer la conexion (no creo que pueda con Socket, ya que necesita conocer la ip del servidor, y para esta app no existiria)

Muchisimas gracias por tener paciencia para leer la pregunta, espero sus respuestas

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Que clase utilizo para la conexion en una app d

Publicado por angel (537 intervenciones) el 30/07/2008 10:22:34
No se, yo creo que necesitas un "servidor", un elemento de union entre todos los clientes. Algo que diga "quien" esta "en linea". Si no, como vas a encontrar alguien que use un mismo servicio que tu, ¿revisando todas las ip de internet?
El que haya un servidor intermedio, no quiere decir que tenga que haber un textarea común para todos, simplemente sirve de "punto de encuentro" para todos lo usuarios y saber quien esta en linea.

Suerte y saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Que clase utilizo para la conexion en una app d

Publicado por Fausto Almeida (9 intervenciones) el 30/07/2008 16:26:52
Si, eso sueno logico, obviamente no puedo "revisar" todas las ip de internet, la app que quisiera desarrollar solo va aservir para una LAN, muchas gracias por tu respuesta. Pero me queda la duda de que entonces cómo mismo funciona el Softros LAN Messenger, en mi trabajo solamente lo instalamos en cada pc y el automaticamente va reconociendo a cada uno de las pc en que se encuentra instalado... No habra alguna manera de ademas de conocer la ip de la pc en que se ejecuta una app de java, tambien se pueda conocer la mascara? Talvez con eso pueda comenzar un mini escaneo... No se...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Que clase utilizo para la conexion en una app d

Publicado por angel (537 intervenciones) el 31/07/2008 10:02:37
Hola, hace poco estaba haciendo unas pruebas con el comando "net send", entonces en mi aplicación daba de alta maquinas de mi red local y el programa mediante el comando "ping" comprobaba que maquinas de mi lista estaban online.
Supongo que tu podrias hacer algo similar...
Para conseguir la ip hay muchas clases java que te lo permiten, por ejemplo asi:
byte[]ip = java.net.InetAddress.getLocalHost().getAddress();
System.out.println("Mi ip es:"+ip[0]+"."+ip[1]+"."+ip[2]+"."+ip[3]);

Para la mascara creo que es más complicado, aunque siempre hay truquillos(chapuceros, eso si) como este ejemplo (solo para maquinas windows para linux seria con ifconfig):

try{
String msg = "ipconfig";

Process p = Runtime.getRuntime().exec(msg);
p.waitFor();

System.out.println("Exit value:"+resultado);

java.io.BufferedInputStream bfr = new java.io.BufferedInputStream(p.getInputStream());
String buff = "";
byte[] bbuff = new byte[1024];
int len=0;
while((len=bfr.read(bbuff))!=-1){
buff += new String(bbuff,0,len);
}
System.out.println("Salida inicial:"+buff);

int inicio = buff.indexOf("subred");
inicio = buff.indexOf(":", inicio);
int fin = buff.indexOf("Puerta");
System.out.println("Subred:"+buff.substring(inicio+1,fin).trim());
}catch(Exception e){
e.printStackTrace();
}

Suerte y saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Que clase utilizo para la conexion en una app d

Publicado por angel (537 intervenciones) el 31/07/2008 10:11:18
El segundo codigo que te puse tiene un fallo, elimina la linea:

System.out.println("Exit value:"+resultado);

o añade esta antes:

int resultado = p.exitValue();

Es solo para ver el codigo que devuelve el proceso, si todo ha ido bien devolvera 0.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Que clase utilizo para la conexion en una app d

Publicado por Fausto Almeida (9 intervenciones) el 05/08/2008 18:02:49
Muchas gracias... Ese codigo fue de gran utilidad...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar