de en

 


Sorry, but currently this page is not available in your language.

code name X Network

code name X
Der Server des codenameX Network stellt das Basissystem für verschiedene noch in Planung/in Arbeit befindende Projekte dar.

codenameX Network

Das codenameX Network ist eines der Projekte, die zur Zeit von mir entwickelt werden. Es begann als ein typisches Kleckerprojekt. Ich glaube jeder der schon länger Software entwickelt kennt das. Man hat eine Idee, fängt an sie umzusetzen und nach einiger Zeit merkt man, dass man gar nicht so den großen Nutzen davon hat.

So war es auch bei diesem Projekt. Anfangs gab es die Idee den Server, der bei dem Threatwork Projekt entstanden ist etwas universeller umzubauen sodass andere Projekte auf das (geplante) codenameX Network zurückgreifen können. So weit so gut. Aus dem "universeller umbauen" wurde sehr schnell ein "komplett neu schreiben", aber als der Server soweit war, dass Funktionen eingebaut werden konnten gingen mir die Ideen aus, wofür der Server denn nun gut sein könnte. So lag das Projekt längere Zeit auf Eis, auch dadruch bedingt, dass zu der Zeit das SEP (genauere Infos unter CrazyChicken) sehr viel Zeit für sich beansprucht hat.

Mittlerweile gibt es aber zumindest ersteinmal eine Idee. Ich arbeite zur Zeit an einem LiveTicker für das Turniersystem und da dieser seine Daten irgendwo her bekommen muss, ist der Server praktisch prädestiniert das Trägersystem für den LiveTicker zu werden. Und wenn dann das Turniersystem schon am codenameX Network angeschlossen ist wäre es eventuell sinnvoll auch andere damit zusammenhängende Dinge darüber laufen zu lassen. Mal schauen. Mehr dazu aber sobald der LiveTicker fertig (oder zumidest fertiger) ist hier und auf der Seite des Turniersystems.


Protokoll

Wie jede Client/Server Architektur braucht auch diese ein Protokoll über das die Clients mit dem Server kommunizieren. Im codenameX Network gibt es nur zwei unterschiedliche Nachrichten: Befehle (engl. commands) und Antworten (engl. replies). Dabei werden Replies nur vom Server an den Client gesendet, Commands können - je nach dem - vom Client und/oder vom Server versendet werden. Der verwendete Zeichensatz ist UTF-8.

Die Syntax der Commands und Replies ist dabei sehr einfach gehalten. Dies hat den Vorteil, dass das Protokoll leicht verständlich und leicht zu implementieren ist.
Ein Command hat dabei allgemein die folgende Syntax:
<Command name> [arg1 [arg2 [...]]] [:Volltextargument]
Ein Reply hat allgemein die folgende Syntax:
<Nickname des Agierenden> <eindeutige Replynummer> [arg1 [arg2 [...]]] :<erklärender Text mit Argumenten>
Alle versendeten Nachrichten werden mit einem Zeilenumbruch (nur ein LineFeed (\n), kein CarriageReturn (\r)) beendet.

Eine genaue Beschreibung der Commands und Replies werde ich später an dieser Stelle hinzufügen.