Configuration

Penguraian lokasi channel

OpenClaw menormalkan lokasi bersama dari saluran obrolan menjadi:

  • teks koordinat ringkas yang ditambahkan ke isi pesan masuk, dan
  • bidang terstruktur dalam payload konteks balasan otomatis. Label, alamat, dan keterangan/komentar yang diberikan saluran dirender ke dalam prompt melalui blok JSON metadata tidak tepercaya bersama, bukan secara inline dalam isi pesan pengguna.

Saat ini didukung:

  • LINE (pesan lokasi dengan judul/alamat)
  • Matrix (m.location dengan geo_uri)
  • Telegram (pin lokasi + tempat + lokasi langsung)
  • WhatsApp (locationMessage + liveLocationMessage)

Pemformatan teks

Lokasi dirender sebagai baris yang mudah dibaca tanpa tanda kurung. Koordinat menggunakan enam angka desimal; akurasi dibulatkan ke meter utuh:

  • Pin:
    • 📍 48.858844, 2.294351 ±12m
  • Tempat bernama (baris yang sama; nama/alamat hanya masuk ke blok metadata):
    • 📍 48.858844, 2.294351 ±12m
  • Berbagi langsung:
    • 🛰 Live location: 48.858844, 2.294351 ±12m

Jika saluran menyertakan label, alamat, atau keterangan/komentar, informasi tersebut dipertahankan dalam payload konteks dan muncul dalam prompt sebagai JSON tidak tepercaya berpagar (bidang dihilangkan jika tidak ada):

text
Lokasi (metadata tidak tepercaya):```json{  "latitude": 48.858844,  "longitude": 2.294351,  "accuracy_m": 12,  "source": "place",  "name": "Menara Eiffel",  "address": "Champ de Mars, Paris",  "caption": "Bertemu di sini"}```

Bidang konteks

Jika terdapat lokasi, bidang berikut 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)

Jika saluran tidak menetapkan sumber secara eksplisit, OpenClaw menyimpulkannya: berbagi langsung menjadi live, lokasi dengan nama atau alamat menjadi place, dan semua yang lain menjadi pin.

Perender prompt memperlakukan LocationName, LocationAddress, dan LocationCaption sebagai metadata tidak tepercaya dan menserialisasikannya melalui jalur JSON terbatas yang sama dengan yang digunakan untuk konteks saluran lainnya.

Payload keluar

Alat pesan dan SDK Plugin menggunakan bentuk NormalizedLocation yang sama untuk lokasi keluar portabel. Payload yang hanya berisi koordinat merepresentasikan pin. Saluran dengan dukungan bawaan untuk tempat dapat memetakan name beserta address ke kartu tempat.

Telegram saat ini mengeksposnya melalui message(action="send"). Implementasi pertamanya sengaja dibuat mandiri: payload lokasi tidak dapat digabungkan dengan teks atau media, dan pasangan tempat yang tidak lengkap akan gagal alih-alih menghapus nama atau alamat secara diam-diam. Saluran yang tidak didukung tidak mengiklankan parameter lokasi.

Catatan saluran

  • LINE: pesan lokasi title/address dipetakan ke LocationName/LocationAddress; tidak ada lokasi langsung.
  • Matrix: geo_uri diurai sebagai lokasi pin; parameter u (ketidakpastian) dipetakan ke LocationAccuracy, isi peristiwa mengisi LocationCaption, ketinggian diabaikan, dan LocationIsLive selalu bernilai false.
  • Telegram: tempat dipetakan ke LocationName/LocationAddress; lokasi langsung dideteksi melalui live_period.
  • WhatsApp: locationMessage.comment dan liveLocationMessage.caption mengisi LocationCaption.

Terkait

Was this useful?
On this page

On this page