How zhaba1337228/max-university-event-bot works
This is a MAX university-events registration bot with a web administration console. Attendees browse events, complete a consent-and-details dialogue, confirm registration, and receive a short code and QR invitation; capacity and waitlists, later check-in, and reminders support the event lifecycle. Organizers manage events and participants, check attendees in, broadcast messages, and use AI helpers. The graph reflects README capabilities and sampled wiring; several feature-specific handler and service interactions are documented but their source was not sampled, so uncertain links are omitted.
Main entry points: server.go Admin REST API · handlers.go Bot routing · repo Persistence layer · registration.go Registration dialogue
Components 26
MAX bot
- Update ingress
internal/transport/longpoll/longpoll.go - Webhook ingress
internal/transport/webhook/server.go - Bot dispatcher
internal/bot/dispatcher.go - Bot routing
internal/bot/handlers.go - Registration dialogue
internal/bot/handlers/registration.go - Event discovery
internal/bot/handlers/events.go - My registration
internal/bot/handlers/my_registration.go - Organizer bot tools
internal/bot/handlers/organizer.go - MAX messaging
internal/external/maxclient/client.go
Event services
- Event management
internal/service/event.go - Registration lifecycle
internal/service/registration.go - Check-in
internal/service/attendance.go - QR invitations
internal/service/qr.go - Notifications
internal/service/notification.go - AI features
internal/service/ai.go - Persistence layer
internal/repo
Admin console
- Web admin
web/app/(authenticated) - Web API client
web/lib/api.ts - Admin REST API
internal/transport/adminapi/server.go - Admin authentication
internal/service/auth.go
Runtime and integrations
- PostgreSQL
- Reminder scheduler
internal/scheduler/scheduler.go - GigaChat
internal/external/gigachat/client.go
Other components
- Attendee
- Organizer
- MAX platform
Connections 35
- Attendee → MAX platform: sends updates
- MAX platform → Update ingress: delivers updates
- Update ingress → Bot dispatcher: forwards updates
- Webhook ingress → Bot dispatcher: queues updates
- Bot dispatcher → Bot routing: dispatches updates
- Bot routing → Event discovery: routes event actions
- Bot routing → Registration dialogue: routes dialogue
- Bot routing → My registration: routes registration actions
- Bot routing → Organizer bot tools: routes organizer actions
- Event discovery → Event management: lists events
- Registration dialogue → Registration lifecycle: creates registration
- Registration dialogue → QR invitations: requests invitation QR
- My registration → QR invitations: requests QR again
- Registration dialogue → MAX messaging: sends confirmation
- QR invitations → MAX messaging: delivers QR
- Organizer → Web admin: uses console
- Web admin → Web API client: requests admin data
- Web API client → Admin REST API: calls REST API
- Admin REST API → Admin authentication: exchanges magic link
- Admin REST API → Event management: manages events
- Admin REST API → Registration lifecycle: manages registrations
- Admin REST API → Check-in: checks in attendees
- Admin REST API → Notifications: broadcasts messages
- Admin REST API → AI features: requests AI helpers
- Registration lifecycle → Persistence layer: persists registrations
- Event management → Persistence layer: reads and writes events
- Check-in → Persistence layer: records attendance
- Persistence layer → PostgreSQL: reads and writes
- Reminder scheduler → Persistence layer: plans and loads notifications
- Reminder scheduler → Notifications: dispatches reminders
- Notifications → MAX messaging: sends notifications
- MAX messaging → MAX platform: sends messages
- AI features → GigaChat: requests generation
- AI features → Event management: uses event context
- Check-in → Notifications: triggers post-check-in feed