API Voice Management

1 Généralités

L'API du Voice Management permet de configurer et de superviser le traitement des appels.

2 Formalisme

Cette API s'inspire du formalisme REST. Les données sont servies au format JSON.

Vous devez obtenir auprès de votre interlocuteur Axialys l'URL d'accès, ainsi que vos données d'authentification.

2.1 Format des requêtes

Les requêtes seront de la forme

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

A noter concernant le format des paramètres :

  • les numéros de téléphone sont attendus au format E164 (c'est-à-dire code pays suivi du numéro national, par exemple 33145420000 pour un numéro parisien).
  • les dates sont attendues au format IS0 8601. Cependant, notre système acceptera les variations les plus communes, et notamment le format AAAA-MM-DD HH:MM.

2.2 Format des réponses

Les réponses sont fournies au format JSON par défaut sauf si la requête est passée depuis un navigateur, auquel cas les données sont présentées au format HTML. Pour forcer une réponse JSON, ajouter le paramètre

accept=application/json

.

Attention, la réponse JSON est susceptible de contenir des données supplémentaires, en cas d'évolution de l'API. Ne pas en tenir compte.

3 Infos générales

3.1 Récupération des opérateurs

Cette API fournit le listing des opérateurs.

URL/vm/operators
Méthode(s)GET

Il est possible de récupérer un opérateur particulier via :

URL/vm/operators/<id_operator>
Méthode(s)GET

Il est également possible d'utiliser la méthode POST afin de filtrer sur les données suivantes :

NomTypeOblig.Description
emailEmailNAdresse email
loginAlpha-numériqueNLogin de connexion

Données retournées

Les données retournées incluent les paramètres passés en entrée, ainsi que les données suivantes :

NomTypeOblig.Description
idYAdresse email
emailEmailNAdresse email
realnameAlpha-numériqueYNom de la personne
loginAlpha-numériqueYLogin de connexion

3.2 Récupération des groupes

Cette API fournit le listing des groupes.

URL/vm/groups
Méthode(s)GET

Il est possible de récupérer un groupe particulier via :

URL/vm/groups/<id_groupe>
Méthode(s)GET

Il est également possible d'utiliser la méthode POST afin de filtrer sur les données suivantes :

NomTypeOblig.
nameAlpha-numériqueNNom du groupe recherché

Données retournées

Les données retournées incluent les paramètres passés en entrée, ainsi que les données suivantes :

NomTypeDescription
idAdresse email
nameAlpha-numériqueNom du groupe recherché

3.3 Récupération de l'historique du statut des opérateurs

Cette API fournit le listing du statut des opérateurs. Attention le statut ne fournit pas le statut actuel, mais uniquement l'historique (ils sont insérés une fois que l'opérateur change d'état. Les informations d'appels peuvent également être ajoutées un peu plus tard.)

URL/vm/calls/status
Méthode(s)POST

Les requêtes devront se faire sous la forme

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

Paramètres

NomTypeOblig.Description
dateDateODate/heure de début de la période.
date_endDateODate/heure de fin de la période.
id_opNumériqueNID de l'opérateur.

Données retournées

Les données retournées incluent les paramètres passés en entrée, ainsi que les données suivantes :

NomTypeDescription
id_opID d'opérateur
durationEntierDurée en secondes
dateDate/HeureDate de début de l'événement
id_callEntierID de l'appel
infosChaîne de caractèresInfos supplémentaires
typeChaîne de caractèresType de l'événement (call_in, call_out, break, login, catchup)
Il n'y a pas de login_out dans Type, car avec login, on connaît la date de début et la durée.

4 Statistiques

4.1 Appels reçus (numéros)

Cette API fournit des statistiques globales sur le nombre d'appels reçus au niveau télécom pour une période donnée (par défaut, la journée en cours).

URL/vm/stats/numbers_calls
Méthode(s)GET

Paramètres

NomTypeOblig.Description
from_dateDate/HeureNDate/heure de début de la période. Par défaut, aujourd'hui à 00:00
to_dateDate/HeureNDate/heure de fin de la période. Par défaut, maintenant.
dest_numberNumériqueNNuméro pour lequel on veut spécifiquement des données. Ce paramètre peut-être indiqué plusieurs fois; dans ce cas les données de tous les numéros indiqués sont cumulées.
include_realtime NLorsque ce paramètre est positionné, des données d'état “temps réel” sur les appels en cours sont incluses.

