Skip to content
Olimjon Akhmadjonov
All work

Case study

Cinema presale alert bot

A public Telegram bot that watches cinema schedules and notifies subscribers the moment presales open or new showtimes appear for the films they follow.

Client
Public Telegram service
Role
Author
Timeline
2026 · public
Stack
PythonaiogramasyncioSQLiteDocker

Problem

Tickets for premieres sell out within hours, and cinemas do not notify anyone when presales open.

Approach & architecture

  • A provider interface hides each cinema's API behind normalised films and sessions, so adding a cinema chain means writing an adapter, not rewriting the bot.
  • A monitor compares session sets every five minutes; the new state is saved only after at least one subscriber has actually been notified, so a failure never swallows an alert.
  • A newly added cinema is adopted silently on its first cycle, so users are not flooded with existing films announced as new.

Result

Users follow a film or all presales, in Uzbek or Russian, with a one-tap unsubscribe on every alert.

What made it robust

  • Alerts are batched per user to stay within Telegram limits; partial sweeps are treated as failures; health alerts fire when a source goes down.
  • Runs as a non-root container.

Have a similar problem?

Tell me about it — I'll reply with an honest view of scope, approach and what a first milestone could look like.

Start a project

Tell me about it — a few sentences is enough.

I reply within 1–2 business days. Prefer email? oakhmadjonov.uz@gmail.com