User Tools

Site Tools


rocrailini-service-de

Rocrail Dienste

Rocrail-Dienste Registerkarte


Server-Monitor

Details im Kapitel Server-Monitor

Port

:!: Der Port muss sich vom Client-Service-Port unterscheiden, um Konflikte zu vermeiden.
Standardmäßig sollte der Port auf 8008 eingestellt sein.

Uhrzeit-Dienst (Clock Service)

Diese Funktion wird benutzt, um die Uhr - wenn gewünscht - zu beschleunigen und/oder alle Clients zu synchronisieren.

Teiler

Mit dem ersten Feld wird die Modellzeit-Geschwindigkeit eingestellt (1 - 100).
Das zweite Feld ist der Aktualisierungs-Intervall in Modellzeit-Minuten (1 - 60) und bestimmt damit, wie oft die Clients synchronisert werden.

Stunde / Minute

Einstellung der Startzeit für den Uhrzeit-Dienst.
Die PC-Zeit wird verwendet , wenn "24:60" eingestellt ist.

Semi-Echtzeit

Bei dieser Option sind alle Optionen für die Modellzeituhr verfügbar, wenn der Teiler auf Eins eingestellt ist. (Ansonsten werden Uhrbefehle abgelehnt.)
Hinweis: Die Uhr ist mit der Hardwarecomputeruhr nicht mehr synchron.

Uhr anhalten bei Gleisspannung aus

Hält die Modellbahnzeit an, falls ein Gleisspannung-AUS-Ereignis eintritt. (Kurzschluss)

Client-Dienst (Client Service)

Über diesen Port werden alle Rocview-Clients mit dem Rocrail-Server verbunden, um die Daten und Ereignisse auszutauschen.

Client Port

Der offiziell von IANA zugewiese Port ist 8051.

Nur erster Client kann bedienen

Verhindert, dass weitere Clients den Rocrail-Server bedienen können; Nur der zuerst verbundene Client kann bedienen.
"Zugriffscode" und "Teil-Zugriffscode" zu verwenden, ist die bessere Lösung.

WIO Watchdog

Aktiviert die überwachung der WIO-Erreichbarkeit. Die Auszeit ist in 10ms-Einheiten definiert.
Voreinstellung: 700 x 10 ms = 5 s. WIOs senden alle 4 Sekunden eine "alive message".

Ausgenommen: Ausschließen nicht relevanter WIOs (Kein ausschalten der Gleisspannung),
der Eintrag der WIO ID's kann Komma separiert oder von bis erfolgen.

Zugriffscode

Wenn hier etwas eingetragen ist, muss der Client diesen Zugriffscode anbieten, um Schreibrechte zu erhalten.

  • Die Option "Nur erster Client kann bedienen" ist dann unwirksam.
  • Bei normalen Betrieb mit Arbeitsbereich frei lassen.
  • Unterstützte Mobil-Clients:
    • Rocweb
    • andRoc


Teil-Zugriffscode

Ist dieser Code definiert, können die ausgewählten Funktionen nur dann von Clients ausgelöst werden, die diesen "Teil-Zugriffscode" korrekt liefern.

  • System (Einschließlich Automatik- und Gleisspannungs-Befehle.)
  • Signale
  • Fahrstraßen
  • Weichen
  • Ausgänge
  • Lokomotiven

Unbeabsichtigte / unsachgemäße Bedienung der obigen Funktionen durch Clients wird verhindert, indem dieser Code auf den Client-Geräten (z.B. von Gästen) nicht eingetragen wird.

SRCP

Optionaler Dienst für SRCP-Clients wie J-Man oder spdrs60.
Die von diesen Clients adressierten Objekte müssen im Rocrail-Gleisplan definiert sein.

Port / Gerät

Optionales serielles Gerät, um SRCP zu bedienen.
Leitungs-Einstellungen sind fest:

  • 115200 bps
  • 8N1



SNMP

Aktiviert den SNMP1) v1/2c Agent im Rocrail-Server.
:!: Der voreingestellte Port 161 wird für den SNMP-Dienst verwendet, der besondere Benutzer-Rechte erfordert:

OSNMP    0658 SNMP bind
OSocket  0513 bind() failed [13] [Permission denied]

Konfiguration

  <SnmpService port="161" trapport="162" traphost="192.168.100.77"/>

GetRequest Beispiel

Direkte ObjectID:

$ snmpget -v 2c -c public localhost 1.3.6.1.2.1.1.1.0
iso.3.6.1.2.1.1.1.0 = STRING: "Rocrail 2.0.2508 Sunrise"

Symbolische ObjectID:

$ snmpget -v2c -c public localhost SNMPv2-MIB::sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Rocrail 2.0.2508 Sunrise
$ snmpget -v2c -c public localhost SNMPv2-MIB::sysUpTime.0
SNMPv2-MIB::sysUpTime.0 = Timeticks: (3443) 0:00:34.43


