Service Inverse de Haply
Inverse Service fonctionne sur votre ordinateur sous la forme d'un processus en arrière-plan et connecte en temps réel les périphériques tactiles Haply à votre application. Il prend en charge toutes les tâches suivantes pour vous : détection des périphériques, communication série, surveillance de la sécurité et transmission des flux d'état, ce qui vous permet de vous concentrer pleinement sur la conception de l'expérience utilisateur.
Configuration requise et compatibilité
Ce service fonctionne sur les principales plateformes de bureau et peut être appelé à partir den'importe quel langage disposant d'un client WebSocket et d'un analyseur JSON:
- Plateforme : Windows 10 et versions ultérieures (MSVC), Linux (
.deb(paquet), macOS - Langages : Python, JavaScript / TypeScript, C++, C#, Rust, Go, Java… ainsi que tout autre langage capable de communiquer via WebSocket + JSON
Intégration prise en charge officiellement
Haply La prise en charge officielle a été assurée pour les produits suivants :Haply Inverse Unity Package,Toia,Geomagic Freeform et NVIDIA Isaac Lab.
Par ailleurs, ce service est accessible dès lors que la plateforme ou le moteur d'exécution fournit un client WebSocket et un analyseur JSON. Nous l'avons déjà testé avec Unreal Engine,TouchDesigner ainsi que d'autres piles technologiques de temps réel ou de simulation. Tant que votre environnement prend en charge les connexions WebSocket, vous pouvez piloter les appareils Inverse.
Pour des exemples spécifiques à certains langages, veuillez consulter les dépôts d'exemples publics :C++ et Python.
Interfaces de communication
Ce service propose deux canaux de communication :
| Passage | Port | Mode de transmission | Utilisation |
|---|---|---|---|
| simulation | 10001 | WebSocket | Cycle commande/état en temps réel (1 message d'entrée, 1 état de sortie) |
| Événement | 10020 | WebSocket (lecture seule) | Événements système : sécurité, niveau de batterie, connexion, avertissements relatifs au débit |
| HTTP | 10001 | REST | Requêtes de configuration sans état, paramétrage, gestion des sessions et vérification des équipements |
Toutes les charges sont au format JSON. Pour en savoir plus sur les règles relatives à l'enveloppe standard, aux ports et aux types de contenu, veuillez consulter les conventions JSON.
Cas d'utilisation
| Objectif | Position de départ |
|---|---|
| Envoyer une valeur cible de force ou de position à un périphérique tactile | Contrôle en temps réel |
| Configuration: système de coordonnées, mode de montage, préréglages ou filtres | Configuration de la session |
| Scénario de navigation (déplacement à vitesse contrôlée) | Module de navigation |
| Surveillance des événements du système(sécurité, niveau de batterie, connexion) | Incidents et surveillance |
| Apprendre par l'exemple | Tutoriel |
Système de coordonnées
Haply Sonsystèmede coordonnées interneest un système de coordonnées à main droite, avec l'axe Z orienté vers le haut(+X vers la droite, +Y vers l'avant, +Z vers le haut). Vous pouvez le remapper sur le système de coordonnées de l'application àl'aide d'une seule substitution de base de coordonnées: une fois cette configuration effectuée, toutes les entrées et sorties seront automatiquement converties.
Il existe deux types de transformations permettant de localiser un appareil dans une scène :
- Montage— Décalage physique de l'appareil (viades paramètres prédéfinisou une configuration explicite)
- Espace de travail— Dérive d'exécution pour la navigation de la caméra/scène (réglable manuellement ou viale module de navigation)
Pour connaître le processus complet de traitement des coordonnées, veuillez vous reporter à la section «Montage et espace de travail».
Exécuter un service
Inverse Service peut fonctionner selon deux modes :
- Intégré à Haply Hub(recommandé) —Haply Hub inclut la dernière version du service et le lance automatiquement à l'ouverture de Hub. Aucune configuration manuelle n'est nécessaire : vous bénéficiez toujours des derniers correctifs.
- Fonctionnement autonome:utilisez Inverse Installer pour installer une version spécifique du serviceen tant que service Windows ou démon Unix. Convient à la CI, aux déploiements sans interface graphique ou aux machines sur lesquelles Hub n'est pas exécuté.
Gestion des services indépendants
Windows——Ouvrir l'application de services : appuyez sur Win+R, saisir services.msc, recherchez «Haply Inverse Service », cliquez avec le bouton droit → Démarrer / Arrêter / Redémarrer.
Linux (systemd) :
systemctl start haply-inverse-service.service
systemctl stop haply-inverse-service.service
systemctl restart haply-inverse-service.service
systemctl enable haply-inverse-service.service # auto-start on boot
Référence complète de l'API
Spécifications complètes et lisibles par machine pour chaque point de terminaison et chaque message :
- Documentation de l'API HTTP (OpenAPI) — Swagger UI interactive
- Référence de l'API de simulation (AsyncAPI) — Visualiseur interactif AsyncAPI