
SeatSniper
We watch. You win. — BookMyShow alerts on Discord the second bookings go live.
Project Overview
SeatSniper is a Discord bot that watches BookMyShow for you. Give it a movie, a city, and optionally a theatre or screen format, and it polls on an interval and pings you the moment something changes: bookings opening for a film that wasn't bookable yet, a new date appearing (Friday releases, late Saturday drops), or a new show being added (that 9:30 PM IMAX that wasn't there this morning).
Under the hood every ticketing provider returns the same normalised Show[], so the core never knows BookMyShow exists — a second site is a new folder, not a rewrite. Change detection is snapshot diffing: the last-seen shows are stored per watch, compared on each poll, and turned into typed AlertEvents that each channel (Discord today, Telegram or email later) renders its own way.
Built on Bun and TypeScript with discord.js v14 and the built-in bun:sqlite for storage, it runs on an Oracle VPS under pm2. Unlike earlier BookMyShow scrapers, an unparseable response (403, CAPTCHA, region block) is treated as an error rather than a silent “not open yet”, so a broken watch fails fast instead of never firing.
Project Details
Client
Self-initiated project
Year
2026
Role
Bot Developer
Duration
Ongoing (Pre-MVP)
Technologies
Next Project
Sora
Discord Bot Development
View Project