Voice Management Guide

The Voice Management user guide

API Voice Management

1 - General information

The Voice Management API allows you to configure and monitor the processing of calls.

2 - Formalism

This API is based on the REST formalism. The data is served in JSON format.
You’ll need to obtain your authentication data from your Axialys contact person.

2.1 - Query format

Queries should be made as follows:

https://SERVER/vm...?user=<username>&password=<password>

Please note the format of the parameters:
● Telephone numbers are expected in E.164 format (i.e. country code followed by national number, e.g. 33145420000 for a Parisian number).
● Dates should be in IS0 8601 format. However, our system will accept the most common variations, including YYYY-MM-DD HH:MM.

2.2 - Response format

Responses are provided by default in a JSON format, unless the request is made from a browser, in which case the data is presented in HTML format. To force a JSON response, add the following parameter.
HTML. Pour forcer une réponse JSON, ajouter le paramètre

accept=application/json

Please note that the JSON response may contain additional data if the API changes. Do not take this into account.

3 - General information

3.1 - Operator retrieval

This API provides the list of operators.

URL /vm/operators/
Method(s)
GET

You can retrieve a particular operator via:

URL /vm/operators/‹ id_operateur›
Method(s)
GET

You can also use the POST method to filter on the following data:

Name Type Mandatory Description
email
Email
N
email address
login
Alphanumeric
N
Application login

Data returned
The data returned includes the parameters passed as input, as well as the following data:

3.2 - Retrieval of the current status of operators

Be careful not to make more than one request every 30 seconds. Eventually an audit will be activated.
This API provides the list of operators.

URL /vm/operators_init
Method(s)
GET

You can retrieve a specific operator via:

URL /vm/operators_init/
Method(s)
GET

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Mandatory Description
id
Y
operator ID
etat
vailable,ringing,calling,connected,unavailable
N
operator status
ui_login
Date
N
date of last login
ui_logout
Date
N
date of last logout
pause
Date
N
operator's current break
ui_pause
Date
N
date of the last break
ui_unpause
Date
N
date of the last break
groups
Liste d’IDs
N
List of group IDs the operator is a member of

3.3 - Group retrieval

This API provides the list of groups.

URL /vm/groups
Method(s)
GET

You can retrieve a specific group via:

URL /vm/groups/‹id_groupe›
Method(s)
GET

You can also use the POST method to filter on the following data:

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Mandatory Description
name
Alphanumeric
N
Name of the group searched for
Name Type Description
id
Email address
name
Alphanumeric
Name of the group searched for

3.4 - Retrieval of operator status history

This API provides a list of the status of operators. Note that the status does not provide the current status, but only the history. (They’re inserted once the operator changes their status. Call information can also be added at a later time.)

URL /vm/calls/status
Method(s)
POST

Queries should be made as follows:

				
					curl -u <username>:<password> "https://api.axialys.com/vm/calls/status" -X POST -d '{"date":"2019-04-20","date_end":"2019-05-01"}'
				
			

Settings

Name Type Mandatory Description
date
Date
Y
Start date/time of time period
date_end
Date
Y
End date/time of time period
id_op
Digital
N
Operator ID

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Description
id_op
operator ID
duration
Full
Duration in seconds
date
Date/Time
Start date of the event
id_call
Full
Call ID
infos
Character string
Additional information
type
Character string
Type of event (call_in, call_out, break, login, catchup)

3.5 - Retrieval of the operator’s detailed status

This allows you to received detailed data on an operator, the current call ID and various variables associated with the service, etc.

URL /vm/op_details/‹id_op›
Method(s)
GET

Queries should be made as follows:

				
					

curl -u <username>:<password> "https://api.axialys.com/vm/op_details/<id_op>
				
			

Data returned
Data returned includes the following:

Name Type Description
id
Digital
Billing account to which the operator is attached
id
Digital
Operator ID
state
Alphanumeric
Operator status
break
Alphanumeric
Break in progress
vars
Digital
Associated table with all the service variables
service_number
Digital
Service number
caller_number
Digital
Caller's phone number
ui_login
Date
Connection date
ui_logout
Date
Disconnection date
ui_pause
Date
Start date of break
ui_unpause
Date
End date of break
dt_answer
Date
Start date of the current call
id_appel
Digital
ID of the current call
groups
Alphanumeric
List of groups the caller belongs to
id_group
Digital
Group ID for the current call

4 - Statistics

4.1 - Calls received (numbers)

This API provides aggregate statistics on the number of calls received at the telecom level for a given period (by default, the current day).

