Zum Hauptinhalt springen

Sitzung

Was ist eine Sitzung?​

Eine Sitzungwird automatisch erstellt, sobald ein WebSocket-Client eine Verbindung zu Port 10001 herstellt. Pro Verbindung wird eine Sitzung erstellt. Wenn die Verbindung geschlossen wird, wird die Sitzung beendet und ihre Konfiguration gelöscht.

Jede Sitzung umfasst Folgendes:

  • Nummern-ID(wird vom Dienst automatisch zugewiesen)
  • Beliebiger Profilname(von Ihnen selbst festzulegen)
  • Individuelle Ansichten für alle Geräte: Referenzpunkte, Befestigungen, Voreinstellungen, Filter und Transformationen im Arbeitsbereich

Es können mehrere Sitzungen gleichzeitig bestehen. So können Sie beispielsweise in einer Sitzung eine Unity-App ausführen und in einer anderen Sitzung den „ Haply -Hub“ überwachen. Beide Sitzungen beziehen sich zwar auf dasselbe physische Gerät, verfügen jedoch über eigene Koordinatensysteme.

Festlegen des Profilnamens​

Wir empfehlen Ihnen dringend, in Ihrer ersten Nachricht einen Profilnamen festzulegen:

{
"session": {
"configure": {
"profile": {
"name": "co.mycompany.myapp:main-scene"
}
}
}
}

Wichtige Gründe:

  • Haply HuberkenntSimulationen anhand ihres Profilnamens und ermöglicht es, die Geräteeinstellungen (Arbeitsbereich, Referenz, Befestigung, Filter) über die Benutzeroberfläche anzupassen.
  • Diese Anpassungenwerden dauerhaft gespeichert. Wenn Sie dieselbe App das nächste Mal ausführen, wendet der Hub sie automatisch erneut an, ohne dass Sie den Code ändern müssen.
  • Andere Sitzungen (oder HTTP-Clients) sind,Sitzungsauswahl Mit dem Profilnamen können Sie Ihre Sitzung angeben:?session=myapp:0。Der Profil-Selektor ist * und ? Da wir auch „Grobwild“-Karten akzeptieren,?session=co.haply.hub::*:0 Solche Namensräume funktionieren auch, wenn man den vollständigen Profilnamen nicht kennt.

Fernsteuerung (Einstellungen zwischen den Sitzungen)​

Die Geräte einer Sitzung könnenvon außenneu konfiguriert werden. Dies ist sowohl von einer anderen WebSocket-Sitzung als auch von einem HTTP-Client ohne WebSocket-Verbindung aus möglich. Auf diese Weise passt der Haply Hub die Einstellungen der App an.

Der HTTP-Client gibt mithilfe desSession-Selektors die entsprechende Sitzung an:

# List all sessions
curl http://localhost:10001/sessions

# Look up a single session directly (path-form of the selector — same
# expressions as `?session=`, see Selectors for the full grammar)
curl http://localhost:10001/sessions/:myapp:0

# Change the basis on session with profile "myapp" (first match)
curl -X POST "http://localhost:10001/inverse3/0/config/basis?session=myapp:0" \
-H "Content-Type: application/json" \
-d '{"permutation": "XZY"}'

# Same, but target the first session in a namespace (profile wildcard)
curl -X POST "http://localhost:10001/inverse3/0/config/basis?session=co.haply.hub::*:0" \
-H "Content-Type: application/json" \
-d '{"permutation": "XZY"}'

Ein umfassendes Beispiel für die HTTP-Steuerung zwischen Sitzungen finden Sie imTutorial zur HTTP-Fernkonfiguration.