007ASANA → TELEGRAMIntegration router
/
CORE STACKNext.js 14React 18FastAPISQLAlchemy 2SQLiteAsana APITelegram Bot APIDocker ComposeNginx● LIVE
007 / ASANA → TELEGRAM ROUTER
A
Asana → TelegramROUTER BY AI—VAI

События Asana —
сразу в нужный Telegram.

Routing layer между Asana и Telegram: проект определяет маршрут, фильтр решает что важно, бот доставляет событие в нужный чат.

per-project routes multi-bot event filters
ROUTER / DEMO WORKSPACE● CONNECTED
ASANA PROJECTS
EVENT FILTERS
Product WebsiteRoute #01#release-room
✓
Task completed · Prepare release notesTelegram · just now
01 / PRODUCT

Не один глобальный поток. Независимые маршруты для каждой команды.

Каждый маршрут хранит проект Asana, Telegram-бота, Chat ID, состояние активности и собственный набор event filters.

ROUTE BUILDER
ACTIVE

Синхронизация проектов

Проекты загружаются из Asana API и становятся источниками для новых маршрутов.

Несколько ботов

Разные Telegram-боты можно назначать командам, клиентам и релизным каналам.

Фильтры событий

Создание, комментарии, завершение, сроки и назначения включаются независимо.

Pause без удаления

Маршрут можно отключить и вернуть без повторной настройки webhook и Chat ID.

02 / EVENT ENGINE

Webhook приходит один раз. Дальше работает event engine.

Роутер нормализует webhook event, применяет policy конкретного маршрута и формирует Telegram-сообщение.

EVENT TRACEroute #01
01webhook acceptedpass
02signature verifiedpass
03active route loadedpass
04done filter = onpass
05message formattedpass
06delivered → #release-room200 OK
Telegram#release-room
✓Task completed · Prepare release notes

Product Website · Asana

just now · routed by AI—VAI
03 / ARCHITECTURE

Webhook-driven routing с явной границей ответственности.

Frontend управляет конфигурацией. FastAPI принимает webhook, проверяет подпись, читает route policy из storage и вызывает Telegram API.

01
ASANAproject events
02
WEBHOOKsignature verify
03
FASTAPIroute lookup
04
FILTERSevent policy
05
TELEGRAMbot delivery
Asana webhook handshake

Project webhook is created against the public callback URL and initialized with the Asana hook secret.

Signature verification

Inbound webhook requests are verified before any routing work is scheduled.

Background processing

Heavy project/task/story reads and Telegram delivery are moved to a FastAPI background task.

Route persistence

SQLAlchemy models persist projects, routes, bots, settings and webhook state in SQLite.

04 / ENGINEERING STACK

Полный стек продукта — от UI до webhook delivery.

01Next.js 14

admin workspace

02React 18

interactive UI

03Emotion + twin.macro

styling

04FastAPI

routing API

05Pydantic 2

schemas

06SQLAlchemy 2

persistence

07SQLite + aiosqlite

storage

08Asana API

projects + webhooks

09Telegram Bot API

delivery

10Docker Compose

deployment

11Nginx

reverse proxy

05 / SECURITY & DELIVERY

Webhook URL открыт миру. Логика обработки — нет.

Подпись Asana проверяется до обработки; admin API защищён отдельным токеном; payload ограничивается по размеру; секреты живут вне frontend.

Admin authhashed secret / token verify
Webhook authHMAC signature validation
Persistent dataSQLite volume / SQLAlchemy
DeploymentDocker Compose / Nginx
06 / PRODUCT PRINCIPLE

Telegram получает только то, на что нужно реагировать.

Asana остаётся источником истины. Router отвечает только за выбор события, маршрута и канала доставки.

OPEN ROUTER