Configuration
Penguraian lokasi channel
OpenClaw menormalkan lokasi yang dibagikan dari channel chat menjadi:
- teks koordinat ringkas yang ditambahkan ke body masuk, dan
- field terstruktur dalam payload konteks balasan otomatis. Label, alamat, dan caption/komentar yang disediakan channel dirender ke dalam prompt melalui blok JSON metadata tidak tepercaya bersama, bukan inline di body pengguna.
Saat ini didukung:
- Telegram (pin lokasi + venue + lokasi live)
- WhatsApp (
locationMessage+liveLocationMessage) - Matrix (
m.locationdengangeo_uri)
Pemformatan teks
Lokasi dirender sebagai baris yang mudah dibaca tanpa tanda kurung:
- Pin:
📍 48.858844, 2.294351 ±12m
- Tempat bernama:
📍 48.858844, 2.294351 ±12m
- Berbagi live:
🛰 Lokasi live: 48.858844, 2.294351 ±12m
Jika channel menyertakan label, alamat, atau caption/komentar, informasi itu dipertahankan dalam payload konteks dan muncul dalam prompt sebagai JSON tidak tepercaya yang dipagari:
Location (untrusted metadata):
```json
{
"latitude": 48.858844,
"longitude": 2.294351,
"name": "Eiffel Tower",
"address": "Champ de Mars, Paris",
"caption": "Meet here"
}
```
Field konteks
Saat lokasi ada, field ini ditambahkan ke ctx:
LocationLat(angka)LocationLon(angka)LocationAccuracy(angka, meter; opsional)LocationName(string; opsional)LocationAddress(string; opsional)LocationSource(pin | place | live)LocationIsLive(boolean)LocationCaption(string; opsional)
Perender prompt memperlakukan LocationName, LocationAddress, dan LocationCaption sebagai metadata tidak tepercaya dan menserialisasikannya melalui jalur JSON terbatas yang sama yang digunakan untuk konteks channel lainnya.
Catatan channel
- Telegram: venue dipetakan ke
LocationName/LocationAddress; lokasi live menggunakanlive_period. - WhatsApp:
locationMessage.commentdanliveLocationMessage.captionmengisiLocationCaption. - Matrix:
geo_uridiurai sebagai lokasi pin; altitude diabaikan danLocationIsLiveselalu false.