Table of Contents
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.
- Hinweis: Siehe auch Tabelle Realzeit-Teiler-Modellzeit
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
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
mDNS
Siehe auch: mDNS-Information
Aktivieren
Aktiviert mDNS für Rocrail als Dienst.
Dies kann verwendet werden, um nach dem Rocrail-Server in einem Client wie Rocview zu suchen.
Hinweis: Diese Option deaktivieren, wenn Multicast geblockt oder unerwünscht ist.