Canal des événements
L'URL websocket par défaut des événements est ws://localhost:10020.
Le port peut être modifié dans la configuration.
Il s'agit d'un canal de communication unidirectionnel à faible fréquence, sur lequel vous pouvez recevoir tous les événements du système. Aucun message d'entrée n'est pris en charge.
Ce canal garantit l'envoi d'un message pour chaque événement.
Format canonique
Tous les événements suivent une structure standard, présentée ci-dessous :
{
"name": "device-connected",
"category": "device",
"level": "notice",
"data": {},
"message": ""
}
Descriptions des champs
| Champ | Type | Description |
|---|---|---|
name | string | Identifiant unique de l'événement. |
category | string | Étiquette de regroupement utilisée pour le filtrage et l'organisation (voir les catégories valides). |
level | string | Gravité ou importance de l'événement (voir les niveaux valides). |
data | object | Charge utile contenant les détails propres à l'événement. |
message | string | Description ou contexte facultatif de l'événement, lisible par une personne. |
Catégorie d'événement
Le champ category regroupe les événements dans les catégories suivantes :
| Valeur | Description |
|---|---|
system | Systèmes principaux ou centraux, paramètres globaux, etc. |
input | Gestion des entrées externes (par exemple, commandes ou autres). |
session | Événements liés à une session utilisateur précise. |
device | Gestion des appareils, interactions avec le contrôleur, communication SerialPort. |
module | Événements de sous-système ou de composant modulaire. |
feature | Événements liés à des fonctionnalités ou à des capacités précises du service. |
Niveau d'événement
Le champ level de l'événement indique la gravité ou l'importance de celui-ci :
| Valeur | Description |
|---|---|
info | Information seulement : journaux, mesures ou avis non critiques. |
notice | Changements d'état ou événements notables. |
warning | Un problème est survenu ou semble anormal, mais le système peut poursuivre son fonctionnement en toute sécurité. |
error | Un problème est survenu qui peut affecter le comportement ou la stabilité du système. |
critical | Erreur grave qui perturbe considérablement le fonctionnement du système. |
panic | Défaillance catastrophique : peut entraîner un plantage ou un état irrécupérable. |
Événements
Cette liste présente les événements actuellement signalés par le système. Nous concevons et élargissons activement les types d'événements et les mécanismes de signalement.
Entrée
invalid-io-channel
Déclenché lorsqu'un canal d'E/S est utilisé d'une façon non prise en charge ou non prévue.
Données
| Champ | Type | Description |
|---|---|---|
received_data | string | Les données brutes reçues. |
{
"name": "invalid-io-channel",
"category": "input",
"level": "warning",
"data": {
"received_data": "<raw_input_here>"
}
}
http-route-deprecated
Émis lorsqu'une route HTTP est obsolète et sera supprimée dans une version future.
Données
| Champ | Type | Description |
|---|---|---|
route | string | La route obsolète. |
substitute | string | La route de remplacement recommandée. |
{
"name": "http-route-deprecated",
"category": "input",
"level": "warning",
"data": {
"route": "/the/old/way",
"substitute": "/the/new/way"
}
}
settings-invalid-key
Émis lorsqu'une clé de paramètres est invalide.
Données
| Champ | Type | Description |
|---|---|---|
key | string | La clé qui n'a pas été trouvée. |
{
"name": "settings-invalid-key",
"category": "input",
"level": "warning",
"data": {
"key": "devices/none-existent/key"
}
}
command-deprecated
Émis lorsqu'une commande entrante est obsolète et sera supprimée dans une version future.
| Champ | Type | Description |
|---|---|---|
command | string | La commande obsolète reçue |
{
"name": "command-deprecated",
"category": "input",
"level": "warning",
"data": {
"command": "example_cmd"
},
"message": "The command `example_cmd` is deprecated and is replaced by `this_one`."
}
Appareil
device-connected
Indique qu'un appareil s'est connecté et est maintenant entièrement opérationnel.
| Champ | Type | Description |
|---|---|---|
device_family | string | Type d'appareil : inverse ou verse_grip. |
device_id | string | L'identifiant unique de l'appareil. |
{
"name": "device-connected",
"category": "device",
"level": "notice",
"data": {
"device_family": "inverse",
"device_id": "04BA"
}
}
device-disconnected
Signale qu'un appareil précédemment connecté a été déconnecté.
| Champ | Type | Description |
|---|---|---|
device_family | string | Type d'appareil : inverse ou verse_grip. |
device_id | string | L'identifiant unique de l'appareil. |
{
"name": "device-disconnected",
"category": "device",
"level": "notice",
"data": {
"device_family": "verse_grip",
"device_id": "61548"
}
}
Session
device-low-control-rate
Émis lorsqu'une commande de contrôle directe entrante pour un appareil est reçue à une cadence trop basse et atteint les limites de sécurité. Il s'agit d'un avertissement indiquant que la cadence approche de la cadence limite.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_family | string | Type d'appareil : inverse ou verse_grip. |
device_id | string | L'identifiant unique de l'appareil. |
frequency | int | Votre cadence de contrôle actuelle, en hertz. |
{
"name": "device-low-control-rate",
"category": "session",
"level": "warning",
"data": {
"session_id": 3,
"device_family": "inverse",
"device_id": "1A2B",
"frequency": 260
},
"message": ""
}
device-critical-control-rate
Émis lorsqu'une commande de contrôle directe entrante pour un appareil est reçue à une cadence trop basse et atteint les limites de sécurité.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_family | string | Type d'appareil : inverse ou verse_grip. |
device_id | string | L'identifiant unique de l'appareil. |
frequency | int | Votre cadence de contrôle actuelle, en hertz. |
{
"name": "device-critical-control-rate",
"category": "session",
"level": "error",
"data": {
"session_id": 3,
"device_family": "inverse",
"device_id": "1A2B",
"frequency": 82
},
"message": ""
}
Fonctionnalités
sdf-sdf_hfx-created
Émis lorsqu'un effet FX d'entité SDF est créé.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_id | string | L'identifiant unique de l'appareil. |
hfx_id | string | L'identifiant de l'effet FX utilisé lors de sa création. |
{
"name": "sdf-sdf_hfx-created",
"category": "feature",
"level": "notice",
"data": {
"session_id": 3,
"device_id": "1A2B",
"hfx_id": "my_fx_name"
},
"message": ""
}
sdf-sdf_hfx-deleted
Émis lorsqu'un effet FX d'entité SDF est supprimé.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_id | string | L'identifiant unique de l'appareil. |
hfx_id | string | L'identifiant de l'effet FX supprimé. |
{
"name": "sdf-sdf_hfx-deleted",
"category": "feature",
"level": "notice",
"data": {
"session_id": 3,
"device_id": "1A2B",
"hfx_id": "my_fx_name"
},
"message": ""
}
sdf-sdf_hfx-updated
Émis lorsqu'un effet FX d'entité SDF est mis à jour.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_id | string | L'identifiant unique de l'appareil. |
hfx_id | string | L'identifiant de l'effet FX mis à jour. |
{
"name": "sdf-sdf_hfx-updated",
"category": "feature",
"level": "notice",
"data": {
"session_id": 3,
"device_id": "1A2B",
"hfx_id": "my_fx_name"
},
"message": ""
}
sdf-sdf_hfx-range-entered
Émis lorsque le curseur de l'appareil concerné entre dans la portée de l'entité SDF.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_id | string | L'identifiant unique de l'appareil. |
hfx_id | string | L'identifiant de l'effet FX. |
{
"name": "sdf-sdf_hfx-range-entered",
"category": "feature",
"level": "notice",
"data": {
"session_id": 3,
"device_id": "1A2B",
"hfx_id": "my_fx_name"
},
"message": ""
}
sdf-sdf_hfx-range-exited
Émis lorsque le curseur de l'appareil concerné sort de la portée de l'entité SDF.
| Champ | Type | Description |
|---|---|---|
session_id | int | Identifiant de la session de simulation visée. |
device_id | string | L'identifiant unique de l'appareil. |
hfx_id | string | L'identifiant de l'effet FX. |
{
"name": "sdf-sdf_hfx-range-exited",
"category": "feature",
"level": "notice",
"data": {
"session_id": 3,
"device_id": "1A2B",
"hfx_id": "my_fx_name"
},
"message": ""
}