User Tools

Site Tools


rocrailini-service-fr

This is an old revision of the document!


Services

Onglet service de Rocrail



Serveur HTTP

Port

:!: Le port doit différer du port de service client pour éviter les conflits.

Clock Service

Utiliser ce service si une horloge plus rapide est désirée et/ou tous les clients doivent être synchronisés.

Diviseur

Le diviseur de temps est utilisé pour configurer la vitesse de l'horloge: 1…100
Le champs suivant est la fréquence de mise à jour du modèle en minutes: 1…60

Heure/Minute

C'est l'heure de départ du service horloge.
L'heure de l'ordinateur est utilisée si les valeurs sont fixées à 24:60.

Semi temps réel

Avec cette option toutes les options d'horloge rapide sont disponible si le diviseur est mis à un. (Sinon, les commandes d'horloge sont rejetées.)
Note: L'horloge ne sera plus synchronisée avec l'horloge matérielle de l'ordinateur.

Arrêter l'horloge lorsque l'alimentation est coupée

Arrête l'horloge accélérée en cas d'un évènement d'arrêt de l'alimentation. (Court-circuit)

Client Service

Indique le port sur lequel les clients Rocview doivent se connecter pour avoir toutes les données et tous les évènements nécessaires au fonctionnement.

Port client

Le port officiel attribué par IANA est 8051.

Nombre max. de clients

Par défaut, 10 clients sont autorisés à se connecter simultanément au serveur Rocrail.

Seul le premier peut prendre le contrôle

Pour éviter que plusieurs clients prennent le contrôle du serveur Rocrail; seul le premier qui est connecté à le contrôle.
Une meilleur solution est d'utiliser un code de Contrôle ou Esclave.

Code de contrôle

Le client doit fournir ce code de contrôle pour obtenir l'accès en écriture si elle est définie

  • Il annule l'option "seulement le premier peut prendre le contrôle".
  • Laissé vide pour usage normal.
  • Supporte les clients mobiles:
    • Rocweb
    • andRoc
    • iRoc
    • padRoc


Code esclave

Si le code esclave est sélectionné, et un client connecté ne peut pas fournir ce code, les fonctions sélectionnées suivantes seront rejetées:

  • Système (Inclus les commandes automatiques et d'alimentation.)
  • Arrêt du serveur
  • Aiguillages
  • Signaux
  • Sorties
  • Itinéraires
  • Locomotives


Service SRCP

Service optionnel pour les clients SRCP comme J-Man ou spdrs60.
Les objets adressés par ces clients doivent être définis dans le plan de voie de Rocrail.

Équipement

Équipement série optionnel pour le service SRCP.
Les configurations de la ligne sont réglées à:

  • 115200 bps
  • 8N1


Service SNMP

Active l'agent SNMP v1/2c du serveur Rocrail.
:!: Par défaut le port 161 est utilisé pour le service SNMP qui requiert les privilèges d'utilisateur supplémentaire:

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


Configuration

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

Exemple GetRequest

Direct 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"

Symbolic OjectID:

$ 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


Commandes supportées

  • GetRequest
  • GetNextRequest
  • SetRequest
  • BulkRequest
  • Trap


IANA


MIB

Management Information Base

Pièges

  • Cold boot
  • Link up: new client connection
  • Link down: client disconnected
  • User:
    • Shutdown
    • Exception


@Box

L'emplacement de la @Box.


Service MQTT

Les clients peuvent utiliser le MQTT Broker pour communiquer avec le serveur Rocrail.

Rubrique MQTT Description
rocrail/service/info Toutes les diffusions de serveur sont publiées avec ce nom de rubrique.
rocrail/service/client Les clients peuvent publier les commandes avec cette rubrique.
:!: Une clé de support est nécessaire; Sans clé seulement 5 minutes de démonstration.
rocrail/service/field Les clients peuvent publier les évènements matériel avec cette rubrique.
rocrail/service/command Commandes des centrales numérique pour les bibliothèques utilisateur.


La charge des messages MQTT sont au Format RCP.
Le serveur Rocrail utilise le Protocole MQTT V3.1.

Nom de l'hôte

Le nom du DNS ou l'adresse TCP/IP du MQTT Broker.

Port

Le numéro du port du service MQTT Broker.
Le numéro de port par défaut utilisé par Mosquitto est le 1883.

Groupe

Sujet regroupement
Utiliser les noms des articles dans la rubrique Broadcast.

Bibliothèques CS utilisateur

Avec les deux sujets, champ et commande, il est possible d'implémenter une bibliothèque CS définie par l'utilisateur sans les dépendances des Sources Rocrail.

Clients

Seulement la Qualité de service 1 est supporté.
Les clients doivent utiliser QoS 0, mais nous recommandons vivement QoS 1.
Le seul client connu pour ce service est l'utilitaire en ligne de commande de Mosquitto:

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

Réponse du Broker:

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)

Découverte

Un service de découverte UDP Multicast est également disponible pour les autres services qui veulent utiliser le même agent.

Hôte 224.0.0.1
Port 8051

Le dispositif doit envoyer un message avec le contenu suivant:

BROKER-GET

Il obtiendra la réponse suivante:

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

Les deux lignes se terminent avec un saut de ligne: \n

Dernière Volonté

Si la connexion MQTT-Broker Rocrail se perd, la Dernière Volonté peut être observé dans le sujet rocrail/service/info:

<exception text="abend"/>
rocrailini-service-fr.1566892802.txt.gz · Last modified: 2019/08/27 10:00 by phil45