Skip to Content
Руководство для пользователейВозможностиКаналыWeCom (Enterprise WeChat)

WeCom (Enterprise WeChat)

В этом руководстве описывается настройка Qwen Code для работы с интеллектуальным роботом WeCom (企业微信智能机器人).

Необходимые условия

  • Аккаунт организации WeCom
  • Интеллектуальный робот WeCom, созданный в режиме API
  • Bot ID и Secret робота

Создание робота

  1. Откройте консоль администратора WeCom и создайте интеллектуального робота.

  1. Выберите режим API.

  1. Скопируйте Bot ID и Secret.
  2. Добавьте робота в личные чаты или группы, где он должен быть доступен.

Интеллектуальный робот использует 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" } } }

Задайте учетные данные через переменные окружения:

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", "pairing" или "open". При "pairing" первое упоминание в группе создает запрос на сопряжение, который должен быть одобрен один раз перед началом ответов. Обратите внимание, что при groupPolicy: "pairing" доступ предоставляется для всей группы: после одобрения группы любой участник этой группы может использовать бота; senderPolicy и allowedUsers не фильтруют участников одобренной группы. WeCom доставляет только сообщения групп, в которых упоминается интеллектуальный робот, поэтому каждый доставленный callback группы считается содержащим упоминание. Настройка requireMention не может включить ответы на сообщения группы без упоминания, потому что такие сообщения не доставляются боту.

Совместимость упоминаний в группах

В более ранних версиях Qwen Code также применялся универсальный гейт requireMention после доставки callback группы WeCom. Поскольку callback не включает отдельные метаданные упоминания, requireMention: true — включая значение по умолчанию — мог отклонять каждое доставленное сообщение группы, из-за чего групповой чат казался неработающим.

Теперь Qwen Code полагается на доставку с учётом упоминаний на стороне WeCom и не принимает второе решение об упоминании. Существующие конфигурации WeCom, содержащие либо requireMention: true, либо requireMention: false, остаются валидными и не вызывают ошибок конфигурации. Оба значения имеют одинаковое поведение для WeCom, поэтому поле можно удалить. Другие настройки в той же записи группы, такие как dispatchMode, продолжают применяться. groupHistoryLimit по-прежнему принимается, но не может собирать новую историю WeCom, потому что сообщения группы без упоминания не доставляются.

Изображения и файлы

Пользователи могут отправлять текст, голосовые сообщения с транскрибацией, изображения, комбинированные сообщения (текст и изображения), файлы и видео. Изображения передаются агенту как вложения. Файлы и видео загружаются во временные локальные пути, чтобы агент мог прочитать их с помощью файловых инструментов.

Ответы ассистента отправляются в формате WeCom markdown. Чтобы отправить локальное изображение, сгенерированное агентом, добавьте один маркер вне блоков кода:

[IMAGE: /absolute/path/to/image.png]

В целях безопасности пути к локальным изображениям должны находиться внутри каталога файлов канала в системном временном каталоге, например, /tmp/channel-files/... в Linux. Маркеры загрузки обычных файлов, видео и голосовых сообщений игнорируются, так как в противном случае сгенерированные моделью пути к файлам могли бы привести к загрузке произвольных файлов из рабочей директории.

Устранение неполадок

Бот не подключается

  • Проверьте Bot ID и Secret.
  • Убедитесь, что робот создан в режиме API.
  • Убедитесь, что переменные окружения доступны в оболочке, где выполняется qwen channel start.

Бот не отвечает в группах

  • Проверьте groupPolicy.
  • Упоминайте бота в группе.
  • Убедитесь, что робот добавлен в группу.

Учетные данные self-built приложения не работают

Этот канал предназначен для интеллектуальных роботов WeCom. Учетные данные callback для self-built приложений, такие как Corp ID, Agent ID, Token и EncodingAESKey, не используются этим каналом.

Last updated on