> ## Documentation Index
> Fetch the complete documentation index at: https://openclaw.veiseule.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Разбор локаций каналов

# Разбор локаций каналов

OpenClaw нормализует переданные из чатов локации в:

* человекочитаемый текст, добавляемый к входящему сообщению, и
* структурированные поля в полезной нагрузке контекста автоответа.

В настоящее время поддерживаются:

* **Telegram** (пины локаций + места/venue + живые локации)
* **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`

Если канал включает подпись/комментарий, он добавляется следующей строкой:

```
📍 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**: места (venues) сопоставляются с `LocationName/LocationAddress`; живые локации используют `live_period`.
* **WhatsApp**: `locationMessage.comment` и `liveLocationMessage.caption` добавляются как строка подписи.
* **Matrix**: `geo_uri` разбирается как локация-пин; высота игнорируется, а `LocationIsLive` всегда false.
