OpenClaw LINE 頻道
透過官方 Messaging API 將 OpenClaw 連接到 LINE。此基於外掛的整合讓您的 AI 助手可以在 LINE 上收發訊息 — LINE 是日本、台灣、泰國和東南亞最受歡迎的通訊平台之一。OpenClaw 透過 Webhook 接收事件,並透過 Messaging API 回覆,支援豐富的訊息類型,包括 Flex Messages、範本訊息、快速回覆和媒體分享。
LINE 支援功能
文字訊息
支援
媒體與檔案
支援
表情回應
不支援
討論串
不支援
語音訊息
不支援
群組聊天
支援
LINE 前置條件
- LINE Developers 帳號(可在 developers.line.biz 免費註冊)
- 在 LINE Developers Console 中建立 Provider 和 Messaging API 頻道
- 從 Messaging API 頻道設定中取得 Channel access token 和 Channel secret
- OpenClaw Gateway 已執行,且可透過公開 HTTPS URL 存取(Webhook 所需)
- 已安裝 LINE 外掛:openclaw plugins install @openclaw/line
LINE 快速設定
建立 LINE Messaging API 頻道
登入 LINE Developers Console,建立 Provider(或選擇現有的),然後建立新的 Messaging API 頻道。記錄您的 Channel ID、Channel secret,並從頻道設定頁面核發 Channel access token。
安裝 LINE 外掛並新增設定
執行 'openclaw plugins install @openclaw/line' 以安裝 LINE 外掛。然後將 LINE 頻道設定新增到 ~/.openclaw/openclaw.json,填入您的 channelAccessToken 和 channelSecret。也可以使用環境變數 LINE_CHANNEL_ACCESS_TOKEN 和 LINE_CHANNEL_SECRET。
設定 Webhook URL
在 LINE Developers Console 中,導覽至頻道的 Messaging API 分頁。將 Webhook URL 設為 'https://<your-gateway-host>/line/webhook' 並啟用「Use webhook」。點選 Verify 確認端點可連線。在 LINE Official Account Manager 中停用自動回覆和問候訊息,以防止重複回覆。
傳送測試訊息
掃描機器人的 QR Code(可在 Console 中找到)將 LINE 機器人加為好友。向機器人傳送訊息。如果使用預設的 pairing 策略,請在終端機中透過 'openclaw pairing approve line <code>' 核准發送者。
LINE 設定範例
{
"channels": {
"line": {
"enabled": true,
"channelAccessToken": "YOUR_CHANNEL_ACCESS_TOKEN",
"channelSecret": "YOUR_CHANNEL_SECRET",
"dmPolicy": "pairing"
}
}
}LINE 深入了解
架構概述
LINE Developers Console 設定
{
"channels": {
"line": {
"channelAccessToken": "YOUR_TOKEN",
"channelSecret": "YOUR_SECRET"
}
}
}Channel Access Token
私訊策略
{
"channels": {
"line": {
"dmPolicy": "allowlist",
"allowFrom": ["U1234567890abcdef1234567890abcdef"]
}
}
}群組聊天管理
{
"channels": {
"line": {
"groupPolicy": "open",
"historyLimit": 50
}
}
}豐富訊息:Flex 與範本
媒體與附件
{
"channels": {
"line": {
"mediaMaxMb": 10
}
}
}Webhook 安全性
載入指示器與傳送
{
"channels": {
"line": {
"textChunkLimit": 5000,
"chunkMode": "newline"
}
}
}多帳號設定
{
"channels": {
"line": {
"accounts": {
"main": {
"channelAccessToken": "TOKEN_1",
"channelSecret": "SECRET_1",
"webhookPath": "/line/main/webhook"
},
"support": {
"channelAccessToken": "TOKEN_2",
"channelSecret": "SECRET_2",
"webhookPath": "/line/support/webhook"
}
}
}
}
}LINE 設定參考
| Key | Type | Default | Description |
|---|---|---|---|
| enabled | boolean | true | 啟用或停用 LINE 頻道 |
| channelAccessToken | string | "" | LINE Messaging API 的 Channel access token。也可使用 LINE_CHANNEL_ACCESS_TOKEN 環境變數 |
| channelSecret | string | "" | 用於 Webhook 簽名驗證的 LINE Channel secret。也可使用 LINE_CHANNEL_SECRET 環境變數 |
| tokenFile | string | "" | 包含 Channel access token 的檔案路徑(內嵌設定的替代方案) |
| secretFile | string | "" | 包含 Channel secret 的檔案路徑(內嵌設定的替代方案) |
| dmPolicy | string | "pairing" | 控制誰可以私訊機器人。選項:pairing、allowlist、open、disabled |
| allowFrom | string[] | [] | dmPolicy 為 allowlist 時允許向機器人發訊息的 LINE 使用者 ID(U + 32 hex) |
| dmHistoryLimit | number | 50 | 每個對話中作為 AI 上下文包含的最近私訊數量 |
| groupPolicy | string | "disabled" | 群組聊天策略。選項:disabled、allowlist、open |
| groupAllowFrom | string[] | [] | groupPolicy 為 allowlist 時允許在群組中觸發機器人的 LINE 使用者 ID |
| historyLimit | number | 50 | 作為 AI 上下文包含的最大群組訊息數。設為 0 可停用 |
| textChunkLimit | number | 5000 | 分段前每則外送訊息的最大字元數 |
| chunkMode | string | "length" | 文字分段模式。選項:length(硬性分割)、newline(段落感知) |
| mediaMaxMb | number | 10 | 最大入站媒體檔案大小(兆位元組) |
| webhookPath | string | "/line/webhook" | 此帳號的自訂 Webhook 路徑(適用於多帳號設定) |
| accounts.<id>.channelAccessToken | string | "" | 多帳號設定中每個帳號的 Channel access token |
| accounts.<id>.channelSecret | string | "" | 多帳號設定中每個帳號的 Channel secret |
| accounts.<id>.webhookPath | string | "/line/<id>/webhook" | 多帳號設定中每個帳號的 Webhook 路徑 |
| configWrites | boolean | true | 允許 /config 命令在執行時修改頻道設定 |
啟用或停用 LINE 頻道
LINE Messaging API 的 Channel access token。也可使用 LINE_CHANNEL_ACCESS_TOKEN 環境變數
用於 Webhook 簽名驗證的 LINE Channel secret。也可使用 LINE_CHANNEL_SECRET 環境變數
包含 Channel access token 的檔案路徑(內嵌設定的替代方案)
包含 Channel secret 的檔案路徑(內嵌設定的替代方案)
控制誰可以私訊機器人。選項:pairing、allowlist、open、disabled
dmPolicy 為 allowlist 時允許向機器人發訊息的 LINE 使用者 ID(U + 32 hex)
每個對話中作為 AI 上下文包含的最近私訊數量
群組聊天策略。選項:disabled、allowlist、open
groupPolicy 為 allowlist 時允許在群組中觸發機器人的 LINE 使用者 ID
作為 AI 上下文包含的最大群組訊息數。設為 0 可停用
分段前每則外送訊息的最大字元數
文字分段模式。選項:length(硬性分割)、newline(段落感知)
最大入站媒體檔案大小(兆位元組)
此帳號的自訂 Webhook 路徑(適用於多帳號設定)
多帳號設定中每個帳號的 Channel access token
多帳號設定中每個帳號的 Channel secret
多帳號設定中每個帳號的 Webhook 路徑
允許 /config 命令在執行時修改頻道設定
LINE 常見問題
LINE 故障排除
Gateway 無法從網際網路存取、URL 不正確,或 SSL 憑證問題。
Console 中未啟用 Webhook、自動回覆正在干擾,或發送者尚未透過 pairing 策略核准。
Channel access token 無效、已過期或已被撤銷。
LINE reply token 在 Webhook 事件傳送後 1 分鐘過期。如果 AI 處理時間較長,Token 會變為無效。
設定中的 channelSecret 與 LINE Developers Console 中的 Channel secret 不符,或反向代理正在修改請求主體。