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: 500 x 10 ms = 5 s. WIOs senden alle 4 Sekunden eine "alive message".

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"/>
1)
Simple Network Management Protocol
rocrailini-service-de.txt · Last modified: 2022/11/10 12:48 by rainerk