User Tools

Site Tools


develop:cs-protocol-fr

Protocole Client Rocrail (RCP)

Entête der communication

Toutes les requêtes et les réponses sont préfixées avec une entête XML qui annonce les contenus.

Exemple

ENTÊTE DU DÉBUT

<xmlh>
  <xml size="23" name="cmd"/>
  <bin size="4711" name="readme.pdf"/>
</xmlh>

FIN ENTÊTE DÉBUT XML

<cmd auto="off"/>

FIN XML DEBUT BIN

A6007B98FF...

FIN BIN

Note

Après la balise de fin de l'entête, </xmlh>, aucun caractère supplémentaire n'est autorisé. (Même un '\0' n'est pas autorisé.)


Définition du protocole

Attributs de l'entête XML

Nom Description
size longueur en octet du xml ou du flux binaire
name nom du document xml ou nom du fichier binaire


Requêtes client

Les clients peuvent envoyer presque tout ce qui se trouve dans la définition du protocole, et la liste suivante n'est pas complète.
Commandes du modèle: https://wiki.rocrail.net/rocrail-snapshot/rocrail/wrapper-en.html#model

Obtenir le plan complet

<model cmd="plan"/>

Obtenir une liste

Les locomotives:

<model cmd="lclist"/>

Les aiguillages:

<model cmd="swlist"/>

Obtenir un objet

Locomotive:

<model cmd="lcprops" val="locoID"/>


Exemple de locomotive complet

<xmlh><xml size="84" name="lc"/></xmlh><lc id="4711" V_raw="87" V_rawMax="100" cmd="velocity" throttleid="192.168.100.32"/>


Réponses du serveur

Pour chaque demande du client il y a une réponse du serveur.

Réponse du plan

<plan>...</plan>


Évènement du serveur

De nombreux événements sont diffusés à tous les clients, y compris les modifications apportées par d'autres clients.
Quelques exemples d'événements.

Évènement alimentation

L'alimentation de la voie est établie:

<state power="true"/>

2vènement automatique

Le mode automatique est activé:

<auto cmd="on"/>
develop/cs-protocol-fr.txt · Last modified: 2025/05/28 11:56 by phil45