OpenClaw

OpenClaw Zalo Personal 頻道

即時通訊
中等

使用非官方 zca-cli 工具將 OpenClaw 連接到你的 Zalo 個人帳號。與 Zalo Bot Platform 整合不同,此頻道讓你的 AI 助手透過真實的 Zalo 個人帳號運作——支援群組聊天、媒體和好友列表。透過掃描 QR Code 進行身份驗證,就像關聯新裝置一樣簡單。

快速資訊
難度中等
分類即時通訊
支援功能數3 / 6

Zalo Personal 支援功能

文字訊息

支援

媒體與檔案

支援

表情回應

不支援

討論串

不支援

語音訊息

不支援

群組聊天

支援

Zalo Personal 前置條件

  • 一個 Zalo 個人帳號(標準帳號,非 Official Account)
  • 已安裝 zca 二進位檔案並可在系統 PATH 中存取
  • OpenClaw Gateway 已執行並設定完成
  • Zalo 手機應用程式用於登入時掃描 QR Code

Zalo Personal 快速設定

1

安裝 zalouser 外掛和 zca-cli

使用 'openclaw plugins install @openclaw/zalouser' 安裝 OpenClaw 外掛。然後安裝 zca-cli 工具並確保它在 PATH 中。透過 'zca --version' 驗證安裝。

2

透過 QR Code 登入

執行 'openclaw channels login --channel zalouser' 在終端機顯示 QR Code。開啟手機上的 Zalo 應用程式,掃描 QR Code 完成身份驗證。

3

設定並開始聊天

將 zalouser 頻道設定新增到 ~/.openclaw/openclaw.json,設定你偏好的 dmPolicy 和 groupPolicy。使用 'openclaw start' 啟動 Gateway,然後向你的 Zalo 帳號傳送訊息進行測試。

Zalo Personal 設定範例

config.json
{
  "channels": {
    "zalouser": {
      "enabled": true,
      "dmPolicy": "pairing",
      "groupPolicy": "open"
    }
  }
}

Zalo Personal 深入了解

架構概覽

OpenClaw 透過 zca-cli 工具連接到 Zalo——這是一個用於 Zalo 個人帳號的非官方命令列客戶端。與 Zalo Bot Platform 整合(使用 HTTP API)不同,此頻道使用 zca 二進位檔案監聽入站訊息並傳送出站回覆。 Gateway 在背景執行 'zca listen' 程序即時接收訊息,並使用 'zca msg' 傳送回覆。這種方式完全在本機執行——無需公網 URL、Webhook 或 HTTPS 憑證。 因為使用的是個人帳號,Bot 可以參與群組聊天、存取好友列表、傳送媒體——這些功能在官方 Bot Platform 上不可用。
這是一個非官方整合。使用它可能導致 Zalo 暫停或封禁帳號。建議使用專用帳號而非主要個人帳號。
zca-cli 工具處理協定層。請保持更新以維持與 Zalo 服務的相容性。
這是一個使用非官方工具的實驗性整合。Zalo 可能會暫停或封禁使用第三方自動化的帳號。使用風險自負。

安裝 zca-cli

zca-cli 二進位檔案是此頻道的前置相依。它必須安裝並在系統 PATH 中可存取,Gateway 才能使用 Zalo Personal 頻道。 安裝後,在終端機執行 'zca --version' 驗證是否正常運作。如果命令未找到,請檢查 PATH 設定或重新安裝。
terminal
zca --version
如果 zca 已安裝但不在 PATH 中,可以在 shell 設定檔(~/.bashrc、~/.zshrc 等)中將其目錄新增到 PATH。

QR Code 身份驗證

身份驗證透過用 Zalo 手機應用程式掃描 QR Code 完成——類似於關聯新裝置。無需 API Token 或 Bot Token。 執行登入命令在終端機顯示 QR Code。開啟手機上的 Zalo,導航到 QR Code 掃描器,掃描 QR Code。工作階段將建立並在本機儲存憑證。 如果登入在重新啟動後不持久,嘗試先登出再重新登入以重新整理工作階段。
terminal
# 登入
openclaw channels login --channel zalouser

# 如果登入不持久,重新驗證
openclaw channels logout --channel zalouser
openclaw channels login --channel zalouser
掃描 QR Code 時保持手機連網。工作階段透過 Zalo 伺服器驗證。

私訊策略

私訊策略控制誰可以透過私訊與你的 AI 助手互動。OpenClaw 支援四種策略: • pairing(預設)— 新聯絡人首次傳送訊息時收到配對碼。透過 'openclaw pairing approve zalouser <code>' 核准。配對碼在 1 小時後過期。 • allowlist — 只有 allowFrom 清單中的使用者 ID 或名稱可以與 Bot 互動。名稱透過 'zca friend find' 解析為 ID。 • open — 任何向該帳號傳送訊息的人都會收到回覆。 • disabled — 完全關閉私訊處理。
openclaw.json
{
  "channels": {
    "zalouser": {
      "dmPolicy": "allowlist",
      "allowFrom": ["123456789", "好友名稱"]
    }
  }
}
'open' 策略允許任何人與你的個人帳號互動。由於這是一個對你的聯絡人可見的真實 Zalo 帳號,請謹慎使用。

