/contact-center-client-react

Build Your Own Contact Center (React client). This is one of the components required for Nexmo's "Contact Center Use Case". You can run it locally or deploy it to Heroku as described below.

Primary LanguageJavaScriptMIT LicenseMIT

Nexmo

Build Your Own Contact Center (React client)

This is one of the components required for Nexmo's "Contact Center Use Case".

To get started, you can use this app to make and receive calls from the web.

Table of Contents

Getting Started

Start Locally

Configure Server

Configure a server side application for the contact center. Once you have followed the steps you'll have the SERVER_URL and the SERVER_KEY of the contact center server.

If you're running the node server locally, you'll likely be running it through ngrok so you can make and receive calls. So your SERVER_URL will look like http://03abc21.ngrok.io. Otherwise, if you're running it on Heroku, your SERVER_URL will look like http://yourappname.herokuapp.com.

Once the server is running, you can browse to the SDK Integration page and look for the MOBILE_API_KEY which will become your SERVER_KEY.

Configure Client Settings

This app is intended to be configured to only call out to a fixed number. Set your fixed number by creating a config file inside the client/src directory, by copying the example config file, config.json.example to config.json.

If you choose to be able to dial numbers from inside your own application, it is strongly recommended to do so behind a robust authentication implementation. Otherwise, this is open to abuse.

{
    "CALLEE_NUMBER": "+447500000000"
}

Environment File

Create an environment file by copying the example environment file, .example.env to .env, and editing it with your own configuration. Omitting environment variables will cause the application to use default values. As Nexmo needs to be able to access the server to provide NCCOs, default values will prevent you from making calls.

You'll need the SERVER_URL of the contact center server you wish to use and the SERVER_KEY from the SDK Integration page of your contact center server.

SERVER_URL=http://url-of-my-server
SERVER_KEY=key-generated-by-contact-center-server-here

Start it!

Before you start it for the first time, run this to install our dependencies.

npm install --prefix ./client && npm install

Once installed, you can now run it locally.

npm run dev

Open http://localhost:3000 to view it in the browser.

Deploy with Heroku

This application is configured to deploy to Heroku.

Deploy

Code of Conduct

In the interest of fostering an open and welcoming environment, we strive to make participation in our project and our community a harassment-free experience for everyone. Please check out our Code of Conduct in full.

Contributing

We ❤️ contributions from everyone! Check out the Contributing Guidelines for more information.

contributions welcome

License

This project is subject to the MIT License