通道位置解析
入站位置解析(Telegram + WhatsApp + Matrix)与上下文字段
OpenClaw 会把聊天通道里分享的位置(location)归一化为:
- 追加到入站正文末尾的一段易读文本,以及
- 自动回复上下文 payload 中的结构化字段。
目前支持:
- Telegram(位置标记 + 场所/POI + 实时位置)
- WhatsApp(locationMessage + liveLocationMessage)
- Matrix(m.location,使用 geo_uri)
文本格式
位置会被渲染为便于阅读的行文本(不使用方括号):
- 位置标记:
- 📍 48.858844, 2.294351 ±12m
- 命名地点:
- 📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)
- 实时分享:
- 🛰 Live location: 48.858844, 2.294351 ±12m
如果通道同时携带了 caption/comment,会追加到下一行:
📍 48.858844, 2.294351 ±12m Meet here
上下文字段
当消息包含位置时,会在 ctx 中加入:
- LocationLat(number)
- LocationLon(number)
- LocationAccuracy(number,单位米;可选)
- LocationName(string;可选)
- LocationAddress(string;可选)
- LocationSource(pin | place | live)
- LocationIsLive(boolean)
通道说明
- Telegram:场所(venue)会映射到 LocationName/LocationAddress;实时位置使用 live_period。
- WhatsApp:locationMessage.comment 与 liveLocationMessage.caption 会作为 caption 行追加。
- Matrix:geo_uri 会按"位置标记(pin)"解析;海拔会被忽略;LocationIsLive 始终为 false。