Skip to content

Chat Widget for Website & CRM module integration #259

@diyor28

Description

@diyor28

Overview

Develop a messaging exchange system between the insurance website and IOTA CRM, enabling customer support through a chat widget.

Requirements

Chat Widget

Message Transfer

When a message is sent from the website widget, it should:

  • Be transmitted to the IOTA CRM backend
  • Appear in the general chat within the "CRM" module
  • Include:
    • Message text
    • Date/time
    • Session ID (generated on first visit)
    • Customer ID (from cookies/localStorage, if available)

Agent Workflow in IOTA CRM

  • All incoming messages visible in the main chat window of the Support module
  • When an agent responds:
    • The conversation is automatically assigned to that agent
    • Agents can tag conversations with one of three labels:
      • Complaint
      • Potential Client
      • Question

History Management

  • For authenticated customers:
    • All message history is saved in the customer's profile
  • For unauthenticated users:
    • History is accessible via session ID
    • Can be manually linked to a customer profile later

Technical Context

The codebase already includes:

  • CRM module with client and chat management
  • Support for multiple message sources (telegram, whatsapp, sms, email, website)
  • Message storage in relational database (clients, chats, messages tables)
  • Real-time updates via WebSockets
  • Partial implementation of a website chat widget

Required development:

  • Complete the website chat widget implementation
  • Add session tracking for unauthenticated website users
  • Implement conversation tagging system (complaint, potential client, question)
  • Create agent assignment mechanism
  • Connect the widget to the CRM backend

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

Status

Ready

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions