WeCom (Enterprise WeChat)
В этом руководстве описывается настройка Qwen Code для работы с интеллектуальным роботом WeCom (企业微信智能机器人).
Необходимые условия
- Аккаунт организации WeCom
- Интеллектуальный робот WeCom, созданный в режиме API
- Bot ID и Secret робота
Создание робота
- Откройте консоль администратора WeCom и создайте интеллектуального робота.
- Выберите режим API.
- Скопируйте Bot ID и Secret.
- Добавьте робота в личные чаты или группы, где он должен быть доступен.
Интеллектуальный робот использует WebSocket-соединение от Qwen Code к WeCom. Публичный callback URL, Token, EncodingAESKey, Corp ID или Agent ID не требуются.
Конфигурация
Добавьте канал в ~/.qwen/settings.json:
{
"channels": {
"my-wecom": {
"type": "wecom",
"botId": "$WECOM_BOT_ID",
"secret": "$WECOM_SECRET",
"senderPolicy": "allowlist",
"allowedUsers": ["zhangsan"],
"sessionScope": "user",
"cwd": "/path/to/your/project",
"instructions": "You are a concise coding assistant responding via WeCom.",
"groupPolicy": "open",
"groups": {
"*": { "requireMention": true }
}
}
}
}Задайте учетные данные через переменные окружения:
export WECOM_BOT_ID=<your-bot-id>
export WECOM_SECRET=<your-secret>Или определите их в разделе env файла settings.json:
{
"env": {
"WECOM_BOT_ID": "your-bot-id",
"WECOM_SECRET": "your-secret"
}
}Запуск
qwen channel start my-wecomОткройте WeCom и отправьте сообщение интеллектуальному роботу.
Контроль доступа
Параметр senderPolicy работает так же, как и в других IM-каналах:
allowlist: только пользователи изallowedUsersмогут использовать бота. Это рекомендуемое значение по умолчанию для корпоративной среды.pairing: пользователи должны пройти сопряжение перед использованием бота.open: любой, кто может написать роботу, может его использовать.
Для групп установите для groupPolicy значение "allowlist" или "open". По умолчанию сообщения в группах требуют упоминания через "requireMention": true.
Если WeCom SDK включает явные метаданные упоминания, Qwen Code использует их для этой проверки. Если метаданные упоминания отсутствуют, канал обрабатывает доставленные сообщения группы как не содержащие упоминания. Устанавливайте "requireMention": false только в том случае, если вы хотите полагаться на фильтрацию доставки на стороне WeCom.
Изображения и файлы
Пользователи могут отправлять текст, голосовые сообщения с транскрибацией, изображения, комбинированные сообщения (текст и изображения), файлы и видео. Изображения передаются агенту как вложения. Файлы и видео загружаются во временные локальные пути, чтобы агент мог прочитать их с помощью файловых инструментов.
Ответы ассистента отправляются в формате WeCom markdown. Чтобы отправить локальное изображение, сгенерированное агентом, добавьте один маркер вне блоков кода:
[IMAGE: /absolute/path/to/image.png]В целях безопасности пути к локальным изображениям должны находиться внутри каталога файлов канала в системном временном каталоге, например, /tmp/channel-files/... в Linux. Маркеры загрузки обычных файлов, видео и голосовых сообщений игнорируются, так как в противном случае сгенерированные моделью пути к файлам могли бы привести к загрузке произвольных файлов из рабочей директории.
Устранение неполадок
Бот не подключается
- Проверьте Bot ID и Secret.
- Убедитесь, что робот создан в режиме API.
- Убедитесь, что переменные окружения доступны в оболочке, где выполняется
qwen channel start.
Бот не отвечает в группах
- Проверьте
groupPolicy. - Упоминайте бота, если в конфигурации группы не установлено
"requireMention": false. - Убедитесь, что робот добавлен в группу.
Учетные данные self-built приложения не работают
Этот канал предназначен для интеллектуальных роботов WeCom. Учетные данные callback для self-built приложений, такие как Corp ID, Agent ID, Token и EncodingAESKey, не используются этим каналом.