Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Ayuda con programa de chat en delphi (https://www.clubdelphi.com/foros/showthread.php?t=35635)

zanyodark 16-09-2006 06:17:33

Ayuda con programa de chat en delphi
 
Hola, espero alguien sepa y pueda ayudarme, mi problema es el siguiente:

Hice un programa que es un chat a base de socket server y socket cliente, el cual se conectan a base de la ip del servidor, por lo que el mensaje que se envia de cualquier cliente o servidor lo visualizan en todos los conectados( los clientes deciden si ponen nombre de usario o como invitado), lo que yo quiero hacer es que el servidor haga una lista de todos los clientes conectados y los clientes puedan ver esta lista y tambien que estos (los clientes) puedan decidir a quien enviar el mensaje, para que sea privado y no público osea que nomas el destinatario sea el que vea el mensaje enviado.

No se si me expliqué, pero espero que alguien me pueda ayudar, perdon por las molestias y gracias de antemano.

lag_0 17-09-2006 03:56:07

Buenas,

La manera más facil es que lo hagas apartir de añadir, por ejemplo, identificadores en las cadenas, que cuando el cliente seleccione un "nick" se mande %%nick%%-mensaje, y al llegar a tu servidor pues busque la ip de el nick y mande el mensaje... No es tarea muy complicada.

Respecto a lo de la lista de usuarios... lo mismo, que al conectar un usuario el servidor lo añada a una lista y mande la de los otros usuarios al nuevo cliente...

Un saludo y espero ayudarte...

zanyodark 17-09-2006 03:59:54

Gracias por tu ayuda, lo voy a implementar.

lag_0 17-09-2006 04:15:40

De nada =) mucha suerte.

zanyodark 17-09-2006 06:04:19

disculpen, aa como puedo ver la ip de los clientes conectados al servidor desde el servidor claro, algun código?

lag_0 17-09-2006 12:30:55

Supongo que utilizarás TServer socket y tu delphi será < delphi 7, así que intenta con:

ServerSocket1.Socket.Connections[numerodecliente].RemoteAddress

zanyodark 17-09-2006 21:25:24

Hola, muchas gracias, sabia que era remote address pero lo estaba usando mal jejeje, diablos que tonto me siento, pero muchas gracias de todos formas si funcionoj ejeje ya logre hacer la lista de ip's, que la utilizare para mandar el mensaje directo segun el cliente decida,pero hay algo que no he podido hacer, como puedo realizar la lista del nick que escogen los clientes, le he intentado de varios modos pero no me sale, intente que al momento de que eligieran el nick, se mandara al servidor el nick con Clientsocket1.socket.sendtext(nickname) oviamente nickname es la variable que reserve para los nombre de usuarios, pero si no tiene caso esto no funciona, que me recomiendan para hacer eso de la lista con nombre de usuario, algun código? please, y luego como se mandaria la lista con puros nicknames de los usuarios conectados al servidor? agradecería mucho.


La franja horaria es GMT +2. Ahora son las 07:43:00.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi