API overview
Accolades provides several APIs allowing the phone service to be integrated with external applications.
Call notifications (to the final user computer, to identify the caller inside an external CRM application)
The API uses a web-socket opened by the final user computer (a call center agent). When the agent is about to enter a call, the API will notify the listener, using the web socket, with the phone number of the caller.
User experience
When the phone rings, the external CRM application, installed on the agent computer will open the contact info page.
Backend
The external CRM application will listen (directly or using a connector script that can be hosted by Accolades) on a specific port (using the WSS protocol). When a call is about to be sent to the agent, Accolades will send a message, using the existing connection, to the agent computer with several info about the call, including the phone number. The CRM application receives the package and needs to process it (probably the app will search the database for the contact corresponding to the phone number and then open the contact info page).
If the CRM is web-based, then the web-socket management and message management part of the code is already written inside this documentation.
External server requests from the IVR interface
The IVR (Interactive Voice Response) represents the system used by a caller to interact with an automated phone system: "Pentru limba română apăsați tasta 1, for English press 2".
Using HTTP(S) requests, Accolades can query an external server where it can send parameters and receive instructions.
For example:
- The caller, after starting the call will have the following message played: "To check the status of your order, please input the order number and then press the pound key."
- The caller inputs, using the phone keypad: 12345#
- The Accolades server starts a HTTP(S) request to an external server, where it will send the value provided by the caller
- The remote server will answer the request with a status value like "toTheCourier"
- Based on the value received, Accolades will play to the caller a recorded message, like "Your order has been picked up by the courier. "
Call notifications (to an external server, for call history and current call management)
Using HTTP(S) requests, Accolades will send data about an ongoing call to an external server. Notifications for call answer, call hang up and notifications during the call (to implement a pre-pay system, for example) can be sent.
REST API for commands originated from external applications
The following instructions can be received:
- Start a call directly from external applications (click2call features)
- Send SMS from external applications
User experience (click2call)
The process to start a call runs as follows:
- The user pressed the Call button, inside an external application;
- The external application starts a HTTPS request to the Accolades server, where the destination phone number is included, as a parameter;
- The phone on the user desk will start ringing;
- After the user picks up the phone, the destination number will be dialed automatically.