Zalo Personal (неофициально)¶
Статус: экспериментально. Эта интеграция автоматизирует личный аккаунт Zalo через zca-cli.
Предупреждение: Это неофициальная интеграция и она может привести к приостановке или бану аккаунта. Используйте на свой риск.
Требуется плагин¶
Zalo Personal поставляется как плагин и не входит в состав базовой установки.
- Установка через CLI:
openclaw plugins install @openclaw/zalouser - Или из исходного репозитория:
openclaw plugins install ./extensions/zalouser - Подробности: Plugins
Предварительное требование: zca-cli¶
На машине Gateway должен быть доступен бинарный файл zca в PATH.
- Проверка:
zca --version - Если отсутствует, установите zca-cli (см.
extensions/zalouser/README.mdили документацию upstream zca-cli).
Быстрая настройка (для начинающих)¶
- Установите плагин (см. выше).
- Войдите (QR, на машине Gateway):
-
openclaw channels login --channel zalouser- Отсканируйте QR-код в терминале с помощью мобильного приложения Zalo. - Включите канал:
{
channels: {
zalouser: {
enabled: true,
dmPolicy: "pairing",
},
},
}
- Перезапустите Gateway (или завершите онбординг).
- Доступ к личным сообщениям по умолчанию основан на сопряжении; подтвердите код сопряжения при первом контакте.
Что это такое¶
- Использует
zca listenдля получения входящих сообщений. - Использует
zca msg ...для отправки ответов (текст/медиа/ссылки). - Предназначено для сценариев «личного аккаунта», где API Zalo Bot недоступен.
Именование¶
Идентификатор канала — zalouser, чтобы явно указать, что автоматизируется личный пользовательский аккаунт Zalo (неофициально). Мы сохраняем zalo зарезервированным для возможной будущей официальной интеграции с API Zalo.
Поиск ID (каталог)¶
Используйте CLI каталога, чтобы обнаруживать контакты/группы и их ID:
openclaw directory self --channel zalouser
openclaw directory peers list --channel zalouser --query "name"
openclaw directory groups list --channel zalouser --query "work"
Ограничения¶
- Исходящий текст разбивается на фрагменты примерно по 2000 символов (ограничения клиента Zalo).
- Потоковая передача по умолчанию заблокирована.
Контроль доступа (личные сообщения)¶
channels.zalouser.dmPolicy поддерживает: pairing | allowlist | open | disabled (по умолчанию: pairing).
channels.zalouser.allowFrom принимает ID пользователей или имена. Мастер настраивания сопоставляет имена с ID через zca friend find, если доступно.
Подтверждение через:
openclaw pairing list zalouseropenclaw pairing approve zalouser <code>
Доступ к группам (необязательно)¶
- По умолчанию:
channels.zalouser.groupPolicy = "open"(группы разрешены). Используйтеchannels.defaults.groupPolicy, чтобы переопределить значение по умолчанию, если параметр не задан. - Ограничение по списку разрешённых:
channels.zalouser.groupPolicy = "allowlist"channels.zalouser.groups(ключи — ID групп или имена)- Блокировать все группы:
channels.zalouser.groupPolicy = "disabled". - Мастер конфигурации может запросить списки разрешённых групп.
- При запуске OpenClaw сопоставляет имена групп/пользователей в списках разрешённых с ID и журналирует соответствие; неразрешённые элементы сохраняются как введены.
Пример:
{
channels: {
zalouser: {
groupPolicy: "allowlist",
groups: {
"123456789": { allow: true },
"Work Chat": { allow: true },
},
},
},
}
Мультиаккаунт¶
Аккаунты сопоставляются с профилями zca. Пример:
{
channels: {
zalouser: {
enabled: true,
defaultAccount: "default",
accounts: {
work: { enabled: true, profile: "work" },
},
},
},
}
Устранение неполадок¶
zca не найден:
- Установите zca-cli и убедитесь, что он доступен в
PATHдля процесса Gateway.
Вход не сохраняется:
openclaw channels status --probe- Повторный вход:
openclaw channels logout --channel zalouser && openclaw channels login --channel zalouser