Skip to content

通道位置解析

openclaw 将来自聊天通道的共享位置标准化为:

  • 附加到入站正文的人类可读文本,以及
  • 自动回复上下文负载中的结构化字段。

当前支持:

  • Telegram(位置标记 + 地点 + 实时位置)
  • WhatsApp(locationMessage + liveLocationMessage)
  • Matrix(带有 geo_urim.location

文本格式化

位置以友好的行呈现,不带括号:

  • 标记:
    • 📍 48.858844, 2.294351 ±12m
  • 命名地点:
    • 📍 埃菲尔铁塔 — 战神广场,巴黎 (48.858844, 2.294351 ±12m)
  • 实时共享:
    • 🛰 实时位置:48.858844, 2.294351 ±12m

如果通道包含标题/评论,它会附加在下一行:

📍 48.858844, 2.294351 ±12m
在这里见面

上下文字段

当存在位置时,这些字段会添加到 ctx

  • LocationLat(数字)
  • LocationLon(数字)
  • LocationAccuracy(数字,米;可选)
  • LocationName(字符串;可选)
  • LocationAddress(字符串;可选)
  • LocationSourcepin | place | live
  • LocationIsLive(布尔值)

通道说明

  • Telegram:地点映射到 LocationName/LocationAddress;实时位置使用 live_period
  • WhatsApplocationMessage.commentliveLocationMessage.caption 作为标题行附加。
  • Matrixgeo_uri 被解析为标记位置;海拔被忽略,LocationIsLive 始终为 false。