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
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
.
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"
}
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
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.
This application is configured to deploy to Heroku.
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.
We ❤️ contributions from everyone! Check out the Contributing Guidelines for more information.
This project is subject to the MIT License