LINE
LINE terhubung ke OpenClaw melalui LINE Messaging API. Plugin berjalan sebagai penerima webhook di gateway dan menggunakan token akses channel + rahasia channel Anda untuk autentikasi. Status: plugin bawaan. Direct message, obrolan grup, media, lokasi, pesan Flex, pesan template, dan quick reply didukung. Reactions dan thread tidak didukung.Plugin bawaan
LINE dikirim sebagai plugin bawaan dalam rilis OpenClaw saat ini, jadi build terpaket normal tidak memerlukan instalasi terpisah. Jika Anda menggunakan build lama atau instalasi kustom yang tidak menyertakan LINE, instal secara manual:Penyiapan
- Buat akun LINE Developers dan buka Console: https://developers.line.biz/console/
- Buat (atau pilih) Provider dan tambahkan channel Messaging API.
- Salin Channel access token dan Channel secret dari pengaturan channel.
- Aktifkan Use webhook di pengaturan Messaging API.
- Atur URL webhook ke endpoint gateway Anda (HTTPS wajib):
channels.line.webhookPath atau
channels.line.accounts.<id>.webhookPath dan perbarui URL sesuai kebutuhan.
Catatan keamanan:
- Verifikasi signature LINE bergantung pada body (HMAC atas body mentah), jadi OpenClaw menerapkan batas body pra-autentikasi yang ketat dan timeout sebelum verifikasi.
- OpenClaw memproses peristiwa webhook dari byte permintaan mentah yang telah diverifikasi. Nilai
req.bodyyang diubah oleh middleware upstream diabaikan demi keamanan integritas signature.
Konfigurasi
Config minimal:LINE_CHANNEL_ACCESS_TOKENLINE_CHANNEL_SECRET
tokenFile dan secretFile harus menunjuk ke file reguler. Symlink ditolak.
Beberapa akun:
Kontrol akses
Direct message secara default menggunakan pairing. Pengirim yang tidak dikenal akan mendapatkan kode pairing dan pesannya diabaikan sampai disetujui.channels.line.dmPolicy:pairing | allowlist | open | disabledchannels.line.allowFrom: ID pengguna LINE yang masuk allowlist untuk DMchannels.line.groupPolicy:allowlist | open | disabledchannels.line.groupAllowFrom: ID pengguna LINE yang masuk allowlist untuk grup- Override per grup:
channels.line.groups.<groupId>.allowFrom - Catatan runtime: jika
channels.linetidak ada sama sekali, runtime akan fallback kegroupPolicy="allowlist"untuk pemeriksaan grup (bahkan jikachannels.defaults.groupPolicydiatur).
- Pengguna:
U+ 32 karakter hex - Grup:
C+ 32 karakter hex - Room:
R+ 32 karakter hex
Perilaku pesan
- Teks dipotong per 5000 karakter.
- Format Markdown dihapus; blok kode dan tabel dikonversi menjadi kartu Flex jika memungkinkan.
- Respons streaming dibuffer; LINE menerima potongan penuh dengan animasi loading saat agen bekerja.
- Unduhan media dibatasi oleh
channels.line.mediaMaxMb(default 10).
Data channel (pesan kaya)
GunakanchannelData.line untuk mengirim quick reply, lokasi, kartu Flex, atau pesan
template.
/card untuk preset pesan Flex:
Dukungan ACP
LINE mendukung binding percakapan ACP (Agent Communication Protocol):/acp spawn <agent> --bind heremengikat obrolan LINE saat ini ke sesi ACP tanpa membuat child thread.- Binding ACP yang dikonfigurasi dan sesi ACP aktif yang terikat percakapan bekerja di LINE seperti di channel percakapan lainnya.
Media keluar
Plugin LINE mendukung pengiriman file gambar, video, dan audio melalui alat pesan agen. Media dikirim melalui jalur pengiriman khusus LINE dengan penanganan pratinjau dan pelacakan yang sesuai:- Gambar: dikirim sebagai pesan gambar LINE dengan pembuatan pratinjau otomatis.
- Video: dikirim dengan pratinjau eksplisit dan penanganan content-type.
- Audio: dikirim sebagai pesan audio LINE.
Pemecahan masalah
- Verifikasi webhook gagal: pastikan URL webhook menggunakan HTTPS dan
channelSecretcocok dengan console LINE. - Tidak ada peristiwa masuk: pastikan path webhook cocok dengan
channels.line.webhookPathdan gateway dapat dijangkau dari LINE. - Error unduhan media: tingkatkan
channels.line.mediaMaxMbjika media melebihi batas default.
Terkait
- Ikhtisar Channels — semua channel yang didukung
- Pairing — autentikasi DM dan alur pairing
- Groups — perilaku obrolan grup dan pembatasan mention
- Channel Routing — perutean sesi untuk pesan
- Security — model akses dan penguatan