Telegram bridge for n8n - captures messages and forwards them to webhooks.
TelegramNode - это Node.js приложение, которое служит мостом между Telegram и n8n. Основная задача проекта - перехват всех входящих сообщений пользователя Telegram и отправка их на вебхуки n8n. Приложение особенно полезно для работы с защищенными каналами, где требуется скачивание медиафайлов.
- Перехват всех входящих сообщений Telegram
- Автоматическое скачивание защищенных фото и голосовых сообщений
- Отправка сообщений и медиафайлов на вебхуки n8n
- Поддержка альбомов (группированных сообщений)
- HTTP API для пересылки сообщений между каналами
- Graceful fallback на тестовый вебхук при недоступности основного
📖 Подробная инструкция по установке: см. файл INSTALL.md
git clone https://github.com/oiv-an/TelegramNode.git
cd TelegramNode
npm install
cp .env.example .env
# Отредактируйте .env с вашими данными
npm start- Node.js версии 18 или выше
- npm (входит в состав Node.js)
- Telegram API credentials (API ID и API Hash от https://my.telegram.org/)
- Аккаунт Telegram для получения кодов подтверждения
Скопируйте файл .env.example в .env и заполните его своими данными:
cp .env.example .envОбязательные переменные:
TELEGRAM_API_ID- API ID от TelegramTELEGRAM_API_HASH- API Hash от TelegramTELEGRAM_PHONE_NUMBER- Ваш номер телефонаAPI_SECRET- Секретный ключ для API
npm startПри первом запуске потребуется ввести код подтверждения из Telegram.
Проверка состояния приложения.
Пересылка сообщений между каналами.
Требуется заголовок x-api-key со значением из переменной API_SECRET.
Тело запроса:
{
"fromChatId": "source_channel_id",
"messageIds": [123, 456],
"toChatId": "destination_channel_id"
}index.js- Основной файл приложения.env.example- Пример конфигурацииpackage.json- Метаданные проекта и зависимости
- Node.js 18+
- Аккаунт Telegram с полученными API credentials
MIT License - см. файл LICENSE
Ivan Olyanskiy
- GitHub: oiv-an
Этот проект лицензирован под MIT License - см. файл LICENSE для деталей.
Добро пожаловать для внесения вклада! Пожалуйста, создайте Issue для обсуждения изменений или отправьте Pull Request.
Если у вас есть вопросы или проблемы, пожалуйста, создайте Issue в репозитории: https://github.com/oiv-an/TelegramNode/issues