Analyse de localisation des canaux

OpenClaw normalise les localisations partagees depuis les canaux de discussion en :

  • texte lisible ajoute au corps du message entrant, et
  • champs structures dans le payload de contexte de reponse automatique.

Actuellement pris en charge :

  • Telegram (epingles de localisation + lieux + localisations en direct)
  • WhatsApp (locationMessage + liveLocationMessage)
  • Matrix (m.location avec geo_uri)

Format du texte

Les localisations sont rendues sous forme de lignes lisibles sans crochets :

  • Epingle :
    • 📍 48.858844, 2.294351 ±12m
  • Lieu nomme :
    • 📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)
  • Partage en direct :
    • 🛰 Live location: 48.858844, 2.294351 ±12m

Si le canal inclut une legende/commentaire, il est ajoute a la ligne suivante :

📍 48.858844, 2.294351 ±12m
Meet here

Champs de contexte

Lorsqu’une localisation est presente, ces champs sont ajoutes a ctx :

  • LocationLat (nombre)
  • LocationLon (nombre)
  • LocationAccuracy (nombre, metres ; optionnel)
  • LocationName (chaine ; optionnel)
  • LocationAddress (chaine ; optionnel)
  • LocationSource (pin | place | live)
  • LocationIsLive (booleen)

Remarques par canal

  • Telegram : les lieux correspondent a LocationName/LocationAddress ; les localisations en direct utilisent live_period.
  • WhatsApp : locationMessage.comment et liveLocationMessage.caption sont ajoutes comme ligne de legende.
  • Matrix : geo_uri est analyse comme une localisation epinglee ; l’altitude est ignoree et LocationIsLive est toujours false.