Configuration
Kanal konum ayrıştırma
OpenClaw, sohbet kanallarından paylaşılan konumları şu biçimde normalize eder:
- gelen gövdeye eklenen kısa koordinat metni ve
- otomatik yanıt bağlam yükündeki yapılandırılmış alanlar. Kanal tarafından sağlanan etiketler, adresler ve başlıklar/yorumlar, kullanıcı gövdesinin içinde satır içi olarak değil, paylaşılan güvenilmeyen metadata JSON bloğu üzerinden isteme işlenir.
Şu anda desteklenenler:
- Telegram (konum iğneleri + mekanlar + canlı konumlar)
- WhatsApp (
locationMessage+liveLocationMessage) - Matrix (
geo_uriiçerenm.location)
Metin biçimlendirme
Konumlar, köşeli parantezler olmadan anlaşılır satırlar olarak işlenir:
- İğne:
📍 48.858844, 2.294351 ±12m
- Adlandırılmış yer:
📍 48.858844, 2.294351 ±12m
- Canlı paylaşım:
🛰 Canlı konum: 48.858844, 2.294351 ±12m
Kanal bir etiket, adres veya başlık/yorum içeriyorsa, bu bağlam yükünde korunur ve istemde çevrili güvenilmeyen JSON olarak görünür:
Konum (güvenilmeyen metadata):
```json
{
"latitude": 48.858844,
"longitude": 2.294351,
"name": "Eiffel Tower",
"address": "Champ de Mars, Paris",
"caption": "Meet here"
}
```
Bağlam alanları
Bir konum mevcut olduğunda bu alanlar ctx içine eklenir:
LocationLat(sayı)LocationLon(sayı)LocationAccuracy(sayı, metre; isteğe bağlı)LocationName(dize; isteğe bağlı)LocationAddress(dize; isteğe bağlı)LocationSource(pin | place | live)LocationIsLive(boolean)LocationCaption(dize; isteğe bağlı)
İstem işleyicisi LocationName, LocationAddress ve LocationCaption alanlarını güvenilmeyen metadata olarak değerlendirir ve bunları diğer kanal bağlamları için kullanılan aynı sınırlı JSON yolu üzerinden serileştirir.
Kanal notları
- Telegram: mekanlar
LocationName/LocationAddressalanlarına eşlenir; canlı konumlarlive_periodkullanır. - WhatsApp:
locationMessage.commentveliveLocationMessage.caption,LocationCaptionalanını doldurur. - Matrix:
geo_uri, iğne konumu olarak ayrıştırılır; yükseklik yok sayılır veLocationIsLiveher zaman false olur.