Skip to content

uvaizm/gc-custom-crm-connector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gc-custom-crm-connector

A custom connector for integrating Genesys Cloud with third-party CRM systems, enabling seamless data exchange and interaction management.

About

The gc-custom-crm-connector is a lightweight solution designed to bridge Genesys Cloud with CRM platforms, facilitating real-time interaction handling, call disposition, and callback scheduling. It provides a flexible framework for developers to customize integrations based on specific CRM requirements.

Features

  • Real-Time Interaction Sync: Syncs call data (e.g., conversation ID, participant ID) with CRM records.
  • Call Disposition: Allows agents to set dispositions using customizable dropdowns.
  • Callback Scheduling: Supports scheduling callbacks with UTC-formatted timestamps and timezone offsets.
  • Custom Attributes: Enables setting custom attributes for conversations and participants.
  • WebSocket Integration: Communicates with Genesys Cloud via WebSocket for event handling.

Installation

  1. Clone the Repository:

    git clone https://github.com/uvaizm/gc-custom-crm-connector.git
    cd gc-custom-crm-connector
  2. Install Dependencies: Ensure Node.js is installed. Run:

    npm install
  3. Set Up Web Server: Host the application using a local server (e.g., http-server or Nginx). For development:

    npm install -g http-server
    http-server .
    http-server -p 9090 . - to run on any specific port

Usage

  1. Access the Web Interface: Open the application in a browser (e.g., http://localhost:8080).

  2. Dial a Number: Enter a phone number in the "Dial" section and click "Dial" to initiate a call via Genesys Cloud.

  3. Set Disposition: In the "Disposition" section, select conversation, participant, and communication IDs from dropdowns, then click "Disposition".

  4. Schedule Callback: Use the datetime picker in the "Callback" section to schedule a callback. The time is converted to UTC with the local timezone offset (e.g., 2025-10-09T08:30:00.000+04:00 for UAE).

  5. Disconnect or Set Attributes: Use the respective sections to disconnect calls or set custom attributes by providing required IDs.

Configuration

  • Client ID: Update the PKCE grant based OAUTH client id created in Genesys cloud org in config.js file.
  • Organization ID: Update the Genesys cloud organization id in config.js file.
  • Redirect URI: Update the url endpoint based on the hosted server domain name.
  • Genesys Cloud Region: Update the Genesys cloud region of the organization in config.js file. eg: mec1.pure.cloud, usw2.pure.cloud, mypurecloud.ie, etc
  • defaultCallQueueId: Configure the queue id in config.js file where the agent should make outbound call such as click to dial feaure.
  • Dropdown Options: Customize the dropdown values in the "Disposition" section by editing the <select> elements in index.html.

User Interface

Sample CRM GC Integrated UI Layout

Contributing

Contributions are welcome! To contribute:

  1. Fork the repository.
  2. Create a feature branch: git checkout -b feature/your-feature.
  3. Commit changes: git commit -m 'Add your feature'.
  4. Push to the branch: git push origin feature/your-feature.
  5. Open a pull request.

Please include a CONTRIBUTING.md file in your fork for detailed guidelines.

License

This project is licensed under the MIT License. See the LICENSE file for details.

For issues or feature requests, open an issue on GitHub or contact the repository owner.


© 2025 uvaizm

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published