# Diagramm
- Username
- 3-12 Zeichen, eindeutig
Screenshot

# Bemerkungen
- port
- 1987
- username
- 3-12 Zeichen, eindeutig
# Umsetzung
Um dieses Protokoll in Python umsetzen zu können, müssen folgende Punkte berücksichtig werden:
- GUI
- Wir brauchen ein Userinterface mit einem Bereich für die Eingabe und einem Bereich für die Anzeige des Chatverlaufs.
👉 GUI - Socket
- mitteils einer Socket-Verbindung können wir mit dem Server kontakt aufnehmen.
👉 Echo-Client - Threads
- Der Chatclient muss immer Nachrichten empfangen können, gleichzeitig soll er aber auch immer bereit sein eine Nachricht zu verschicken. Dazu müssen wir sogenannte Threads verwenden – unabhängige Prozesse die gleichzeitig ausgeführt werden können.
👉 Threads - Strings
- Das Protokoll übermittelt Textnachrichten. Diese sind teilweise zweigeteilt: Der erste Teil beinhaltet einen Befehl, der zweite die Nachricht. Mittels String-Operationen können diese Teile erkannt und getrennt werden.
👉 String-Operationen
# Erweiterungsvorschläge
- Userliste
- Der Chat-Client lernt wer im Chat ist und speichert die Namen in einer Liste
- Verlässt jemand den Chat, dann kann der Eintrag gelöscht werden
- Buttons
- Knopf um dem Chat beizutreten, ev. Usernamen wählen
- Button um den Chat zu verlassen
- Button um private Nachricht zu schicken
# Produkt

← Python