Standortbefehl (Nodes)
Kurzfassung
location.getist ein Node-Befehl (übernode.invoke).- Standardmäßig aus.
- Android-App-Einstellungen verwenden einen Selektor: Aus / Bei Nutzung.
- Separater Schalter: Präziser Standort.
Warum ein Selektor (nicht nur ein Schalter)
OS-Berechtigungen sind mehrstufig. Wir können einen Selektor in der App anbieten, aber das OS entscheidet über die tatsächliche Berechtigung.
- iOS/macOS zeigen möglicherweise Bei Nutzung oder Immer in Systemaufforderungen/Einstellungen an.
- Die Android-App unterstützt derzeit nur Vordergrund-Standort.
- Präziser Standort ist eine separate Berechtigung (iOS 14+ „Präzise”, Android „fein” vs. „grob”).
Der Selektor in der UI bestimmt den angeforderten Modus; die tatsächliche Berechtigung liegt in den OS-Einstellungen.
Einstellungsmodell
Pro Node-Gerät:
location.enabledMode:off | whileUsinglocation.preciseEnabled: bool
UI-Verhalten:
- Die Auswahl von
whileUsingfordert Vordergrund-Berechtigung an. - Wenn das OS die angeforderte Stufe verweigert, wird auf die höchste erteilte Stufe zurückgesetzt und der Status angezeigt.
Berechtigungs-Mapping (node.permissions)
Optional. macOS-Node meldet location über die Berechtigungs-Map; iOS/Android können es weglassen.
Befehl: location.get
Aufgerufen über node.invoke.
Parameter (Vorschlag):
{
"timeoutMs": 10000,
"maxAgeMs": 15000,
"desiredAccuracy": "coarse|balanced|precise"
}
Antwort-Payload:
{
"lat": 48.20849,
"lon": 16.37208,
"accuracyMeters": 12.5,
"altitudeMeters": 182.0,
"speedMps": 0.0,
"headingDeg": 270.0,
"timestamp": "2026-01-03T12:34:56.000Z",
"isPrecise": true,
"source": "gps|wifi|cell|unknown"
}
Fehler (stabile Codes):
LOCATION_DISABLED: Selektor ist aus.LOCATION_PERMISSION_REQUIRED: Berechtigung für angeforderten Modus fehlt.LOCATION_BACKGROUND_UNAVAILABLE: App ist im Hintergrund, aber nur „Bei Nutzung” erlaubt.LOCATION_TIMEOUT: kein Fix in der verfügbaren Zeit.LOCATION_UNAVAILABLE: Systemfehler / keine Provider.
Hintergrundverhalten
- Die Android-App verweigert
location.getim Hintergrund. - Halte OpenClaw geöffnet, wenn du auf Android den Standort abfragst.
- Andere Node-Plattformen können sich unterschiedlich verhalten.
Modell-/Tool-Integration
- Tool-Oberfläche:
nodes-Tool fügt dielocation_get-Aktion hinzu (Node erforderlich). - CLI:
openclaw nodes location get --node <id>. - Agent-Richtlinien: nur aufrufen, wenn der Benutzer Standort aktiviert hat und den Umfang versteht.
UX-Texte (Vorschlag)
- Aus: „Standortfreigabe ist deaktiviert.”
- Bei Nutzung: „Nur wenn OpenClaw geöffnet ist.”
- Präzise: „Präzisen GPS-Standort verwenden. Ausschalten, um ungefähren Standort zu teilen.”