4. Peer To Peer - Projekt
1. Server als zentrale Verwaltungseinheit¶
Anforderung: Der Server dient als Adressverzeichnis. Clients registrieren sich mit Nickname und UDP-Port, um Peer-Verbindungen zu ermöglichen.
Umsetzung:
-
Client sendet beim Verbinden:
-
Server speichert Nickname, IP und UDP-Port, verweigert doppelte Nicknames:
2. Broadcast-Nachrichten an alle Teilnehmer¶
Anforderung: Nachrichten sollen über den Server an alle verbundenen Clients verteilt werden.
Umsetzung:
-
Client sendet
BROADCAST
an Server: -
Server verteilt Nachricht an alle anderen:
3. Anzeige der verbundenen Teilnehmer¶
Anforderung: Jeder Client soll sehen, welche Benutzer verbunden sind, inklusive IP & UDP-Port.
Umsetzung:
-
Server sendet
USERLIST
: -
Client zeigt Einträge in einer
Listbox
:
4. Aufbau privater Chats über UDP und TCP¶
Anforderung: Clients sollen private Direktverbindungen aufbauen können (Verbindungsaufbau über UDP, Kommunikation über TCP).
Umsetzung:
-
Chat-Anfrage per UDP:
-
Nach Annahme erfolgt TCP-Verbindung:
5. Verwaltung paralleler Direktverbindungen¶
Anforderung: Mehrere Direktverbindungen sollen möglich sein, aber gleiche Usernamen/IP-Port-Kombis dürfen sich nicht doppelt verbinden.
Umsetzung:
-
Serverseite:
-
Clientseite:
6. Trennung privater Chats¶
Anforderung: Wenn ein Chat-Partner das Fenster schließt, soll der andere informiert werden.
Umsetzung:
-
Beim Schließen wird eine spezielle Nachricht gesendet:
-
Empfangende Seite zeigt Hinweis:
🔗 Project Repository¶
👉 Click here to download or view the full source code on GitHub