TCP-Server 1.0: Es ist soweit!

Soundthesizer, Zusitool und andere Zusatzsoftware

Moderatoren: Andreas Damm, Jens Haupert

Antworten
Nachricht
Autor
Benutzeravatar
Daniel Schuhmann
Beiträge: 1147
Registriert: 21.04.2003 18:50:37
Aktuelle Projekte: Nüscht
Wohnort: Miesbach
Kontaktdaten:

TCP-Server 1.0: Es ist soweit!

#1 Beitrag von Daniel Schuhmann »

Servus,

was lange währt, wird endlich gut. Und so erblickt nun der TCP-Server 1.0 für die Zusi-Datenausgabe das Licht der Welt.

Bild

Ein paar Tage Betatest hat er nun hinter sich, und es wurden bisher keine Probleme festgestellt, so daß er heute offiziell wird.

Den Download gibt es auf der Zusi-TCP-Seite

Zur Zeit gibt es noch keine Anwendungen, die den Server unterstützen; die EBuLa- MMI- und David-Displays von Jens Haupert können aber in ersten Testversionen schon mit dem TCP-Server umgehen und werden wohl in Kürze in einer neuen Beta erscheinen.

Gleichzeitig mit dem TCP-Server ist nun eine neue Version des Protokolls erschienen. Die Grundstruktur ist unverändert, nur einige Fehlerparameter wurden hinzugefügt. Die Spezifikation trägt nun die Versionsnummer 1.1, das Protokollbit ist immer noch Version 01.

Einige Hinweise für Entwickler:
Die Sample-Session in der Protokollspezifikation ist nun vollständig gültig. Der Client sendet den HELLO-Befehl und erhält ACK_HELLO zurück. Hier ist darauf zu achten, ob das Parameterbit 00 ist, in dem Fall dürfen die Daten mit NEEDED_DATA angefordert werden. Ist auch hier bei der Antwort ACK_NEEDED_DATA das Parameterbit 00, wurde dieser Befehl akzeptiert. Anschließend kann auf die DATA-Befehle gewartet werden. Genaueres steht in der Protokoll-Spezifikation.

Einige Hinweise für Anwender:
Nachdem nun mehrere Clients verbunden werden können, ist die Reihenfolge wichtig. Bei den "Zubehörclients" spielt es keine Rolle, in welcher Reihenfolge diese verbunden werden, wichtig ist aber, daß Zusi immer zuletzt verbunden wird. Wurde ein Client vergessen, muß die Verbindung zu Zusi getrennt, der neue Client verbunden und anschließend Zusi wieder verbunden werden. Eine eventuell begonnene Fahrt kann dann fortgesetzt werden.

Daniel
Zuletzt geändert von Daniel Schuhmann am 23.11.2004 11:38:32, insgesamt 1-mal geändert.
Signaturen können bis zu 50 Zeichen lang sein und

Benutzeravatar
Daniel Schuhmann
Beiträge: 1147
Registriert: 21.04.2003 18:50:37
Aktuelle Projekte: Nüscht
Wohnort: Miesbach
Kontaktdaten:

#2 Beitrag von Daniel Schuhmann »

So, für alle, die den Server testen oder eigene Anwendungen programmieren möchten, habe ich einen kleinen Test-Client programmiert. Dieser liegt auch im Sourcecode (Delphi) vor und kann so als Startpunkt für eigene Entwicklungen dienen.

Dem Archiv liegt auch eine exe-Datei bei, man kann also auch ohne Delphi gleich losprobieren. Das Programm ist recht einfach gehalten, es fordert eine ID an (85) und zeigt dann die aktuelle Streckenkilometrierung von Zusi im Programmfenster an.

Bild

Download (266 KB)

Zusi TCP-Seite

Hinweis: Zum Kompilieren werden noch die ICS und die Komponente TCiaBuffer benötigt, nähere Informationen und Downloadadressen dazu stehen in der beigefügten Readme-Datei.

Der Sourcecode ist gut dokumentiert und sollte recht leicht zu verstehen sein.

Viel Spaß!
Daniel
Zuletzt geändert von Daniel Schuhmann am 23.11.2004 21:40:49, insgesamt 1-mal geändert.
Signaturen können bis zu 50 Zeichen lang sein und

Joachim
Beiträge: 3
Registriert: 19.11.2004 09:46:40

#3 Beitrag von Joachim »

Hallo Daniel,

habe deinen TCP-Server ausprobiert, funktioniert echt gut.

Ein kleines Problem habe ich entdeckt:
In der Doku steht, dass die Länge von Strings als ein Byte kodiert wird. Tatsächlich wird die Länge von Zusi als Integer (4 Byte) ausgegeben.
Dein Server interpretiert die Länge wohl als Byte, dadurch beginnt der String mit Nullen und die folgenden Werte geraten etwas durcheinander...

Joachim

Antworten