Integrating VM into CRM

The following methods can be used to integrate VM into CRM.

SSO

1 Login

  • When the user logs in, they need to retrieve a token using the following method:
curl -X POST -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","id_agent":<id_agent>}' https://api.axialys.com/vm/token
  • Option of using the operator's email:
curl -X POST -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","email":<email>, "user_type":"agent"}' https://api.axialys.com/vm/token

You can add the keep variable to try and keep the same token all the time:

curl -X POST -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","id_agent":<id_agent>, "keep":1}' https://api.axialys.com/vm/token
Only the json format is supported.
  • Then you have to call the popin in an iframe with the url:
https://voice-management.axialys.com/operateurs/index.htm?token_session=<token>

2 Supervision login

  • When the user logs in, you must retrieve a token using the method:
curl -X POST -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","id_admin":<id_admin>}' https://api.axialys.com/vm/token
  • Option of using the supervisor's email:
curl -X POST -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","email":<email>, "user_type":"admin"}' https://api.axialys.com/vm/token
Only the json format is supported.
  • Then you have to call the page via:
https://voice-management.axialys.com/superviseur/index.htm?token_session=<token>

3 Logging out

When the user logs out, the token must be voided using the method:

curl -X DELETE -u "<login>:<pass>" -H "Content-Type: application/json" -d '{"ip":"<ip>","id_agent":<id_agent>}' https://api.axialys.com/vm/token/<token>

4 Click-to-call

You just need to click on the phone number to call our banner’s url by adding a fiche_num variable with the desired number, thus enabling the phone number to be pre-saved in the banner.

Example: to display 33618220000, call the url:

https://voice-management.axialys.com/operateurs/index.htm?fiche_num=33618220000&token_session=<token>

1 File escalation to your CRM

If your CRM (web-based) is not natively supported by our solution, you can still fully connect it to our platform and trigger a customer file to open based on the incoming call.

1.1 Operation principle

The principle is as follows:

  • you set up a URL in your system which will be dedicated to opening customer files
  • this URL is configured in our system
  • when there’s an incoming call, a new page is opened leading to this URL
  • for which a certain number of variables have been set in parameters, enabling this page to display the relevant file

1.2 Set parameters

The page that is called is likely to receive at least the following variables as a parameter (query string):

SettingDescription
id_sessionToken identifying the agent's login to Voice Management
e164_inCalled number, E164 format. Ex: 33170200200
id_callUnique call ID on the platform
caller_id_numCaller number, E164 format. Ex: 336XXXXXXX
actionIs in for an incoming call
id_opoperator id
id_groupgroup id
waitwaiting time

Other parameters are likely to be set, following certain potential actions in the SVI (order number for example).

1.3 New Voice Management API

You can interact with the operator's UI with the “crm” object, which has several interfaces.

Miscellaneous information You must provide us with a JS using the methods below. The page should preferably be integrated via an iframe and will be called with the parameters in the URL:

  • engine (your JS ID)
  • version (your version number)

1.4 Miscellaneous information

Engine used and provided in the URL when calling our page, “engine” variable

crm.getEngine()

Version number provided in the URL when calling our page, “version” variable

crm.getVersion()

1.5 Authentification

Ask the popup to log in using the token provided

crm.login(<id_token>)

Ask the popup to log in using the logins/password provided

crm.login_credential(<login>, <password>)

Hide the log out button

crm.hide_logout()

Set up a callback function that will be called to indicate that the token is no longer valid

crm.set_auth_invalid()

1.6 Notifications

Enables you to set a callback function which will be called back with an associative array with all the available variables (id_session, e164_in, id_call, caller_id_num, id_op, id_groupe, wait (waiting time))

crm.set_notif_in(<fct>)

Set a callback function which will be called back with an associative array with all the available variables (id_session, e164_out, id_call, caller_id_num, id_op, id_groupe)

crm.set_notif_out(<fct>)

Set a callback function that will be called each time the operator's status is changed

1.7 Other interactions

Pre-fill the number to make a clic2call, “ticket_id” reference used only for zendesk (enables you to link a ticket and a call)

crm.call(<phone>, <ticket_id>)