Inspiration

Arriving to play squash at fully booked courts. Checking phone to see the cancellation message was buried under 100 ICG photos. Walking back in disappointment.

What it does

The IG Schedule Bot introduces a centralised, AI-powered scheduling system built directly into Telegram, where students already communicate. Instead of manually updating spreadsheets or sending repeated announcements, IG heads can simply type natural announcements like their respective IG group chats: “Art on Friday 730-930 at Seminar Room 2”. The bot uses Gemini API to parse this command, updates the SQLite database, and makes it instantly visible to everyone via a calendar interface.

Students can view all IG sessions in one place, filter by IG or day, receive up-to-date, reliable information without digging through chats.

How we built it

Programming Language: Python

Backend Frameworks: python-telegram-bot (v21+) for Telegram bot logic, Flask for the web-based calendar interface

Database: SQLite (lightweight, local-first storage)

Natural Language Parsing: OpenAI API or Google Gemini API for natural language parsing

Frontend: HTML, CSS, JavaScript (calendar UI)

Platform & Integration: Telegram Bot API for real-time messaging and interaction

Challenges we ran into

Humans don’t follow rigid formal structure, so using an AI to extract information was challenging and completely new to use. So was handling ambiguous inputs (missing dates, unclear venues, mixed formats) without breaking the system.

Accomplishments that we're proud of

Built a full end-to-end system, from Telegram input to AI parsing to a live calendar interface, the entire pipeline works cohesively. Also this is a use case of AI where it is not just a wrapper.

What we learned

Natural language is inherently ambiguous. Even simple inputs like “badminton tmr 6” require resolving missing dates, time formats, and context, which makes parsing far less straightforward than expected. LLMs are good at extraction, not correctness. The AI can reliably structure inputs, but it often makes implicit assumptions (e.g., guessing venues or dates), so a strict validation layer is necessary to enforce accuracy.

What's next for IGScheduleBot

Asking fellow IG heads to try it out. If successful, to get the whole residential college to use this to streamline their coordination between participants and heads.

Built With

Share this project:

Updates