Chat con sockets TCP
Publicado por Rolando (3 intervenciones) el 12/09/2020 13:11:51
Hola a todos, estoy haciendo un chat el cual consta de un cliente y un servidor, en el servidor atiendo las peticiones y delego su procesamiento a un nuevo hilo para así mantener el hilo principal a espera de nuevas conexiones. Mi problema es el siguiente:
En mi cliente necesito tener un listado de los otros clientes que están online, para eso necesito que mi servidor tenga constancia de todos los clientes online todo el tiempo, la cuestión es que no se como hacerlo. He buscado y encuentro respuestas pero no dan solución al problema, la cuestión es que si un usuario tiene su aplicación cliente abierta y no decide escribirle a nadie eso no significa que esté offline, y es eso lo q necesito, si el usuario abre su cliente, el server lo debe de saber y mientras esté abierto lo debe de saber, no se cómo funciona la lógica detrás de los sockets pero no creo eficiente mandar peticiones todo el tiempo desde todo cliente al servidor solo para decirle Hey listen!!! Gracias de antemano por la ayuda y disculpen el panfleto que les acabo de dejar, solo quería que quedara bien clara la duda para no hacerles perder el tiempo
En mi cliente necesito tener un listado de los otros clientes que están online, para eso necesito que mi servidor tenga constancia de todos los clientes online todo el tiempo, la cuestión es que no se como hacerlo. He buscado y encuentro respuestas pero no dan solución al problema, la cuestión es que si un usuario tiene su aplicación cliente abierta y no decide escribirle a nadie eso no significa que esté offline, y es eso lo q necesito, si el usuario abre su cliente, el server lo debe de saber y mientras esté abierto lo debe de saber, no se cómo funciona la lógica detrás de los sockets pero no creo eficiente mandar peticiones todo el tiempo desde todo cliente al servidor solo para decirle Hey listen!!! Gracias de antemano por la ayuda y disculpen el panfleto que les acabo de dejar, solo quería que quedara bien clara la duda para no hacerles perder el tiempo
Valora esta pregunta


0