Configuration
Розбір розташування каналу
OpenClaw нормалізує спільні геолокації з чат-каналів у:
- стислий текст координат, доданий до тіла вхідного повідомлення, і
- структуровані поля в корисному навантаженні контексту автовідповіді. Надані каналом мітки, адреси та підписи/коментарі відображаються в запиті через спільний JSON-блок ненадійних метаданих, а не вбудовуються безпосередньо в тіло повідомлення користувача.
Наразі підтримуються:
- Telegram (позначки геолокації + місця проведення + live locations)
- WhatsApp (
locationMessage+liveLocationMessage) - Matrix (
m.locationзgeo_uri)
Форматування тексту
Геолокації відображаються як зрозумілі рядки без дужок:
- Позначка:
📍 48.858844, 2.294351 ±12m
- Іменоване місце:
📍 48.858844, 2.294351 ±12m
- Поширення live location:
🛰 Геолокація в реальному часі: 48.858844, 2.294351 ±12m
Якщо канал містить мітку, адресу або підпис/коментар, це зберігається в корисному навантаженні контексту й з’являється в запиті як огороджений ненадійний JSON:
Геолокація (ненадійні метадані):
```json
{
"latitude": 48.858844,
"longitude": 2.294351,
"name": "Eiffel Tower",
"address": "Champ de Mars, Paris",
"caption": "Meet here"
}
```
Поля контексту
Коли присутня геолокація, до ctx додаються такі поля:
LocationLat(число)LocationLon(число)LocationAccuracy(число, метри; необов’язково)LocationName(рядок; необов’язково)LocationAddress(рядок; необов’язково)LocationSource(pin | place | live)LocationIsLive(булеве значення)LocationCaption(рядок; необов’язково)
Рендерер запитів обробляє LocationName, LocationAddress і LocationCaption як ненадійні метадані та серіалізує їх через той самий обмежений шлях JSON, що використовується для іншого контексту каналу.
Примітки щодо каналів
- Telegram: місця проведення зіставляються з
LocationName/LocationAddress; для live locations використовуєтьсяlive_period. - WhatsApp:
locationMessage.commentіliveLocationMessage.captionзаповнюютьLocationCaption. - Matrix:
geo_uriрозбирається як геолокація-позначка; висота ігнорується, аLocationIsLiveзавжди має значення false.