Unterstützte Befehle

  • GetRequest
  • GetNextRequest
  • SetRequest
  • BulkRequest
  • Trap


IANA


MIB

Management Information Base

Freier MIB-Browser

Traps

  • Kaltstart
  • Link up: neue Clienten-Verbindung
  • Link down: Clienten-Verbindung getrennt
  • Benutzer:
    • Herunterfahren
    • Ausnahme


@Box

Der Speicher-Ort der @Box.

MQTT Service

Clients können den MQTT-Broker zur Kommunikation mit dem Rocrail-Server verwenden.

MQTT Topic Beschreibung
rocrail/service/info Alle Server-Broadcasts werden mit diesem Topic-Namen herausgegeben.
rocrail/service/client Clients können Befehle mit diesem Topic herausgeben.
:!: Es wird ein gültiger Unterstützungs-Schlüssel benötigt; Ohne Schlüssel nur 5 Demo-Minuten.
​rocrail/​service/​field Clients können Hardware-Ereignisse mit diesem Topic herausgeben.
rocrail/service/command Zentralen-Befehle für Benutzer-Bibliotheken.


Die Nutzdaten der MQTT-Meldungen sind im RCP-Format.
Der Rocrail-Server verwendet das MQTT-V3.1-Protokoll.

Hostname

Der DNS-Name oder die TCPIP-Adresse des MQTT-Brokers.

Port

Die Dienst-Port-Nummer des MQTT-Brokers.
Die von Mosquitto voreingestellte Port-Nummer ist 1883.

Benutzerkennung

Voreinstellung "RocrailService", da immer eine Benutzerkennung eingestellt sein muss.

Passwort


Gruppe

Topic-Gruppierung
Element-Namen im Broadcast-Topic verwenden.

Benutzer-Zentralen-Biliotheken

Mit den beiden Topics, field und command, ist es möglich, benutzerdefinierte Zentralen-Bibliotheken ohne Abhängikeiten von den Rocrail-Quellen zu implementieren.

Clients

Nur Quality of Service 1 wird unterstützt.
Clients können QoS 0 verwenden, es wird aber dringend QoS 1 empfohlen.
Der einzig bekannte Client für diesen Dienst ist das Befehlszeilen-Programm von Mosquitto:

mosquitto_pub -p 60123 -t rocrail/service/client -m "<sys cmd=\"stop\"/>" -q 1

Broker-Antwort:

1467710159: New connection from 127.0.0.1.
1467710159: New client connected from 127.0.0.1 as mosq_pub_2323_rob-Virt.
1467710159: Sending CONNACK to mosq_pub_2323_rob-Virt (0)
1467710159: Received PUBLISH from mosq_pub_2323_rob-Virt (d0, q1, r0, m1, 'rocrail/service/client', ... (17 bytes))
1467710159: Sending PUBACK to mosq_pub_2323_rob-Virt (Mid: 1)
1467710159: Sending PUBLISH to RocrailService (d0, q1, r0, m1, 'rocrail/service/client', ... (17 bytes))
1467710159: Received DISCONNECT from mosq_pub_2323_rob-Virt
1467710159: Received PUBACK from RocrailService (Mid: 1)
1467710159: Received PUBLISH from RocrailService (d0, q1, r0, m3, 'rocrail/service/info', ... (51 bytes))
1467710159: Sending PUBACK to RocrailService (Mid: 3)
1467710159: Received PUBLISH from RocrailService (d0, q1, r0, m4, 'rocrail/service/info', ... (175 bytes))
1467710159: Sending PUBACK to RocrailService (Mid: 4)
1467710160: Received PUBLISH from RocrailService (d0, q1, r0, m5, 'rocrail/service/info', ... (60 bytes))
1467710160: Sending PUBACK to RocrailService (Mid: 5)

Erkennung

Ein UDP-Multicast-Erkennungsdienst ist auch für andere Geräte verfügbar, die den gleichen Broker verwenden wollen.

Host 224.0.0.1
Port 8051

Das Gerät muss eine Nachricht mit folgendem Inhalt senden:

BROKER-GET

Es erhält die folgende Antwort:

BROKER-HOST:<hostname>
BROKER-PORT:<port#>

Beide Zeilen enden mit einem Linefeed: \n


Last Will

Wenn die Rocrail-MQTT-Broker-Verbindung verloren geht, kann Last Will in Thematik rocrail/service/info beobachtet werden:

<exception text="abend"/>


Standort (Location)

Breitengrad / Längengrad (Latitude / Longitude)

Angaben zum eigenen Standort zur automatische Berechnung der Zeiten von Sonnenauf- u. untergang für Lichtsteuerung und Wetter.
Format Dezimal, Beispiel: Latitude=51.4819603 Longitude=7.2152644

UTC

Korrektur der Zeitzone des eigenen Standorts.

1)
Simple Network Management Protocol
rocrailini-service-de.txt · Last modified: 2023/11/24 00:44 by rainerk