Aller au contenu principal

API REST/HTTP

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

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

Note : ex. http://(adresse-ip-limelight):5807/results

Général

MéthodeRouteDescription
GET/resultsRécupère le dump JSON complet des résultats de ciblage actuels
GET/statusRécupère l'objet JSON de statut avec température, fps, nom de l'appareil, index du pipeline, utilisation CPU, utilisation RAM
GET/hwreportRetourne un tableau JSON de rapports matériels complets. Un rapport matériel contient des informations lisibles telles que 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 URL 'index' dans la requête.
POST/pipeline-switchBasculer vers un pipeline différent. Inclure un paramètre URL '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 URL "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. Optionnellement inclure un paramètre 'index'. Écrase le pipeline sur le disque

Gestion de la Caméra

MéthodeRouteDescription
POST/set-imumodeDéfinir le mode IMU (JSON)
POST/set-throttleDéfinir le nombre d'images à ignorer entre les images traitées pour la gestion thermique
POST/set-imuassistalphaDéfinir l'alpha du filtre complémentaire du mode d'assistance IMU (par défaut 0.001)

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. Optionnellement inclure 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. Optionnellement inclure un paramètre 'index'.
POST/upload-nnTéléverser un réseau de neurones. Inclure un paramètre 'type' ("detector" ou "classifier"), le contenu du fichier dans le corps de la requête, et optionnellement inclure un paramètre 'index'.
POST/upload-nnlabelsTéléverser les étiquettes du réseau de neurones. Inclure un paramètre 'type' ("detector" ou "classifier"), le fichier dans le corps de la requête, et optionnellement inclure 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-defaultRetourne le résultat de calibration par défaut
GET/cal-fileRetourne le résultat de calibration personnalisé (système de fichiers)
GET/cal-eepromRetourne le résultat de calibration personnalisé (eeprom)
GET/cal-latestRetourne 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

Captures d'écran

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