Siehe Einstellungen
Dieses Dokument ist /settings/ Alle vom Endpunkt zurückgegebenen Einstellungen Schlüssel, Typ(type_hint (Kriterium), Einschränkungen(metadata.constraint.range sowie gegebenenfalls locked (Kriterien) werden zusammen aufgeführt.
locked Einstellungen Lesezugriff zur Laufzeitist. Konfigurationsdatei oder Haply Hub Sie können dies über die Einstellungsseite ändern, aber um die Änderungen zu übernehmen, müssen Sie Der Dienst muss vollständig neu gestartet werden.. Diese Einstellungen sind in der folgenden Tabelle aufgeführt Startwird angezeigt.
Aufbau
Die Konfigurationsdatei, die die Einstellungen beim Start des Dienstes überschreibt, befindet sich an folgendem Speicherort:
| Plattform | Standort |
|---|---|
| Windows | C:\ProgramData\Haply\Inverse\haply-inverse-service-config.json |
| macOS | /Library/Application Support/Haply/Inverse/haply-inverse-service-config.json |
| Linux | /etc/haply-inverse-service/haply-inverse-service-config.json |
Die Konfigurationsdatei ordnet den Konfigurationsschlüsseln neue Werte zu. Flaches JSON-Objektist. Der Schlüssel lautet /settings/ Es muss sich um einen gültigen Konfigurationsschlüssel handeln, der von der HTTP-Route zurückgegeben wird (API-Referenz (Hinweis). Für nicht angegebene Schlüssel gelten die Standardwerte des Dienstes.
Beispielsweise sieht die Neudefinition der Netzwerkkonfiguration wie folgt aus:
{
"communication/http/port": 8400,
"communication/websocket/port": 8500,
"communication/events/port": 9000,
"communication/bind_all_interfaces": true
}
Anzeige und Filterung
/settings Listen-Endpunkt (GET /settings, GET /settings/) ist grundsätzlich Grundlagen (basic) Es werden nur die Einstellungen zurückgegeben. Um Einstellungen einzubeziehen, für die das Flag „advanced“ gesetzt ist, ?advanced=trueum Aliase einzuschließen, die mit dem Flag „veraltet“ gekennzeichnet sind, ?deprecated=trueBitte übermitteln Sie dies. Die Einstellung „Verborgen“ ist für den internen Gebrauch reserviert und POST /settings/misc/hidden_settingsüber misc/hidden_settingsWird nur angezeigt, wenn diese Option aktiviert ist (es gibt keine entsprechenden Abfrageparameter). Die Filterflags werden mit „AND“ verknüpft. advancedWow hidden Bei einem Schlüssel, für den alle Flags gesetzt sind, müssen beide Gates geöffnet sein. POST- und DELETE-Anrufe für bekannte Schlüssel unterliegen keinen Einschränkungen durch die Gates.
Bei korrekter Verwendung des kanonischen Schlüssels (canonical key) erfolgt die Abfrage nach einem einzelnen Schlüssel (GET /settings/<key>) umgeht die „advanced/deprecated“-Prüfung. Dies ist für Clients mit entsprechenden Vorkenntnissen nützlich. Versteckte Schlüssel unterliegen weiterhin den Einschränkungen dieser Prüfung.
Drei Laufzeit-Schalter legen den Anfangswert des Gates fest, der während der gesamten Laufzeit des Dienstes beibehalten wird:
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
misc/advanced_settings | bool | — | GET /settings In der Liste advanced Enthält die mit einem Flag gekennzeichneten Einstellungen (Standardwert false). Bei jeder Anfrage ?advanced=trueDas ist so, als würde man … weitergeben. |
misc/deprecated_settings | bool | — | GET /settings In der Liste deprecated Enthält die mit einem Flag gekennzeichneten Einstellungen (Standardwert false). Bei jeder Anfrage ?deprecated=trueDas ist so, als würde man … weitergeben. |
Typzuordnung
Die von der API zurückgegebenen Typhinweise entsprechen dem folgenden JSON-Format:
STRING→stringBOOL→boolINT→intFLOAT→floatARR_STRING→string[]VEC3→vec3({x, y, z}(Objekt mit Eigenschaften)GENERIC→json(beliebiger strukturierter Wert)
communication/…
Dies sind die Netzwerkports und die Bind-Adressen für HTTP-, WebSocket- und Event-Stream-Server. Die meisten Einträge gelten nur für den Boot-Vorgang.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
communication/serial/enabled | bool | — | Aktiviert oder deaktiviert die Kommunikation über serielle Geräte. |
communication/bind_address | string | Start | Dies ist die IP-Adresse, an die der HTTP- und WebSocket-Server gebunden werden soll. |
communication/bind_all_interfaces | bool | Start | den Server anstelle von „localhost“ 0.0.0.0wird daran gebunden. |
communication/http/port | int | Start | HTTP-REST-API-Port (Standardwert 10000). |
communication/websocket/port | int | Start | Standard-WebSocket-Port v3.1 (Standardwert 10001). |
communication/websocket/legacy_port | int | Start | Legacy v3.0 WebSocket-Port (Standardwert 10000). |
communication/events/port | int | Start | WebSocket-Port für den Ereignisstrom (Standardwert 10020). |
devices/…
devices/detection/…
Dies sind die Richtlinien für das Scannen der seriellen Schnittstelle. Alle Einträge gehören zu den erweiterten Einstellungen (advanced).
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
devices/detection/scan_period_ms | int | Bereich 100–10.000; beim Systemstart | Intervall für den Scan der seriellen Schnittstelle (ms). |
devices/detection/handshake_timeout_s | int | Bereich 1–15 | Handshake-Timeout (in Sekunden) pro Port. |
devices/detection/max_retries | int | Bereich 1–10 | Maximale Anzahl der Handshake-Wiederholungsversuche pro Port. |
devices/detection/failure_log_delay_s | int | Bereich 1–60 | Verzögerungszeit (s) vor der erneuten Protokollierung eines Erkennungsfehlers. |
devices/detection/block_looping_ports | bool | — | Wenn ein Loop-Port erkannt wird, wird der Betriebszustand des Geräts gesperrt. |
devices/detection/excluded_ports | json | — | Serielle Schnittstellenpfade, die bei der Erkennung übersprungen werden sollen. |
devices/detection/additional_ports | string[] | — | Zusätzliche Seriellport-Pfade, die ohne Einschränkungen gescannt werden sollen. |
devices/detection/allowed_vendor_id_filter | string[] | — | Zulässige USB-Hersteller-IDs beim Auflisten der Anschlüsse. |
devices/detection/port_name_substring_filter | string[] | — | Teilzeichenfolgen der Portnamen für die jeweiligen Plattformen, die abgeglichen werden sollen. |
devices/detection/wireless_verse_grip_description_filter | string[] | — | Teil einer Zeichenfolge aus der Beschreibung des Anschlusses für die Erkennung des kabellosen VerseGrip. |
devices/detection/inverse3x_description_filter | string[] | — | Teil einer Zeichenfolge aus der Beschreibung des Anschlusses für die Inverse3x-Erkennung. |
devices/detection/extra_ports (Nicht mehr verfügbar) | string[] | — | stattdessen devices/detection/additional_portswird verwendet. Lese- und Schreibvorgänge werden transparent über den offiziellen Schlüssel weitergeleitet. |
devices/*inverse/…
Dies ist der globale Standardwert, der für alle Geräte der Serie „ Inverse3 “ gilt. Eine sessionsspezifische Überschreibung hat Vorrang.
In Version 3.5.0 sind Glob-Muster devices/inverse*/…war, und zuvor *und nun inverse Es befindet sich weiter vorne. Konfigurationsdateien, die das bisherige Literal verwenden, führen in Version 3.5.1 zu einem Bindungsfehler; bitte aktualisieren Sie diese daher. Der Schlüssel selbst wurde ansonsten nicht geändert.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
devices/*inverse/filters/force_scale/gain | float | Bereich 0,0–2,0 | Globale Kraft-Leistungs-Verhältnis-Einstellung, die für alle Geräte gilt. |
devices/*inverse/filters/force_gate/gain | float | Bereich 0,0–1,0 | Standard-Verstärkung des Kraftgates für eine neue Sitzung. |
devices/*inverse/control_timeout_ms | int | Bereich 50–10.000 | Zeitlimit (in ms) vor dem Aufheben der Gerätesteuerungssperre. |
devices/*inverse/query_orientation_on_idle | bool | — | Wenn sich das Gerät im Ruhezustand befindet, ermittelt die Firmware die Ausrichtung des Geräts. |
devices/*inverse/safeties/expose_in_snapshot | bool | — | GET /devices/{id} Der Snapshot enthält gerätespezifische Sicherheitsflags. |
devices/presets
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
devices/presets | json | — | Standard-Gerätekonfigurationsvoreinstellungen nach Gerätetyp (inverse_arm_front_*, inverse_led_front_*, minverse_*, verse_grip_default, wireless_verse_grip_default, custom_verse_grip_default(z. B. Mount-Konvertierung, Basis usw.). |
devices/wireless_verse_grip/…
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
devices/wireless_verse_grip/battery/low_threshold | int | — | Schwellenwert für den verbleibenden Akkustand (in %), bei dem eine Warnung wegen niedrigem Akkustand ausgegeben wird. |
devices/wireless_verse_grip/battery/critical_threshold | int | — | Schwellenwert für den Akkustand (in %), bei dem eine Akku-Gefahrenwarnung ausgegeben wird. |
devices/wireless_verse_grip/battery/reset_margin | int | — | Hysterese-Sicherheitsabstand vor dem Aufheben der Akkuwarnung. |
devices/wireless_verse_grip/filters/orientation_filter | json | Beim Hochfahren | Konfiguration des „One Euro Filter“ für den kabellosen VerseGrip. |
features/…
features/calibration/…
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/calibration/hall_threshold | int | Bereich 1–32 | Füllstand des Lochsensors, der während der Kalibrierung als mit einem Stift bestückt erkannt wird. |
features/grip_hook/…
Dies ist die automatische „Grip-Hook“-Funktion, die den Cursor fixiert, solange der Griff senkrecht gehalten wird.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/grip_hook/enabled | bool | — | Wenn Sie den Griff senkrecht halten, wird die automatische Verriegelung des Griffhakens aktiviert. |
features/grip_hook/use_hall | bool | — | Bei der Grifferkennung wird anstelle der Ausrichtung der Schwellenwert des Lochsensors verwendet. |
features/grip_hook/hall | int | Bereich 1–32 | Schwellenwert für den Wert des Hall-Sensors, der die Greifverriegelung auslöst. |
features/grip_hook/hold_duration | int | Bereich 10–1000 | Die Zeit (in ms), während der die Sperre nach Auslösen des Triggers aufrechterhalten wird. |
features/navigation/bubble/…
Dies sind die Standardwerte für das Bubble-Navigationsmodul. bubble Wird bei der ersten Aktivierung der Aktion an die Sitzung übergeben. Das Laufzeitverhalten der einzelnen Felder ist Navigationsmodul Siehe Seite.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/navigation/bubble/center | vec3 | — | Dies ist die Standardposition des Blasenmittelpunkts. |
features/navigation/bubble/center_enabled | bool | — | Die bei der ersten Aktivierung der Bubble-Funktion festgelegte centerwird angewendet. |
features/navigation/bubble/rotation_enabled | bool | — | Die Drehung der Arbeitsfläche wird auf die Navigationsrichtung angewendet. |
features/navigation/bubble/scale_enabled | bool | — | Die Skalierung des Arbeitsbereichs wird auf die Navigationsgeschwindigkeit angewendet. |
features/navigation/bubble/center_drift_speed | float | ≥ 0 | auto_follow Dies ist die Driftgeschwindigkeit (m/s) im Zentralmodus. |
features/navigation/bubble/max_velocity | float | — | Dies ist die maximale Navigationsgeschwindigkeit (m/s) innerhalb des Geschwindigkeitsbereichs. |
features/navigation/bubble/velocity_zone_width | float | — | Dies ist die Breite (in m) des Geschwindigkeitsbereichs außerhalb der Blasenoberfläche. |
features/navigation/bubble/reset_velocity_on_entry | bool | — | Wenn der Cursor in die Blase eintritt, wird die Geschwindigkeit auf 0 zurückgesetzt. |
features/navigation/bubble/spring_inner | float | — | Dies ist der Federkonstante (N/m) im Zentrum der Blase. |
features/navigation/bubble/spring_surface | float | — | Dies ist die Federkonstante (N/m) an der Oberfläche der Blase. |
features/navigation/bubble/spring_outer | float | — | Dies ist der Federkonstante (N/m) an der äußeren Grenze. |
features/navigation/bubble/damping_inner | float | — | Dies ist der Dämpfungskoeffizient (Ns/m) im Zentrum der Blase. |
features/navigation/bubble/damping_surface | float | — | Dies ist der Dämpfungskoeffizient (Ns/m) an der Oberfläche einer Blase. |
features/navigation/bubble/damping_outer | float | — | Dies ist der Dämpfungskoeffizient (Ns/m) an der Außengrenze. |
features/navigation/bubble/wall_stiffness | float | — | Dies ist die Steifigkeit (N/m) der festen Wand an der Außenkante. |
features/navigation/bubble/bump_width | float | — | Dies ist die Breite (m) der taktilen Erhebungen auf der Oberfläche der Blase. |
features/navigation/bubble/bump_stiffness | float | — | Dies ist die Steifigkeit (N/m) der taktilen Erhebungen auf der Oberfläche der Blase. |
features/navigation/bubble/stop_at_collision | bool | — | Verhindert, dass der Mittelpunkt der Blase in Kollisionsrichtung abdriftet, solange die Kollision aktiv ist. |
features/navigation/bubble/collision_threshold | float | > 0 | Dies ist die Größe der äußeren Kraft (N), bei der eine Kollision erkannt wird. |
features/navigation/bubble/collision_inflate_scale | float | ≥ 1 | Solange die Kollision aktiv ist velocity_zone_widthDas ist der Vergrößerungsfaktor. |
features/navigation/bubble/collision_exit_ratio | float | Intervall (0,1] | Das ist der Hysterese-Koeffizient. |ext_force|ga collision_threshold × this Wenn es nach unten fällt, wird der Kollisionszustand aufgehoben. 1.0Dadurch wird die Hysterese deaktiviert. |
features/navigation/bubble/avatar_boundary_enabled | bool | — | Die Weltposition des Avatars wurde festgelegt avatar_boundary Beschränkt sich auf die SDF-Form. |
features/safe_trajectory/…
Dies ist ein Geschwindigkeitsbegrenzer für den Betrieb des Endeffektors.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/safe_trajectory/enabled | bool | — | Aktiviert den Geschwindigkeitsbegrenzer für die sichere Fahrbahn. |
features/safe_trajectory/max_vel | float | Bereich 0,01–2,0 | Dies ist die maximal zulässige Geschwindigkeit des Endeffektors (m/s). |
features/screensaver/…
Dies ist eine Leerlaufanimation, die auf dem Gerät „ Inverse3 “ abgespielt wird, wenn die Sitzung nicht aktiv ist.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/screensaver/enabled | bool | — | Inverse3 Aktiviert die Bildschirmschoner-Animation bei Inaktivität auf dem Gerät. |
features/screensaver/speed | float | Bereich 0,001–0,2 | Dies ist die Geschwindigkeit der Bildschirmschoner-Animation. |
features/screensaver/distracted_speed | float | Bereich 0,001–0,2 | Dies ist die Animationsgeschwindigkeit, wenn sich der Benutzer in der Nähe befindet, aber nicht interagiert. |
features/sdf/…
Dies ist das Modul für haptische Effekte (SDF HFX) des Signatur-Distanzfelds (SDF).
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/sdf/enabled | bool | — | Aktiviert oder deaktiviert das SDF-Haptik-Effektmodul. |
features/sdf/state_output | bool | — | Grundsätzlich wird der SDF-Status in die Ausgabedaten des Geräts aufgenommen. |
features/sdf/max_count | int | Bereich 0–128 | Maximale Anzahl aktiver SDF-Effekte (0 = (unbegrenzt) ist. |
features/sdf/events/created | bool | — | Löst ein Ereignis aus, wenn ein neuer SDF-Effekt erstellt wird. |
features/sdf/events/deleted | bool | — | Löst ein Ereignis aus, wenn der SDF-Effekt entfernt wird. |
features/sdf/events/updated | bool | — | Löst ein Ereignis aus, wenn der SDF-Effekt aktualisiert wird. |
features/sdf/probe_on_zero_force/enabled | bool | — | Das SDF-Feld wird automatisch abgefragt, wenn die ausgeübte Kraft nahe bei 0 liegt. |
features/sdf/probe_on_zero_force/delay | float | Bereich 0,001–60,0 | Dies ist die Verzögerungszeit (in Sekunden) zwischen dem Absinken der Leistung auf 0 und dem Start der automatischen Messung. |
features/verse_grip_pairing/…
Inverse3 Diese Funktion dient zur Verfolgung der Verbindung bzw. Trennung zwischen dem Gerät und dem (kabelgebundenen oder kabellosen) Verse Grip. Sie bildet die Grundlage für die Benutzeroberfläche zur Kopplung mit dem „ Haply -Hub“.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
features/verse_grip_pairing/enabled | bool | — | Aktiviert die Paarung sowie die Verfolgung von Verbindungen und Trennungen. |
features/verse_grip_pairing/hall_threshold_vg | int | Bereich 1–32 | Dies ist die Pin-Ebene, die als kabelgebundene VerseGrip-Verbindung identifiziert wurde. |
features/verse_grip_pairing/hall_threshold_wvg | int | Bereich 1–32 | Dies ist die Ebene, die als drahtlose VerseGrip-Verbindung erkannt wird. |
features/verse_grip_pairing/detach_debounce_ms | int | Bereich 0–1000 | Dies ist die Rebound-Phase (in ms) vor der endgültigen Trennung. |
features/verse_grip_pairing/heartbeat_ms | int | Bereich 100–10.000 | Dies ist der Abstand (in ms) zwischen den erzwungenen Erinnerungen. |
features/verse_grip_pairing/force_attached | bool | — | Den Hall-Sensor umgehen, um den Verbindungsstatus zu trueund dauerhaft festlegt (zur Umgehung von Hardwarefehlern). |
session/serialization/…
Ausgabeformat „Transform“ – Wirkt sich auf WebSocket- und HTTP-JSON-Nutzdaten aus. Diese Schlüssel wurden in Version 3.5.1 angepasst, um den sitzungsbezogenen Geltungsbereich widerzuspiegeln. serialization/*aus session/serialization/*wurde dorthin verschoben. Der ursprüngliche Pfad wird weiterhin über einen veralteten Alias aufgelöst.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
session/serialization/explicit_fields | bool | — | Die serialisierte Ausgabe enthält ein „transform“-Feld, dessen Wert dem identischen Standardwert entspricht (z. B.: position: {0,0,0}, rotation: {w:1,…}). Dies ist nützlich, wenn der Client das explizite Vorhandensein aller Felder verlangt. Standardwert: false. |
session/serialization/force_complete_transforms | bool | — | Einschließlich der Ausrichtungshilfen (Verse Grip, Wireless Verse Grip) an allen transform-Ausgängen position, rotation, Und scalewird immer ausgegeben. Diese Geräte würden andernfalls rotationEs wird nur ausgegeben. session/serialization/explicit_fieldsumfasst. Standardwert: false. |
serialization/explicit_fields (Unterstützung eingestellt) | bool | — | stattdessen session/serialization/explicit_fieldswird verwendet. Lese- und Schreibvorgänge werden transparent über den offiziellen Schlüssel weitergeleitet. |
serialization/force_complete_transforms (Unterstützung eingestellt) | bool | — | stattdessen session/serialization/force_complete_transformswird verwendet. Lese- und Schreibvorgänge werden transparent über den offiziellen Schlüssel weitergeleitet. |
session/…
Dies ist der Sitzungsplaner.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
session/min_simulation_rate_hz | int | Bereich 20–500 | Dies ist die minimal zulässige Simulationsfrequenz (Hz) des Geräts, bevor eine Warnung ausgelöst wird. |
rate/…
Es handelt sich um Service-Pacing. Diese Funktion wurde in Version 3.5.1 eingeführt – die folgenden vier rate/websocket/* Der Schlüssel war zuvor session/commands/* Es befand sich unten, und der bisherige Pfad wird weiterhin über einen als „veraltet“ gekennzeichneten Alias aufgelöst.
| Schlüssel | Typ | Einschränkungen | Beschreibung |
|---|---|---|---|
rate/websocket/zoh_window_ms | int | — | Fenster vom Typ „Zero-Order-Hold“ – Unterdrückt die innerhalb dieses Fensters empfangenen Signale (ms). |
rate/websocket/drop_warning_threshold | int | — | Dies ist die Anzahl der Befehle, die vor dem Auftreten der Warnung in das Fenster eingegeben wurden. |
rate/websocket/drop_warning_window_ms | int | — | Dies ist die Größe des gleitenden Fensters (in ms) zur Aggregation der verworfenen Befehle. |
rate/websocket/tick_on_empty_batch | bool | Fortgeschritten | Selbst wenn die gesamte WebSocket-Verbindung unterbrochen wird, main_loop Ich buche einen Termin. |
session/commands/zoh_window_ms (Unterstützung eingestellt) | int | — | stattdessen rate/websocket/zoh_window_mswird verwendet. Lese- und Schreibvorgänge werden transparent weitergeleitet. |
session/commands/drop_warning_threshold (Unterstützung eingestellt) | int | — | stattdessen rate/websocket/drop_warning_thresholdwird verwendet. Lese- und Schreibvorgänge werden transparent weitergeleitet. |
session/commands/drop_warning_window_ms (Unterstützung eingestellt) | int | — | stattdessen rate/websocket/drop_warning_window_mswird verwendet. Lese- und Schreibvorgänge werden transparent weitergeleitet. |
session/commands/tick_on_empty_batch (Unterstützung eingestellt) | bool | — | stattdessen rate/websocket/tick_on_empty_batchwird verwendet. Lese- und Schreibvorgänge werden transparent weitergeleitet. |
Einstellungen nur für den internen Gebrauch
In Version 3.5.1 wurden mehrere Einstellungsgruppen hiddenwird bereitgestellt und ist für den internen Gebrauch reserviert — rate/dispatch/*(AIMD-Sende-Geschwindigkeitsobergrenze und Gegendruck-Schwellenwert), session/freeform/*(verhaltensbasiertes Fingerprinting), session/serialization/preview/*(Serialisierungstests vor der Veröffentlichung, u. a. Euler-Quaternion-Ausgabe und Wireless-VerseGrip-Routing). Zur Fehlerbehebung misc/hidden_settingsDer Zugriff ist zwar über diese Option möglich, jedoch kann sie in späteren Nebenversionen hochgestuft, umbenannt oder entfernt werden. Richten Sie das Verhalten des Clients daher nicht fest auf diese Einstellung aus.