Exemplo n.º 1
0
    def run(self):
        while self.running:
            try:
                # Attesa di una connessione
                # print("\nAttesa di una connessione...\n")
                (clientSocket, addr) = self.serverSocket.accept()

                # Connessione ricevuta, estrae l'username
                username = ml.strReceive(clientSocket)

                print("\nConnessione di", username, "con parametri", addr)
                console_print("\nConnessione di", username, "con parametri",
                              addr)

                # Creazione thread, avvio e ritorno ad ascoltare
                svc = UserHandler(clientSocket, addr, username)
                svc.start()
                running_thread.append(svc)

                update_users()

                # print("Thread inizializzato con successo")
                # console_print("Thread inizializzato con successo")
            except ConnectionResetError:
                print("Client chiuso forzatamente dall'utente")
                console_print("Client chiuso forzatamente dall'utente")
            except Exception as e:
                print("Arresto del server in corso")
                console_print("Arresto del server in corso")
Exemplo n.º 2
0
    def run(self):
        try:
            while self.running:
                msg = ml.strReceive(self.socket)  # Ricezione messaggio

                # Comando di uscita, il thread viene terminato
                if msg == 'quit':
                    client_quitted(self.socket, self.username)
                    remove_connection(self.socket)
                    break

                now = timespamp()
                print("[" + now + "]", self.username + ": " + msg)
                console_print("[" + now + "]" + self.username + ": " + msg)
                forward(self.socket, self.username, msg)
        except ConnectionResetError:  # Nel caso il client venga chiuso dalla X
            client_closed(self.socket, self.username)
            remove_connection(self.socket)
        except ValueError:  # Nel caso il client venga chiuso dalla X
            client_closed(self.socket, self.username)
            remove_connection(self.socket)
        except Exception as e:
            remove_connection(self.socket)
            print(self.username, "è crashato")
            console_print(self.username, "è crashato")
Exemplo n.º 3
0
    def run(self):
        try:
            while True:
                msg = ml.strReceive(self.s) # Ricezione messaggio

                now = datetime.now().strftime("%d-%m-%Y %H:%M:%S") # Data corrente

                # Comando di uscita, il thread viene terminato
                if msg == 'quit':
                    out = "["+now+"] " + self.username + " ha abbandonato la chat"
                    print(out)
                    ml.strSend(self.s, out) # Messaggio di termine
                    send_to_all(self.s, self.username, out)
                    self.s.close()
                    connessioni.remove(self.s)
                    break;

                print("["+now+"]", self.username + ": " + msg)
                send_to_all(self.s, self.username, msg)
        except ConnectionResetError: # Nel caso il client venga chiuso dalla X
            client_closed(self.s, self.username)
        except ValueError: # Nel caso il client venga chiuso dalla X
            client_closed(self.s, self.username)
Exemplo n.º 4
0
 def run(self):
     while self.running:
         msg = ml.strReceive(self.s)
         print(msg)
Exemplo n.º 5
0
            client_closed(self.s, self.username)
        except ValueError: # Nel caso il client venga chiuso dalla X
            client_closed(self.s, self.username)


#
# Creazione socket e ascolto su HOST e PORT
#
serverSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serverSocket.bind((ml.HOST, ml.PORT))
print("Server Two avviato su", ml.HOST, ":", ml.PORT)

# Il server ascolta
serverSocket.listen(5)
while True:
    # Attesa di una connessione
    print("\nAttesa di una connessione...\n")
    (clientSocket, addr) = serverSocket.accept()

    username = ml.strReceive(clientSocket)
    # Connessione ricevuta, estrae l'username
    print("\nConnessione di", username, "con parametri", addr)
    connessioni.append(clientSocket)

    # Creazione thred, avvio e ritorno ad ascoltare
    svc = Service(clientSocket, addr, username)
    svc.start()
    print("Thread inizializzato con successo")

print("Server terminated.")
Exemplo n.º 6
0
#
# Server One
# Team: Sandro Gallo
# last-updated: 10/04/2020 by Sandro
#

import socket
import mylib as ml

# Create a socket object (server)
serverSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# and Bind it to the addr:port
serverSocket.bind((ml.HOST, ml.PORT))
print("Server One started on", ml.HOST, ":", ml.PORT)

# Wait for client connection.
serverSocket.listen(5)
while True:
    # Wait for a connection request from any client
    print("\nwaiting a client connection ...")
    (clientSocket, addr) = serverSocket.accept()
    print('Got connection from', addr)
    # receiving a message from client
    msg = ml.strReceive(clientSocket)
    print("Received message: ", msg)
    # Close the connection
    clientSocket.close()
    if msg=='quit':
        break
print("Server terminated.")