Support Integration Platform
Telegram, Bitrix24 and IntraDesk operate as one support workflow, without manually copying requests, files or statuses.
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.