群組聊天管理

與 Zalo Bot Platform 整合不同,Zalo Personal 完全支援群組聊天。預設情況下,groupPolicy 設定為 'open',意味著 Bot 會在所有群組聊天中回應。 你可以使用 'allowlist' 策略配合 groups 對應來限制群組存取。群組可以透過數字 ID 或名稱參照。 將 groupPolicy 設為 'disabled' 可完全忽略所有群組訊息。
openclaw.json
{
  "channels": {
    "zalouser": {
      "groupPolicy": "allowlist",
      "groups": {
        "123456789": { "allow": true },
        "工作群": { "allow": true }
      }
    }
  }
}
使用 'openclaw directory groups list --channel zalouser --query "名稱"' 尋找群組 ID 和名稱。
群組名稱區分大小寫。請使用 Zalo 應用程式中顯示的準確名稱。

訊息處理

OpenClaw 支援透過 Zalo Personal 傳送文字訊息、圖片、檔案和連結。文字訊息會在約 2,000 個字元處自動分段,以符合 Zalo 客戶端限制。 來自聯絡人和群組的入站訊息透過 'zca listen' 程序接收並轉發給 AI。出站回覆使用 'zca msg' 傳送。 由於字元限制,串流回應預設被阻止。
較長的 AI 回覆會自動在約 2,000 字元邊界處拆分為多條訊息。
媒體傳送能力取決於已安裝的 zca-cli 版本。請保持更新以獲得最佳相容性。

多帳號設定

OpenClaw 支援同時執行多個 Zalo 個人帳號,透過對應到不同的 zca 設定檔實現。每個帳號有自己的設定檔名稱、私訊策略和群組設定。 如果你想為不同用途執行獨立的 AI 助手(例如工作帳號和個人帳號),這非常實用。
openclaw.json
{
  "channels": {
    "zalouser": {
      "enabled": true,
      "defaultAccount": "default",
      "accounts": {
        "work": {
          "enabled": true,
          "profile": "work"
        },
        "personal": {
          "enabled": true,
          "profile": "personal"
        }
      }
    }
  }
}

通訊錄與探索

Zalo Personal 頻道提供通訊錄命令,用於探索帳號上的好友和群組。這些命令對於尋找使用者 ID(用於白名單)或群組 ID(用於群組策略)非常實用。 你可以檢視自己的資料、按名稱搜尋好友、按名稱搜尋群組——全部透過命令列完成。
terminal
# 檢視你的資料
openclaw directory self --channel zalouser

# 搜尋好友
openclaw directory peers list --channel zalouser --query "名稱"

# 搜尋群組
openclaw directory groups list --channel zalouser --query "工作"

Zalo Personal 設定參考

enabled
Type: booleanDefault: false

啟用或停用 Zalo Personal 頻道

dmPolicy
Type: stringDefault: "pairing"

控制誰可以私訊 Bot。選項:pairing、allowlist、open、disabled

allowFrom
Type: string[]Default: []

允許與 Bot 互動的使用者 ID 或名稱清單(當 dmPolicy 為 allowlist 時使用)

groupPolicy
Type: stringDefault: "open"

控制群組聊天行為。選項:open、allowlist、disabled

groups
Type: objectDefault: {}

群組 ID 或名稱到權限物件的對應(當 groupPolicy 為 allowlist 時使用)

defaultAccount
Type: stringDefault: "default"

預設使用的 zca 設定檔名稱

accounts.<id>.enabled
Type: booleanDefault: true

在多帳號模式下啟用或停用特定帳號

accounts.<id>.profile
Type: stringDefault: ""

特定帳號的 zca 設定檔名稱

Zalo Personal 常見問題

Zalo Personal 故障排除

找不到 zca 命令

zca-cli 二進位檔案未安裝或不在系統 PATH 中。

安裝 zca-cli 並確保它在 PATH 中。透過 'zca --version' 驗證。如果已安裝但找不到,將安裝目錄新增到 ~/.bashrc 或 ~/.zshrc 的 PATH 中。
QR Code 登入失敗或工作階段不持久

Zalo 工作階段可能已過期或初始認證未完成。

嘗試先登出再重新登入:'openclaw channels logout --channel zalouser' 然後 'openclaw channels login --channel zalouser'。確保掃描 QR Code 時手機網路連線穩定。
Bot 不回應群組訊息

groupPolicy 可能設定為 'disabled' 或 'allowlist' 但該群組未列入。

檢查 groupPolicy 設定。如果使用 'allowlist',確保群組 ID 或名稱已在 groups 設定中列出。使用 'openclaw directory groups list --channel zalouser' 尋找正確的群組 ID。
收不到訊息

zca listen 程序可能未執行,或工作階段已過期。

執行 'openclaw channels status --probe' 診斷連線。如果工作階段已過期,透過 QR Code 重新登入。檢查 Gateway 日誌取得具體錯誤訊息。
帳號被暫停或封禁

Zalo 偵測到帳號上的非官方自動化行為。

這是使用非官方整合的已知風險。聯絡 Zalo 客服嘗試恢復帳號。考慮切換到官方 Zalo Bot Platform 整合(zalo 頻道),雖然不支援群組聊天,但沒有封禁風險。