LINE เชื่อมต่อกับ OpenClaw ผ่าน LINE Messaging API โดย Plugin ทำงานเป็นตัวรับ Webhook บน Gateway และใช้ channel access token + channel secret ของคุณสำหรับ การยืนยันตัวตน สถานะ: Plugin ที่ดาวน์โหลดได้ รองรับข้อความส่วนตัว แชทกลุ่ม สื่อ ตำแหน่งที่ตั้ง ข้อความ Flex ข้อความ template และ quick replies ไม่รองรับ reactions และ threadsDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
ติดตั้ง
ติดตั้ง LINE ก่อนกำหนดค่า channel:ตั้งค่า
- สร้างบัญชี LINE Developers และเปิด Console: https://developers.line.biz/console/
- สร้าง (หรือเลือก) Provider แล้วเพิ่ม channel ของ Messaging API
- คัดลอก Channel access token และ Channel secret จากการตั้งค่า channel
- เปิดใช้งาน Use webhook ในการตั้งค่า Messaging API
- ตั้งค่า URL ของ Webhook เป็น endpoint ของ Gateway ของคุณ (ต้องใช้ HTTPS):
channels.line.webhookPath หรือ
channels.line.accounts.<id>.webhookPath แล้วอัปเดต URL ให้ตรงกัน
หมายเหตุด้านความปลอดภัย:
- การตรวจสอบ signature ของ LINE ขึ้นอยู่กับ body (HMAC บน raw body) ดังนั้น OpenClaw จึงใช้ขีดจำกัด body ก่อนการยืนยันตัวตนและ timeout แบบเข้มงวดก่อนการตรวจสอบ
- OpenClaw ประมวลผลเหตุการณ์ Webhook จากไบต์คำขอ raw ที่ผ่านการตรวจสอบแล้ว ค่า
req.bodyที่ถูก middleware ต้นทางแปลงจะถูกละเว้นเพื่อความปลอดภัยของความสมบูรณ์ของ signature
กำหนดค่า
การกำหนดค่าขั้นต่ำ:LINE_CHANNEL_ACCESS_TOKENLINE_CHANNEL_SECRET
tokenFile และ secretFile ต้องชี้ไปยังไฟล์ปกติ ไม่ยอมรับ symlinks
หลายบัญชี:
การควบคุมการเข้าถึง
ข้อความส่วนตัวมีค่าเริ่มต้นเป็นการจับคู่ ผู้ส่งที่ไม่รู้จักจะได้รับรหัสจับคู่ และ ข้อความของพวกเขาจะถูกละเว้นจนกว่าจะได้รับการอนุมัติchannels.line.dmPolicy:pairing | allowlist | open | disabledchannels.line.allowFrom: LINE user IDs ที่อยู่ใน allowlist สำหรับ DMs;dmPolicy: "open"ต้องใช้["*"]channels.line.groupPolicy:allowlist | open | disabledchannels.line.groupAllowFrom: LINE user IDs ที่อยู่ใน allowlist สำหรับกลุ่ม- การ override รายกลุ่ม:
channels.line.groups.<groupId>.allowFrom - กลุ่มการเข้าถึงผู้ส่งแบบ static สามารถอ้างอิงได้จาก
allowFrom,groupAllowFromและallowFromรายกลุ่มด้วยaccessGroup:<name> - หมายเหตุ runtime: หาก
channels.lineหายไปทั้งหมด runtime จะ fallback เป็นgroupPolicy="allowlist"สำหรับการตรวจสอบกลุ่ม (แม้จะตั้งค่าchannels.defaults.groupPolicyไว้ก็ตาม)
- ผู้ใช้:
U+ อักขระ hex 32 ตัว - กลุ่ม:
C+ อักขระ hex 32 ตัว - ห้อง:
R+ อักขระ hex 32 ตัว
พฤติกรรมของข้อความ
- ข้อความจะถูกแบ่งเป็นช่วงละ 5000 อักขระ
- การจัดรูปแบบ Markdown จะถูกลบออก; code blocks และตารางจะถูกแปลงเป็นการ์ด Flex เมื่อทำได้
- การตอบกลับแบบ streaming จะถูก buffer; LINE จะได้รับ chunk แบบเต็มพร้อมแอนิเมชัน loading ขณะที่ agent ทำงาน
- การดาวน์โหลดสื่อถูกจำกัดโดย
channels.line.mediaMaxMb(ค่าเริ่มต้น 10) - สื่อขาเข้าจะถูกบันทึกไว้ใต้
~/.openclaw/media/inbound/ก่อนส่งต่อ ไปยัง agent ให้ตรงกับ media store ร่วมที่ใช้โดย Plugin channel แบบ bundled อื่นๆ
ข้อมูล channel (ข้อความแบบ rich)
ใช้channelData.line เพื่อส่ง quick replies, ตำแหน่งที่ตั้ง, การ์ด Flex หรือข้อความ template
/card สำหรับ preset ข้อความ Flex:
การรองรับ ACP
LINE รองรับ binding การสนทนา ACP (Agent Communication Protocol):/acp spawn <agent> --bind hereผูกแชท LINE ปัจจุบันกับเซสชัน ACP โดยไม่สร้าง child thread- binding ACP ที่กำหนดค่าไว้และเซสชัน ACP ที่ผูกกับการสนทนาที่ active ทำงานบน LINE ได้เหมือน channel การสนทนาอื่นๆ
สื่อขาออก
Plugin ของ LINE รองรับการส่งไฟล์รูปภาพ วิดีโอ และเสียงผ่านเครื่องมือข้อความของ agent สื่อจะถูกส่งผ่าน path การส่งเฉพาะของ LINE พร้อมการจัดการ preview และ tracking ที่เหมาะสม:- รูปภาพ: ส่งเป็นข้อความรูปภาพ LINE พร้อมการสร้าง preview อัตโนมัติ
- วิดีโอ: ส่งพร้อมการจัดการ preview และ content-type แบบชัดเจน
- เสียง: ส่งเป็นข้อความเสียง LINE
การแก้ไขปัญหา
- การตรวจสอบ Webhook ล้มเหลว: ตรวจสอบให้แน่ใจว่า URL ของ Webhook เป็น HTTPS และ
channelSecretตรงกับ LINE console - ไม่มีเหตุการณ์ขาเข้า: ยืนยันว่า path ของ Webhook ตรงกับ
channels.line.webhookPathและ Gateway สามารถเข้าถึงได้จาก LINE - ข้อผิดพลาดในการดาวน์โหลดสื่อ: เพิ่ม
channels.line.mediaMaxMbหากสื่อเกิน ขีดจำกัดเริ่มต้น
ที่เกี่ยวข้อง
- ภาพรวม Channels — channel ทั้งหมดที่รองรับ
- การจับคู่ — การยืนยันตัวตน DM และขั้นตอนการจับคู่
- กลุ่ม — พฤติกรรมแชทกลุ่มและการควบคุมด้วยการ mention
- การกำหนดเส้นทาง Channel — การกำหนดเส้นทาง session สำหรับข้อความ
- ความปลอดภัย — โมเดลการเข้าถึงและการ hardening