Files
progredes20261/sockets/servidor_chat.py
T

32 lines
923 B
Python
Raw Normal View History

2026-04-17 21:47:22 -03:00
import socket
import threading
2026-05-08 21:38:09 -03:00
import time
2026-04-17 21:47:22 -03:00
servidor = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
servidor.bind(("0.0.0.0",5000))
servidor.listen()
print("Servidor inicializado!!!")
clientes = []
def ouvir_cliente(cliente):
2026-05-08 21:38:09 -03:00
funcionar = True
2026-04-17 21:47:22 -03:00
while True:
2026-05-08 21:38:09 -03:00
try:
if funcionar:
2026-05-15 20:33:17 -03:00
mensagem = cliente.recv(80000)
2026-05-08 21:38:09 -03:00
for socket_cliente in clientes:
if socket_cliente != cliente:
socket_cliente.send(mensagem)
else:
time.sleep(5)
2026-05-08 21:20:40 -03:00
except Exception as e:
2026-05-08 21:38:09 -03:00
print(f"Ocorreu um erro inesperado: {e}")
funcionar = False
2026-04-17 21:47:22 -03:00
while True:
cliente, endereco_cliente = servidor.accept()
2026-05-08 21:20:40 -03:00
print("Cliente conectado:", endereco_cliente)
2026-04-17 21:47:22 -03:00
clientes.append(cliente)
thread = threading.Thread(target=ouvir_cliente, args=[cliente,])
thread.start()