Skip to content

Chatbot Communication

Overview

OmniButler's chatbot system supports multiple communication channels, allowing users to interact with the AI assistant through different interfaces. The system is built on a clean architecture that separates the communication layer from the core AI functionality, enabling consistent responses across different channels.

Communication Channels

The system currently supports three main communication channels:

  1. WebSocket Chat
  2. Real-time, bi-directional communication
  3. Markdown-formatted responses
  4. Session management
  5. Currently active and fully functional

  6. Voice Chat

  7. Twilio-based voice interaction
  8. SSML-formatted responses
  9. Command routing
  10. Currently disabled due to refactoring

  11. WhatsApp Chat

  12. Twilio-based messaging
  13. Support for text, images, and location
  14. Message splitting for long responses
  15. Currently disabled due to refactoring

Common Components

All communication channels share these core components:

  1. LLM Service
  2. Handles AI response generation
  3. Supports different output formats (markdown, SSML, WhatsApp)
  4. Maintains conversation context

  5. Authentication

  6. Firebase-based user authentication
  7. Token validation
  8. User session management

  9. Error Handling

  10. Consistent error reporting
  11. Graceful degradation
  12. User-friendly error messages

Current Status

Channel Status Issues
WebSocket Active None
Voice Disabled Requires Twilio configuration update
WhatsApp Disabled Requires Twilio configuration update

Future Enhancements

  1. Short-term (1-3 months)
  2. Reactivate voice and WhatsApp channels
  3. Implement channel-specific error handling
  4. Add channel health monitoring

  5. Medium-term (3-6 months)

  6. Add support for more messaging platforms
  7. Implement channel-specific features
  8. Enhance conversation context management

  9. Long-term (6+ months)

  10. Implement multi-channel conversation sync
  11. Add channel-specific AI optimizations
  12. Develop advanced conversation analytics

Technical Debt

  1. Voice Channel
  2. Twilio configuration needs updating
  3. Command routing needs refactoring
  4. Error handling needs improvement

  5. WhatsApp Channel

  6. Message splitting logic needs optimization
  7. Media handling needs enhancement
  8. Error recovery needs implementation

  9. Common Issues

  10. Session management needs standardization
  11. Error handling needs unification
  12. Monitoring needs implementation