Method : in GET

Parameters

Name Type Mandatory Description
from_date
Date/time
N
Start date/time of the period. Default is today at 00:00
to_date
Date/time
N
End date/time of the period. Default is now.
dest_number
Alphanum
N
Number for which we specifically want data. This parameter can be specified more than once. In this case, the data for all the specified numbers is cumulated.
include_realtime
N
When this parameter is set, “real-time" status data for ongoing calls is included.

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Mandatory Description
total_duration
Full
Y
Total duration of received calls in seconds
calls_count
Full
Y
Total number of calls received
agent_connected_calls_count
Full
Y
Number of calls that resulted in an actual connection to an agent
active_calls
Full
N
Number of calls in progress on the number(s) specified in the query (if include_realtime)
in_conversation_calls
Full
N
Number of calls made on the number(s) specified in the query (if include_realtime)
oldest_call_since
Date/Time
N
Timestamp of the start of the earliest call in progress (if include_realtime)
oldest_in_conversation_call_since
Date/Time
N
Timestamp of the start of the earliest ongoing conversation call (if include_realtime)

You cannot request a period longer than one month.

4.2 - Calls received (agent groups)

This API provides statistics on the number of incoming calls sent to agent groups for a given period (by default, the current day).

Parameters

Name Type Mandatory Description
from_date
Date/time
N
Start date/time of the period. Default is today at 00:00
to_date
Date/time
N
End date/time of the period. Default is now.
group_id
Digital
N
ID of the group for which you’re specifically requesting data. This parameter can be specified more than once. In this case, the data for all the groups specified is cumulated.
include_realtime
N
When this parameter is set, “real-time" status data on ongoing calls is included.

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Mandatory Description
total_duration
Full
Y
Total duration of calls received by agents in seconds
calls_count
Full
Y
Number of called received by agents
agent_connected_calls_count
Full
Y
Number of calls answer by an agent
active_calls
Full
N
Number of calls in progress on the group(s) specified in the query (if include_realtime)
oldest_call_connected_since
Date/Time
N
Timestamp of the start of the earliest ongoing conversation with an agent (if include_realtime)
oldest_call_waiting_since
Date/Time
N
Timestamp of the start of the earliest call waiting in progress (if include_realtime)

You cannot request a period longer than a month.

4.3 - Supervision (agent groups)

This API provides current supervision statistics related to a group of agents.

URL : /vm/stats/group_stats Accepted method : GET

Query format

Queries should be made as follows:

				
					curl -u <username>:<password> “https://api.axialys.com/vm/group_stats/<id_group>” -X GET
				
			

Or

				
					wget -qO- “https://<username>:<password>@api.axialys.com/vm/group_stats/<id_group>”
				
			
Parameters
Name Type Mandatory Description
group_id
Full
N
ID of the group for which you're specifically requesting data.

Data returned
The data returned includes the parameters passed as input, as well as the following data:

Name Type Description
group_name
Alphanumeric
Group name
nbr_global
Full
Overall number of calls
nbr_global_reel
Full
Overall number of unique calls, in the case of overflow calls
nbr_escalades
Full
Number of escalated calls
pourc_decroche
Full
Percentage of calls answered
nbr_comm
Full
Number of calls in communication
nbr_attente
Full
Number of calls waiting
nbr_perdus
Full
Number of lost calls
nbr_perdus_reel
Full
Number of unique lost calls, in the case of overflow calls
tps_max_attente
Time
Maximum wait time
tps_moyen_attente
Time
Average wait time
tps_moyen_comm
Time
Average communication time
tps_moyen_abandon
Time
Average abandon time
nbr_appels_attente_moins1m
Full
Number of people waiting less than 1 minute
nbr_appels_attente_1a3m
Full
Number of people waiting between 1 and 3 minutes
nbr_appels_attente_3mplus
Full
Number of people waiting more than 3 minutes
nbr_abandonne
Full
Number of calls abandoned in less than X seconds (X seconds of waiting on the group). By default, within 5 seconds.
nbr_repondu
Full
Number of calls answered within Y seconds (Y seconds after arriving in the group). By default, within 45 seconds.
tps_moyen_catchup
Time
Average catch up time

If you’d like to set the number of seconds for nbr_abandon and for nbr_respond, you’ll need to make a query as follows:

				
					curl -u <username>:<password> “https://api.axialys.com/vm/group_stats/<id_group>” -X GET -d ‘{“nbr_abandonne”:<nbr de secondes>,”nbr_repondu”:<nbr de secondes>}’