Aller au contenu principal

API REST/HTTP

Limelight OS dispose d'un serveur REST/HTTP fonctionnant sur (ipaddress):5807

LimelightLib Python est une bibliothèque open-source qui utilise l'API HTTP/REST de Limelight.

Note : par exemple http://(adresse-ip-limelight):5807/results

Général

MéthodeRouteDescription
GET/resultsRécupérer le dump JSON complet des résultats de ciblage actuels
GET/statusRécupérer l'objet JSON de statut avec température, fps, nom de l'appareil, index du pipeline, utilisation CPU, utilisation RAM
GET/hwreportRenvoie un tableau JSON des rapports matériels complets. Un rapport matériel contient des informations lisibles comme le FOV, le décalage principal, etc.

Gestion des Pipelines

MéthodeRouteDescription
GET/pipeline-defaultObtenir le pipeline par défaut (JSON)
GET/pipeline-atindexObtenir le pipeline[n] de la caméra (JSON). Charge le pipeline depuis le disque. Inclure un paramètre 'index' dans la requête.
POST/pipeline-switchBasculer vers un pipeline différent. Inclure un paramètre 'index' dans la requête.
POST/reload-pipelineForcer la caméra à recharger le pipeline actuel et toutes les ressources du pipeline
POST/update-pipelineAccepte du JSON avec une ou plusieurs mises à jour de paramètres. Définir le paramètre "flush" à 1 pour sauvegarder ces paramètres sur le disque.
POST/upload-pipelineTéléverser un pipeline. Envoyer les données JSON dans le corps de la requête. Inclure optionnellement un paramètre 'index'. Écrase le pipeline sur le disque

Gestion des Ressources

MéthodeRouteDescription
POST/upload-fieldmapTéléverser une carte de terrain. Envoyer les données JSON dans le corps de la requête. Inclure optionnellement un paramètre 'index'.
POST/upload-pythonTéléverser du code Python. Envoyer le code en texte brut dans le corps de la requête. Inclure optionnellement un paramètre 'index'.
POST/upload-nnTéléverser un réseau neuronal. Inclure un paramètre 'type' ("detector" ou "classifier"), le contenu du fichier dans le corps de la requête, et optionnellement un paramètre 'index'.
POST/upload-nnlabelsTéléverser les étiquettes du réseau neuronal. Inclure un paramètre 'type' ("detector" ou "classifier"), le fichier dans le corps de la requête, et optionnellement un paramètre 'index'.
GET/getsnapscriptnamesListe des noms snapscriptpro

Python et Orientation du Robot

MéthodeRouteDescription
POST/update-pythoninputsMettre à jour les entrées Python pour les pipelines SnapScript. Envoyer les données JSON (tableau) dans le corps de la requête.
POST/update-robotorientationMettre à jour l'orientation du robot. Envoyer les données JSON (tableau) dans le corps de la requête. Ex : "[45,0,0,0,0,0]". L'utilisation de cette méthode désactive les mises à jour d'orientation basées sur NetworkTables jusqu'au redémarrage

Calibration

MéthodeRouteDescription
GET/cal-defaultRenvoie le résultat de calibration par défaut
GET/cal-fileRenvoie le résultat de calibration personnalisé (système de fichiers)
GET/cal-eepromRenvoie le résultat de calibration personnalisé (eeprom)
GET/cal-latestRenvoie le dernier résultat de calibration personnalisé. Ce résultat n'est pas utilisé sauf s'il est sauvegardé dans le système de fichiers ou l'eeprom
POST/cal-eepromMettre à jour le résultat de calibration eeprom. Envoyer les données de calibration dans le corps de la requête.
POST/cal-fileMettre à jour le résultat de calibration du système de fichiers. Envoyer les données de calibration dans le corps de la requête.
DELETE/cal-latestSupprimer le dernier résultat de calibration
DELETE/cal-eepromSupprimer le résultat de calibration eeprom
DELETE/cal-fileSupprimer le résultat de calibration du système de fichiers

Instantanés

MéthodeRouteDescription
POST/capture-snapshotCapturer un instantané. Inclure un paramètre 'snapname' pour nommer l'instantané.
POST/upload-snapshotTéléverser un instantané nommé. Inclure un paramètre 'snapname' et un fichier image dans le corps de la requête.
GET/snapshotmanifestRenvoie une liste des noms de fichiers d'instantanés
DELETE/delete-snapshotsSupprime tous les instantanés
DELETE/delete-snapshotSupprimer un instantané spécifique. Inclure un paramètre 'snapname' dans la requête.