n8n-nodes-vk-teams
v0.1.2
Published
n8n community nodes for VK Teams bots
Maintainers
Readme
n8n-nodes-vk-teams
n8n-nodes-vk-teams — community node package для n8n, который подключает ботов VK Teams / VK WorkSpace через Bot API.
Пакет добавляет два узла:
| Узел | Для чего нужен |
| --- | --- |
| VK Teams Trigger | Запускает workflow по входящим событиям бота |
| VK Teams | Отправляет сообщения и выполняет Bot API операции |
Возможности
VK Teams Trigger
Поддерживаемые события:
messageeditedMessagedeletedMessagecallbackQuery
Что доступно:
- long polling входящих событий
- фильтр по типу события
- фильтр по
chatId - фильтр по
userId - загрузка файлов из входящих событий в binary output
VK Teams
Поддерживаемые операции:
bot.getSelfmessage.sendTextmessage.sendFilemessage.sendVoicemessage.editTextmessage.deleteMessagescallback.answerCallbackQuerychat.getInfofile.getInfofile.download
Установка
Для self-hosted n8n:
npm install n8n-nodes-vk-teamsПосле установки перезапустите n8n.
Для локальной установки из репозитория:
cd /path/to/n8n-nodes-vk-teams
npm install
npm run build
mkdir -p ~/.n8n/nodes
cd ~/.n8n/nodes
npm install /absolute/path/to/n8n-nodes-vk-teamsПосле этого также перезапустите n8n.
Credentials
Используется один тип credentials: VK Teams API.
Поля:
Bot Token— токен бота из MetabotBase URL— базовый адрес VK Teams API
Примеры Base URL:
https://api.internal.myteam.mail.ruhttps://teams.company.examplehttps://teams.company.example/bot/v1
Если указан только хост, пакет добавит /bot/v1. Если URL уже заканчивается на /bot/v1, путь не будет продублирован.
Быстрый старт
Получить входящее сообщение
- Добавьте
VK Teams Trigger. - Выберите событие
message. - Подключите credentials
VK Teams API. - Активируйте workflow.
- Напишите боту в VK Teams.
Для ограничения источников используйте поля:
Restrict To Chat IDs— один или несколькоchatIdчерез запятуюRestrict To User IDs— один или несколькоuserIdчерез запятую
Чтобы получать вложения как binary data, включите Download Files.
Отправить сообщение
- Добавьте
VK Teams. - Выберите
Resource→Message. - Выберите
Operation→Send Text. - Заполните
Chat IDиText. - Запустите workflow.
Для форматирования текста в Send Text и Edit Text выберите Parse Mode: HTML или MarkdownV2. Если форматирование не нужно, оставьте None.
Для inline-клавиатуры выберите Keyboard → Inline Keyboard, добавьте строки и кнопки через UI. Каждая кнопка содержит Text, Button Type (Callback Data или URL) и Style: base, primary, attention.
Когда выбран Button Type = Callback Data, показывается поле Callback Data. Когда выбран Button Type = URL, показывается поле URL.
Клавиатуры доступны в Send Text, Edit Text, Send File и Send Voice. Для Send File также можно указать Caption; Parse Mode применяется к тексту сообщения или подписи файла.
Работа с файлами
message.sendFile и message.sendVoice берут файл из binary input предыдущего узла. Укажите Input Binary Field, в котором лежит файл.
file.download сначала получает метаданные через file.getInfo, затем скачивает файл и возвращает JSON с метаданными вместе с binary output.
Схема API
OpenAPI-подобная схема поддерживаемого Bot API scope лежит в docs/vk-teams-bot-api.openapi.yaml. В ней зафиксированы методы, параметры, multipart upload, типы ответов, raw-типы событий и live-наблюдения по реальному VK Teams endpoint.
Ограничения
- Это интеграция для VK Teams / VK WorkSpace, не для
vk.com. - Входящие события работают через long polling, не через webhook.
VK Teams Triggerскачивает вложения только из верхнего уровняpayload.parts.message.sendFileиmessage.sendVoiceпока не переиспользуют существующийfileId.- Административные on-premise методы чатов не входят в текущую версию.
Разработка
npm install
npm test
npm run lint
npm run lint:types
npm run buildДля запуска локального n8n с hot reload:
npm run devДля проверки схемы на живом API без сохранения токена в репозитории:
VK_TEAMS_BASE_URL=https://api.example.com/bot/v1/ \
VK_TEAMS_BOT_TOKEN=... \
npm run lint:types:liveПроверочный workflow
В репозитории сохранён переносимый draft-workflow для регрессионной проверки ноды:
Краткий runbook по импорту, повторному запуску и пересинхронизации артефакта лежит в docs/workflows/README.md.
Лицензия
MIT
