← All work
Automation / Integration platform

Support Integration Platform

Telegram, Bitrix24 and IntraDesk operate as one support workflow, without manually copying requests, files or statuses.

01Channel event02Webhook03Ticket sync04Reply + status

Context

Managers, users and engineers work in different systems. Without an integration layer, requests and comments are copied manually, while statuses and attachments can get lost between Telegram, CRM and the service desk.

How it works

Designed two bidirectional integration loops. The Telegram bot creates and maintains IntraDesk tickets, transferring files, voice messages, statuses and ratings. The Bitrix24 integration creates tickets from tasks, synchronizes comments and attachments, and closes the related task after resolution. Webhook receivers, background pollers and local state are separated by responsibility.

What it enables

One operational workflow connects three working channels from request creation to engineer response and task closure. Event deduplication, anti-echo logic, retryable delivery and link recovery protect synchronization from loops and temporary failures.

Key engineering decisions

Two independent synchronization loops

Telegram uses two Docker containers with shared SQLite state; Bitrix24 separates the Gunicorn webhook receiver from a dedicated poller, preventing background jobs from duplicating across web workers.

Loop and duplicate protection

Payload hashes, processed-event records and an anti-echo cache prevent a comment from circulating indefinitely between systems. Private service-desk comments are never sent to the client.

Confirmed delivery

An event is marked delivered only after a successful send. Ticket links and closure state persist, allowing temporary failures to be retried without creating duplicates.

PythonFastAPIFlaskTelegram Bot APIBitrix24 APIIntraDesk APISQLiteDocker
Discuss a similar project Читать по-русски