Données retournées

Les données retournées incluent les paramètres passés en entrée, ainsi que les données suivantes :

NomTypeOblig.Description
total_durationEntierODurée totale des appels reçus en secondes.
calls_countEntierONombre total d'appels reçus.
agent_connected_calls_countEntierONombre d'appels ayant donné lieu à une connexion effective vers un agent.
active_callsEntierNNombre d'appels en cours sur le ou les numéros concernés par la requête (si include_realtime).
in_conversation_callsEntierNNombre d'appels en conversation sur le ou les numéros concernés par la requête (si include_realtime).
oldest_call_sinceDate/HeureNHorodatage du début de l'appel le plus ancien en cours (si include_realtime).
oldest_in_conversation_call_sinceDate/HeureNHorodatage du début de l'appel en conversation le plus ancien en cours (si include_realtime).
Il n'est pas possible de requêter une période plus longue qu'un mois.

4.2 Appels reçus (groupes agents)

Cette API fournit des statistiques sur le nombre d'appels reçus présentés aux groupes d'agents pour une période donnée (par défaut, la journée en cours).

URL : /vm/stats/group_calls Méthode acceptée : GET

Paramètres

NomTypeOblig.Description
from_dateDate/HeureNDate/heure de début de la période. Par défaut, aujourd'hui à 00:00
to_dateDate/HeureNDate/heure de fin de la période. Par défaut, maintenant.
group_idNumériqueNID du groupe pour lequel on veut spécifiquement des données. Ce paramètre peut-être indiqué plusieurs fois; dans ce cas les données de tous les groupes indiqués sont cumulées.
include_realtimeNLorsque ce paramètre est positionné, des données d'état “temps réel” sur les appels en cours sont incluses.

Données retournées

Les données retournées incluent les paramètres passés en entrée, ainsi que les données suivantes :

NomTypeOblig.Description
total_durationEntierODurée totale des appels reçus par les agents en secondes.
calls_countEntierONombre total d'appels reçus par les agents.
agent_connected_calls_countEntierONombre d'appels décrochés par un agent.
active_callsEntierNNombre d'appels en cours sur le ou les groupes concernés par la requête (si include_realtime).
oldest_call_connected_sinceDate/TimeNHorodatage du début de la plus ancienne conversation avec un agent en cours (si include_realtime).
oldest_call_waiting_sinceDate/TimeNHorodatage du début de l'attente de l'appel le plus ancien en cours (si include_realtime).
Il n'est pas possible de requêter une période plus longue qu'un mois.

4.3 Supervision (groupes agents)

Cette API fournit des statistiques actuelles de la supervision liées à un groupe d'agents.

URL : /vm/stats/group_stats Méthode acceptée : GET

Format des requêtes

Les requêtes devront se faire sous la forme

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

ou

wget -qO- "https://<username>:<password>@api.axialys.com/vm/group_stats/<id_group>"

Paramètres

NomTypeOblig.Description
group_idEntierNID du groupe pour lequel on veut spécifiquement des données.

Données retournées

Les données retournées incluent le paramètre passé en entrée, ainsi que les données suivantes :

NomTypeDescription
group_nameAlpha-numériqueNom du groupe
nbr_globalEntierNombre d'appels Global
nbr_escaladesEntierNombre d'appels Escaladés
pourc_decrocheEntierPourcentage d'appels Décrochés
nbr_commEntierNombre d'appels En communication
nbr_attenteEntierNombre d'appels En attente
nbr_perdusEntierNombre d'appels Perdus
tps_max_attenteHeureTemps max d'attente
tps_moyen_attenteHeureTemps moyen d'attente
tps_moyen_commHeureTemps moyen de communication
tps_moyen_abandonHeureTemps moyen d'abandon
nbr_appels_attente_moins1mEntierNombre de personnes en attente de moins de 1 minute
nbr_appels_attente_1a3mEntierNombre de personnes en attente entre 1 et 3 minutes
nbr_appels_attente_3mplusEntierNombre de personnes en attente de plus de 3 minutes
La fréquence d'utilisation ne doit pas excédée à 1 requête toutes les 10 secondes.