Effortless event planning, right inside your Telegram groups.
Say goodbye to messy threads. Create, announce, and sync events with a conversational bot.
EventGram is an automated assistant designed to make group coordination frictionless. Whether you're managing a university club, a corporate team, or a local meetup, EventGram guides you through a step-by-step conversational flow to publish perfectly formatted event announcements.
- No Forms Required: Use a simple chat interface to input dates, locations, and details.
- Google Calendar Sync: Automatically generates "Add to Calendar" links for all attendees.
- Topic-Aware: Built specifically for modern Telegram Supergroups—send announcements to specific Topics to keep discussions organized.
- Database-Backed: All events are stored in MySQL for reliability and future retrieval.
- Anti-Error Logic: The bot validates dates and times in real-time, preventing "impossible" event scheduling.
| Feature | Description |
|---|---|
| Conversational UI | A stepwise flow that prevents information overload. |
| Dynamic Keyboards | Interactive buttons for selecting years, months, and times. |
| Confirmation Stage | Review a full preview of your announcement before it goes live. |
| Supergroup Topics | Direct your event posts to the specific thread where they belong. |
| Hybrid Support | Handles both Online (Links) and In-Person (Locations) events. |
| Automated Reminders | Structured messages with one-click Google Calendar integration. |
graph TD
A[User: /start] --> B(Conversational Input)
B --> B1[Presenter & Title]
B1 --> B2[Date & Time Selection]
B2 --> B3[Type: Online / In-Person]
B3 --> B4[Target Group Topic]
B4 --> C{Review Preview}
C -->|Edit| B
C -->|Confirm| D[MySQL: Store Event]
D --> E[Post to Group Topic]
E --> F[Generate Google Calendar Link]
style B fill:#f9f,stroke:#333
style E fill:#00d2ff,stroke:#333
style F fill:#00d2ff,stroke:#333
- Engine: PHP 8.x (Modular, Function-based design)
- Database: MySQL (Structured with prepared statements for security)
- Interface: Telegram Bot API (Webhooks)
- Logic: Native PHP
DateTimehandling for timezone-aware scheduling.
-
Bot Creation:
- Message @BotFather on Telegram to create your bot and get an API Token.
-
Server Setup:
- Upload
eventgram.phpto your SSL-enabled web server. - Update the configuration constants at the top of the file:
define('BOT_TOKEN', 'YOUR_TOKEN_HERE'); define('DB_HOST', 'localhost'); define('DB_NAME', 'eventgram_db'); // ... etc
- Upload
-
Database Configuration:
- Import the provided schema into your MySQL instance.
-
Set Webhook:
- Point Telegram to your script:
https://api.telegram.org/bot<YOUR_TOKEN>/setWebhook?url=https://yourserver.com/eventgram.php
- Point Telegram to your script:
- Study Groups: Coordinate weekly review sessions.
- Gaming Communities: Schedule raids or tournament brackets.
- Corporate Teams: Announce stand-ups or coffee breaks in specific Slack-like Topics.
- Clubs/Societies: Manage guest speaker appearances and RSVP tracking.
The modular design allows you to easily add:
- RSVP Tracking: Add a button for "I'm Attending" that updates the DB.
- Reminders: Create a cron job to ping the group 1 hour before the event.
- Multi-language Support: Wrap strings in a translation function.
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ for the Telegram Community.