Skip to content

Dan178A/Socket-Communication-System

Repository files navigation


WebSocket Server and Client Implementation

Descripción

Este proyecto implementa una aplicación de comunicación basada en WebSockets con arquitectura cliente-servidor. Proporciona una interfaz gráfica (GUI) usando PyQt5 para facilitar la conexión y comunicación entre múltiples máquinas en una red local.

Características Principales

  • Servidor WebSocket: Basado en Socket.IO con eventlet para manejar conexiones concurrentes
  • Cliente WebSocket: Conecta a servidores remotos con reconexión automática
  • Interfaz Gráfica: Aplicación PyQt5 intuitiva para configuración y monitoreo
  • Gestión de Conexiones: Soporte para múltiples clientes conectados simultáneamente
  • Intercambio de Mensajes: Comunicación bidireccional entre servidor y cliente
  • Detección de IPs: Utilidades para detectar y seleccionar direcciones IP locales

Estructura del Proyecto

testing_socket/
├── main.py                      # Punto de entrada de la aplicación
├── Server_Env.py               # Implementación del servidor WebSocket
├── Client_Env.py               # Implementación del cliente WebSocket
├── Manager_server_client.py    # Gestor de conexiones servidor/cliente
├── ip_utils.py                 # Utilidades para detección de direcciones IP
├── socket_ui.py                # Interfaz gráfica generada
├── socket.ui                   # Archivo de diseño Qt Designer
└── setup.py                    # Configuración del proyecto

Requisitos

  • Python 3.x
  • PyQt5
  • python-socketio
  • eventlet

Instalación

pip install -r requirements.txt

Uso

python main.py

La aplicación permite seleccionar entre modo servidor o cliente, especificar direcciones IP y probar la conectividad entre máquinas.

Funcionalidades

  • ✅ Modo Servidor: Escucha conexiones entrantes y gestiona múltiples clientes
  • ✅ Modo Cliente: Conecta a servidores remotos
  • ✅ Validación de Conexión: Pruebas automáticas de conectividad
  • ✅ Interfaz Visual: Indicadores de estado de conexión (éxito/error)

Este resumen es profesional y completo. ¿Deseas que añada o modifique alguna sección?

About

Implementacion de Servidor y Cliente webSocket

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages