Zalo 个人账号(非官方)
状态:实验性。本集成通过 zca-cli 自动化 Zalo 个人账号。
警告:此为非官方集成,可能导致账号封禁。使用风险自负。
需安装插件
Zalo 个人账号以插件形式提供,不随核心安装打包。
- CLI 安装:
moltbot plugins install @moltbot/zalouser - 或从源码检出:
moltbot plugins install ./extensions/zalouser - 详见 插件
前置:zca-cli
运行网关的机器必须在 PATH 中提供 zca 二进制。
- 验证:
zca --version - 若缺失,请安装 zca-cli(见
extensions/zalouser/README.md或上游 zca-cli 文档)。
快速设置(入门)
- 安装插件(见上)。
- 登录(在网关机器上扫码):
moltbot channels login --channel zalouser- 用 Zalo 手机应用扫描终端中的二维码。
- 启用频道:
{
channels: {
zalouser: {
enabled: true,
dmPolicy: "pairing"
}
}
}- 重启网关(或完成引导)。
- 私聊默认配对;首次联系时批准配对码。
说明
- 使用
zca listen接收入站消息。 - 使用
zca msg ...发送回复(文本/媒体/链接)。 - 面向 Zalo Bot API 不可用时的「个人账号」使用场景。
命名
频道 id 为 zalouser,以明确这是对 Zalo 个人用户账号 的自动化(非官方)。zalo 保留给未来可能的官方 Zalo API 集成。
查找 ID(目录)
使用目录 CLI 发现联系人/群组及其 ID:
moltbot directory self --channel zalouser
moltbot directory peers list --channel zalouser --query "name"
moltbot directory groups list --channel zalouser --query "work"限制
- 出站文本按约 2000 字符分块(Zalo 客户端限制)。
- 默认关闭流式。
访问控制(私聊)
channels.zalouser.dmPolicy 支持:pairing | allowlist | open | disabled(默认 pairing)。channels.zalouser.allowFrom 接受用户 ID 或名称。向导在可用时通过 zca friend find 将名称解析为 ID。批准方式:
moltbot pairing list zalousermoltbot pairing approve zalouser <code>
群组访问(可选)
- 默认:
channels.zalouser.groupPolicy = "open"(允许群组)。未设置时可用channels.defaults.groupPolicy覆盖默认。 - 限制为白名单:
channels.zalouser.groupPolicy = "allowlist"channels.zalouser.groups(键为群组 ID 或名称)
- 禁止所有群组:
channels.zalouser.groupPolicy = "disabled"。 - 配置向导可提示群组白名单。
- 启动时 Moltbot 将白名单中的群组/用户名称解析为 ID 并记录映射;无法解析的条目保持原样。
示例:
{
channels: {
zalouser: {
groupPolicy: "allowlist",
groups: {
"123456789": { allow: true },
"Work Chat": { allow: true }
}
}
}
}多账号
账号对应 zca 的 profile。示例:
{
channels: {
zalouser: {
enabled: true,
defaultAccount: "default",
accounts: {
work: { enabled: true, profile: "work" }
}
}
}
}故障排查
找不到 zca:
- 安装 zca-cli 并确保网关进程的
PATH中有该命令。
登录不持久:
moltbot channels status --probe- 重新登录:
moltbot channels logout --channel zalouser && moltbot channels login --channel zalouser
最后更新于: