位置解析 (Location Parsing)
通道位置解析
Section titled “通道位置解析”OpenClaw 将来自聊天通道的共享位置标准化为:
- 附加到入站正文的可读文本,以及
- 自动回复上下文负载中的结构化字段。
目前支持:
- Telegram (位置图钉 + 场所 + 实时位置)
- WhatsApp (位置消息 + 实时位置消息)
- Matrix (带有
geo_uri的m.location)
位置被渲染为没有括号的友好行:
- 图钉 (Pin):
📍 48.858844, 2.294351 ±12m
- 命名场所 (Named place):
📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)
- 实时共享 (Live share):
🛰 Live location: 48.858844, 2.294351 ±12m
如果通道包含标题/注释,它将附加在下一行:
📍 48.858844, 2.294351 ±12mMeet here当存在位置时,这些字段将添加到 ctx 中:
LocationLat(数字)LocationLon(数字)LocationAccuracy(数字, 米; 可选)LocationName(字符串; 可选)LocationAddress(字符串; 可选)LocationSource(pin | place | live)LocationIsLive(布尔值)
- Telegram: 场所映射到
LocationName/LocationAddress;实时位置使用live_period。 - WhatsApp:
locationMessage.comment和liveLocationMessage.caption作为标题行附加。 - Matrix:
geo_uri被解析为图钉位置;海拔被忽略,且LocationIsLive始终为 false。