Handbuch

STS Handbuch

Stellwerksim Handbuch

Webseiten-Werkzeuge


Seitenleiste



JavaScript ist deaktiviert!

stellwerksim:plugins:spezifikation

Dies ist eine alte Version des Dokuments!


Spezifikation

Status

Nach dem Connect meldet sich der Sim mit dem Status-XML:

<status code="300">ein Text</status>

Der Status-XML kann unterschiedliche Codes liefern, ein beschreibender Text steht im PCDATA.

Status-Codes

  • 2xx: alles ok
  • 300: Registrierung nötig
  • 400: Fehler bei den Daten
  • 401: ZID fehlerhaft
  • 402: ZID unbekannt
  • 403: Ereignisart fehlerhaft
  • 450: XML-Fehler
  • 500: nicht behebbarer Fehler

Befehle

<register>

Registriert einen Client, als Werte müssen mitgegeben werden:

  • name: Name des Clients
  • autor: Autor des Clients
  • version: Version des Clients
  • protokoll: Protokollversion, z.Z. 1
  • text: Eine kurze (!) Beschreibung des Clients

Beispiel:

<register name="Supersuper" autor="der Held" version="0.1alpha-nix" protokoll="1" text="Tut nix!" />

Nach erfolgreicher Registrierung kommt eine Status-XML mit 220 zurück, bei einem Fehler 300, 40x oder 500.

<simzeit>

Erfragt die Sim-Zeit. Der übergebene Parameter „sender“ wird wieder zurückgesendet, außerdem ein Parameter „zeit“ mit der Simzeit in Millisekunden seit 0 Uhr. Als „sender“ schickt man beim Absenden die aktuelle Zeit auf dem Client. Bekommt man dann die Antwort kann man aus der aktuellen Zeit und der Zeit vom Versand die Übertragungsdauer ermitteln. Grob aber ausreichend genau ist dann die Hälfte der Differenz zur übertragenen Sim-Zeit zu addieren um eine hinreichend genaue Zeit zu haben. Es ist zweckmäßig die Zeit dann selbst zu speichern und weiterzuzählen.

<anlageninfo>

Keine Parameter, liefert Name („name“) des Stellwerks, AID („aid“) und Build des Sims („simbuild“).

<bahnsteigliste>

Keine Parameter, liefert eine Liste alle Bahnsteige und deren Nachbarbahnsteige. Die Rückgabe enthält den Befehlstag als Eröffnung.

Beispielausgabe:

<bahnsteigliste>
<bahnsteig name="MMM1"><n name="MMM2" /><n name="MMM3" /></bahnsteig>
<bahnsteig name="MMM2"><n name="MMM1" /><n name="MMM3" /></bahnsteig>
<bahnsteig name="MMM3"><n name="MMM1" /><n name="MMM3" /></bahnsteig>
</bahnsteigliste>

<zugliste>

Keine Parameter, liefert eine Liste alle Züge im Fahrplan. Die Rückgabe enthält den Befehlstag als Eröffnung.

Beispielausgabe:

<zugliste>
<zug zid="1" name="RE 10" />
<zug zid="2" name="IC 3" />
</zugliste>

<zugdetails>

ZID als Parameter, liefert Details zum Zug. Die Rückgabe enthält den Befehlstag als Eröffnung. Es wird das nächste anzufahrende Gleis mitgeliefert, sowie die Namen der Ein- und Ausfahrt. Die Sichtbarkeit gibt an, ob der Zug im Gleisbild unterwegs ist oder noch nicht. Der Unterschied zwischen „gleis“ und „plangleis“ ist bei Gleisänderungen relevant: „plangleis“ ist immer das Gleis, zu dem der Zug laut Fahrplan soll. „gleis“ ist das Gleis nach einen Gleisänderung oder bei einem Zughalt der Gleis, an dem der Zug tatsächlich steht. „amgleis“ ist true, wenn der Zug genau zum Zeitpunkt der Abfrage am Bahnsteig steht.

Wurde der letzte Fahrplanhalt passiert, es somit keine anzufahrenden Gleise mehr gibt, werden die Attribute „gleis“ und „plangleis“ nicht mehr mitgeschickt. So lässt sich erkennen, ob ein Zug den letzten Fahrplanhalt passiert hat.

Umgeleitete Züge haben ebenfalls kein „gleis“ und „plangleis“, da sie keinen Fahrplan haben!

Beispielausgabe:

<zugdetails zid="1" name="RE 10" verspaetung="+2" gleis="MMM1" plangleis="MMM1" von="A-Stadt" nach="B-Hausen" sichtbar="true" amgleis="true"/>

<zugfahrplan>

ZID als Parameter, liefert den restlichen Fahrplan zum Zug. Die Rückgabe enthält den Befehlstag als Eröffnung. Es wird das nächste anzufahrende Gleis mitgeliefert und alle folgenden, alle laut Fahrplan. Außerdem die Flags im modernen Flag-Syntax des STS.

Umgeleitete Züge haben keinen Fahrplan, d.h. er wird hier eine leere Liste gesendet.

Beispielausgabe:

<zugfahrplan zid="1">
<gleis plan="MMM1" name="MMM1" an="08:10" ab="08:12" flags="" />
</zugfahrplan>

<ereignis>

ZID und Art des gewünschten Ereignisses als Parameter, liefert für diesen Zug diese Ereignisse, wenn sie auftreten. Dabei kann die Art eins dieser Werte sein:

  • einfahrt
  • ankunft
  • abfahrt
  • ausfahrt

Möchte man alle haben, müssen entsprechend viele Registrierungen abgeschickt werden. Man muss sich für jeden Zug neu registrieren, mehrmaliges Registrieren für den selben Zug ist nicht zulässig! Die Meldung eines Ereignisses enthält die ZID, die Art sowie alle Daten, die auch per <zugdetails> geliefert werden. Im Falle eines D-Flags wird nur die Ankunft gemeldet, jedoch keine Abfahrt.

stellwerksim/plugins/spezifikation.1459861758.txt.gz · Zuletzt geändert: 2016/04/05 15:09 von DLichti