Este repositorio contiene el servidor para un sistema de mensajería instantánea distribuido implementado utilizando Java RMI. El servidor gestiona las conexiones de múltiples clientes y permite la comunicación directa entre ellos, sin necesidad de pasar los mensajes a través del servidor.
- Conexión de múltiples clientes: El servidor puede manejar múltiples clientes conectados simultáneamente.
- Notificaciones de conexión y desconexión: Cada vez que un cliente se conecta o desconecta, el servidor notifica a todos los clientes activos.
- Comunicación directa entre clientes: Los mensajes se envían directamente de cliente a cliente.
- Gestión opcional de grupos de amistad: Los clientes pueden formar grupos de amigos y gestionar solicitudes de amistad.
- Registro y autenticación de usuarios: Los usuarios pueden registrarse e iniciar sesión utilizando un nombre de usuario y contraseña.
El proyecto está dividido en varias partes principales:
Server.java: Clase principal del servidor que acepta y maneja conexiones de clientes.Client.java: Clase cliente que se conecta al servidor y realiza comunicaciones directas con otros clientes.
Es necesario tener instalado Java y configurado el entorno para usar RMI.
- Clonar el repositorio:
git clone https://github.com/soocratess/P2PChatServer.git
-
Compilar los archivos
.java -
Ejecutar el servidor
Conectar un cliente al servidor, puedes descargar mi versión del siguiente modo:
git clone https://github.com/soocratess/P2PChatApp
Para contribuir a este proyecto, por favor, envíe un pull request o abra un issue para discutir los cambios propuestos.