Skip to content

Designveloper/dsv-chat-support

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chat Support

A modern chat support application with Slack integration.


🛠️ Getting Started

1. Clone the Repository

git clone https://github.com/Designveloper/dsv-chat-support
cd dsv-chat-support

2. Environment Configuration

Copy the example environment file and update it with your secrets:

cp .env.example .env

Edit .env and fill in your configuration:

# Database
DB_HOST=your-db-host
DB_PORT=your-db-port
DB_USERNAME=your-db-username
DB_PASSWORD=your-db-password
DB_NAME=your-db-name

# Slack configuration
SLACK_CLIENT_ID=your-slack-client-id
SLACK_SIGNING_SECRET=your-slack-signing-secret
SLACK_REDIRECT_URI=your-slack-redirect-uri

# JWT signing key
JWT_SECRET=your-jwt-secret

🔗 Slack Integration Setup

To enable Slack integration:

Create a Slack App

  • Go to Slack API: Your Apps and click "Create New App".
  • Choose "From scratch" and give your app a name and workspace.

Configure OAuth & Permissions

  • Add the following OAuth scopes:
    • channels:history
    • channels:manage
    • channels:read
    • channels:join
    • chat:write
    • chat:write.customize
    • users:read
    • users:read.email
    • commands
  • Set the Redirect URL to:
    https://chat-support-server.onrender.com/slack/oauth_redirect
    
    (Replace with your own backend UR if self-hosting.)

Enable Event Subscriptions

  • Go to the Event Subscriptions tab in your Slack app settings.
  • Enable events.
  • Set the Request URL to:
    https://chat-support-server.onrender.com/slack/events
    
    (Replace with your own backend URL if self-hosting.)

Get your credentials

  • Copy the Client ID and Signing Secret from your Slack app settings.
  • Add them to your .env file:
    SLACK_CLIENT_ID=your-client-id
    SLACK_SIGNING_SECRET=your-signing-secret
    SLACK_REDIRECT_URI=https://<your-domain>/slack/oauth_redirect
    

Connect Slack in the Dashboard

  • After running the app, log in and use the dashboard to connect your Slack workspace and select a channel for notifications.

For more details, see Slack API documentation.


🚀 Running with Docker

This project uses Docker Compose to run both the frontend and backend services.

1. Build and Start the Services

Make sure Docker and Docker Compose are installed on your machine.

docker-compose up --build

2. Environment Variables

The backend service uses environment variables from your .env file. Ensure all required variables are set.

3. Stopping the Services

To stop the running containers:

docker-compose down

🧩 Embedding the Chat Widget

To embed the chat widget on your website, follow these steps:

1. Add the Script to Your HTML Head

Place this script tag in the <head> section of your HTML file (e.g., index.html):

<script
  src="https://chat-support-7j2g.onrender.com/chat-widget.js"
  async
></script>

Replace the src URL with your deployed server address if self-hosting.

2. Add the Widget Element

Insert the following custom element where you want the chat widget to appear, replacing your-widget-id with your actual widget ID:

<chat-support-widget widgetid="your-widget-id"></chat-support-widget>

You can find your widgetid in your workspace settings.

3. Verify Installation

After adding both code snippets, check your website to ensure the chat widget appears.
If you encounter any issues, please contact our support team.


📢 Need Help?

Open an issue or contact the maintainers for support.

About

A chat support plugin that help your client chat directly with your support team through slack/mattermost

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages