Pular para o conteúdo principal

Análise de localização de canal

O OpenClaw normaliza localizações compartilhadas de canais de chat em:
  • texto legível por humanos anexado ao corpo de entrada, e
  • campos estruturados no payload de contexto de resposta automática.
Compatível atualmente com:
  • Telegram (pins de localização + locais + localizações ao vivo)
  • WhatsApp (locationMessage + liveLocationMessage)
  • Matrix (m.location com geo_uri)

Formatação de texto

As localizações são renderizadas como linhas amigáveis sem colchetes:
  • Pin:
    • 📍 48.858844, 2.294351 ±12m
  • Local com nome:
    • 📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)
  • Compartilhamento ao vivo:
    • 🛰 Localização ao vivo: 48.858844, 2.294351 ±12m
Se o canal incluir uma legenda/comentário, ela será anexada na linha seguinte:
📍 48.858844, 2.294351 ±12m
Encontre aqui

Campos de contexto

Quando uma localização está presente, estes campos são adicionados a ctx:
  • LocationLat (número)
  • LocationLon (número)
  • LocationAccuracy (número, metros; opcional)
  • LocationName (string; opcional)
  • LocationAddress (string; opcional)
  • LocationSource (pin | place | live)
  • LocationIsLive (booleano)

Observações sobre canais

  • Telegram: locais são mapeados para LocationName/LocationAddress; localizações ao vivo usam live_period.
  • WhatsApp: locationMessage.comment e liveLocationMessage.caption são anexados como a linha de legenda.
  • Matrix: geo_uri é analisado como uma localização de pin; a altitude é ignorada e LocationIsLive é sempre false.