Commande de localisation (nœuds)
TL;DR
location.getest une commande de nœud (vianode.invoke).- Désactivée par défaut.
- Les paramètres de l’application Android utilisent un sélecteur : Off / While Using.
- Bascule distincte : Precise Location.
Pourquoi un sélecteur (et pas seulement un interrupteur)
Les autorisations de l’OS ont plusieurs niveaux. Nous pouvons exposer un sélecteur dans l’application, mais l’OS décide toujours de l’autorisation réellement accordée.- iOS/macOS peuvent exposer While Using ou Always dans les invites/paramètres système.
- L’application Android ne prend actuellement en charge que la localisation au premier plan.
- La localisation précise est une autorisation distincte (iOS 14+ « Precise », Android « fine » vs « coarse »).
Modèle de paramètres
Par appareil nœud :location.enabledMode:off | whileUsinglocation.preciseEnabled: bool
- Sélectionner
whileUsingdemande l’autorisation de premier plan. - Si l’OS refuse le niveau demandé, revenir au niveau le plus élevé accordé et afficher l’état.
Mappage des autorisations (node.permissions)
Facultatif. Le nœud macOS signale location via la map des autorisations ; iOS/Android peuvent l’omettre.
Commande : location.get
Appelée via node.invoke.
Paramètres (suggérés) :
LOCATION_DISABLED: le sélecteur est désactivé.LOCATION_PERMISSION_REQUIRED: autorisation manquante pour le mode demandé.LOCATION_BACKGROUND_UNAVAILABLE: l’application est en arrière-plan mais seule l’autorisation While Using est accordée.LOCATION_TIMEOUT: aucun point obtenu à temps.LOCATION_UNAVAILABLE: échec du système / aucun fournisseur.
Comportement en arrière-plan
- L’application Android refuse
location.getlorsqu’elle est en arrière-plan. - Gardez OpenClaw ouvert lorsque vous demandez la localisation sur Android.
- Les autres plateformes de nœud peuvent différer.
Intégration au modèle/à l’outillage
- Surface d’outil : l’outil
nodesajoute l’actionlocation_get(nœud requis). - CLI :
openclaw nodes location get --node <id>. - Consignes pour l’agent : ne l’appeler que lorsque l’utilisateur a activé la localisation et comprend la portée.
Texte d’interface (suggéré)
- Off : « Le partage de localisation est désactivé. »
- While Using : « Uniquement lorsque OpenClaw est ouvert. »
- Precise : « Utiliser la localisation GPS précise. Désactivez cette option pour partager une localisation approximative. »