How blebelo/glass works
GlassTickets is a multi-tenant support-ticket application with a Next.js agent dashboard and an ASP.NET Core backend. The principal inbound workflow documented for WhatsApp is webhook intake, message analysis, ticket creation and routing, then a reply to the customer; the webhook source confirms the controller-to-chat-service-to-Twilio call sequence. The dashboard also supports ticket and workforce management. README-described AI, real-time updates, and analytics have no clearly corresponding implementation in the supplied tree, so their wiring is not asserted; the graph uses documented capability links where applicable.
Main entry points: WhatsappWebHookController.cs WhatsApp webhook · WhatsappChatAppService.cs WhatsApp chat service · TicketAppService.cs Ticket application service · TwilioService.cs Twilio messaging
Components 23
WhatsApp intake
- WhatsApp webhook
aspnet-core/src/GlassTickets.Web.Host/Controllers/WhatsappWebHookController.cs - WhatsApp chat service
aspnet-core/src/GlassTickets.Application/Services/Whatsapp/WhatsappChatAppService.cs - Ticket draft
aspnet-core/src/GlassTickets.Application/Services/Whatsapp/Dto/TicketDraftDto.cs - Twilio messaging
aspnet-core/src/GlassTickets.Application/Services/Twilio/TwilioService.cs - AI message analysis
Ticket operations
- Ticket application service
aspnet-core/src/GlassTickets.Application/Services/Tickets/TicketAppService.cs - Ticket tracking
aspnet-core/src/GlassTickets.Application/Services/TicketTracking/TicketTrackingService.cs - Employee management
aspnet-core/src/GlassTickets.Application/Services/Employees/EmployeeAppService.cs - Employee domain
aspnet-core/src/GlassTickets.Core/Domain/Employees/EmployeeManager.cs - Supervisor management
aspnet-core/src/GlassTickets.Application/Services/Supervisors/SupervisorAppService.cs
Agent dashboard
- Next.js dashboard
nextts/src/app/dashboard/page.tsx - Ticket state provider
nextts/src/providers/ticket-provider/index.tsx - Assignment dialog
nextts/src/components/modals/ticketModals/AssignEmployeeModal.tsx - Authentication provider
nextts/src/providers/auth-provider/index.tsx
Identity and tenancy
- Token authentication
aspnet-core/src/GlassTickets.Web.Core/Controllers/TokenAuthController.cs - Login manager
aspnet-core/src/GlassTickets.Core/Authorization/LoginManager.cs - User registration
aspnet-core/src/GlassTickets.Core/Authorization/Users/UserRegistrationManager.cs - Tenant manager
aspnet-core/src/GlassTickets.Core/MultiTenancy/TenantManager.cs
Persistence
- Application database
aspnet-core/src/GlassTickets.EntityFrameworkCore/EntityFrameworkCore/GlassTicketsDbContext.cs
Other components
- WhatsApp customer
- Twilio
- Agent or supervisor
- OpenAI API
Connections 17
- WhatsApp customer → WhatsApp webhook: sends message
- WhatsApp webhook → WhatsApp chat service: handles message
- WhatsApp chat service → AI message analysis: analyzes message
- AI message analysis → OpenAI API: uses AI
- WhatsApp chat service → Ticket application service: creates ticket
- WhatsApp webhook → Twilio messaging: sends reply
- Twilio messaging → Twilio: sends WhatsApp
- Agent or supervisor → Next.js dashboard: manages tickets
- Next.js dashboard → Ticket state provider: uses state
- Ticket state provider → Ticket application service: requests tickets
- Assignment dialog → Employee management: selects assignee
- Employee management → Employee domain: creates employee
- Authentication provider → Token authentication: authenticates
- Token authentication → Login manager: checks credentials
- User registration → Tenant manager: validates tenant
- Ticket application service → Application database: persists tickets
- Employee domain → Application database: persists employee