Le point de terminaison des agents de déconnexion forcée vous permet de déconnecter de force les agents en ligne. Les agents engagés dans des appels ou des discussions actifs sont automatiquement déconnectés lorsqu'ils terminent leurs interactions en cours. Les agents inactifs sont immédiatement déconnectés. Ce point de terminaison permet la déconnexion forcée d'agents spécifiques, d'équipes entières ou d'agents identifiés par des adresses IP avec la notation CIDR, une liste d'adresses IPv4/IPv6 ou des plages d'adresses IP. Pour un grand nombre d'agents, un job en arrière-plan est créé pour gérer efficacement le processus de déconnexion.
Voici les points de terminaison de l'API de déconnexion forcée de l'agent :
Forcer la déconnexion des agents
Ce point de terminaison permet de déconnecter des agents spécifiques. Les agents peuvent être identifiés par les éléments suivants :
ID de l'agent.
ID d'équipe.
avec une adresse IP externe.
Point de terminaison :
Method: POST
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses/force_logout
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json | |
| Accepter | application/json |
Corps :
{
"agent_ids": [
11,
12
],
"team_ids": [
1
],
"ip_addrs": [
"34.211.11.0/24"
]
}
Exemple de requête et de réponses
Les sections suivantes fournissent des exemples de requêtes au point de terminaison.
Déconnecter les agents
Cet exemple montre comment déconnecter des agents spécifiques en fonction de leur ID et de celui de leur équipe. Dans ce cas, il s'agissait des ID d'agent 11 et 12, ainsi que de l'ID d'équipe 1.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Réponse
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"previous_status": "lunch",
"current_status": "Offline"
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"previous_status": "Unavailable",
"current_status": "Offline"
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"previous_status": "Break",
"current_status": "Offline"
}
]
Code d'état : 200
Déconnexion des agents à l'aide de l'adresse IP réussie
Cet exemple montre comment déconnecter des agents en spécifiant une plage d'adresses IP.
Dans ce cas, la plage d'adresses IP fournie est 34.211.11.0/24.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"agent_ids": [
11,
12
],
"team_ids": [
1
],
"ip_addrs": [
"34.211.11.0/24"
]
}
Code d'état : 200
Tâche de déconnexion de l'agent créée
Cet exemple montre comment demander la déconnexion des agents et le job créé.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"agent_ids": [
11,
12
],
"team_ids": [
1
],
"ip_addrs": [
"34.211.11.0/24"
]
}
Réponse
{
"ip_addrs": [
"34.211.11.0/16"
]
}
Code d'état : 200
Les agents en cours d'appel ou de discussion se déconnecteront plus tard
Cet exemple montre comment les agents qui sont en appel ou en chat seront déconnectés plus tard, une fois le chat ou l'appel terminé.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"agent_ids": [
11,
12
],
"team_ids": []
}
Réponse
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"previous_status": "In-call",
"current_status": "In-call",
"message": "will force logout as soon as the ongoing call/chat is completed"
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"previous_status": "In-chat",
"current_status": "In-chat",
"message": "will force logout as soon as the ongoing call/chat is completed"
}
]
Code d'état : 400
Erreur : Impossible de trouver les agents
Cet exemple illustre le scénario d'échec dans lequel les agents fournis n'ont pas pu être trouvés.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"ip_addrs": [
"34.211.11.0/24"
]
}
Réponse : Erreur : aucun agent trouvé avec les paramètres d'entrée
{
"message": "cannot find any agent by input params"
}
Code d'état : 400
Forcer la déconnexion des agents
Ce point de terminaison vous permet d'obtenir l'état d'une demande de déconnexion forcée pour un agent.
{
"identifier": "string",
"email": "string",
"name": "string",
"phone": "string"
}
Point de terminaison :
Method: GET
Type:
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses/force_logout/jobs/:id
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| id | ID de tâche d'une demande de déconnexion forcée envoyée. |
Exemple de requête et de réponses
Les sections suivantes fournissent des exemples de requêtes au point de terminaison.
Tâche exécutée
Cet exemple montre comment récupérer un job qui a été effectué avec succès.
Requête
En-têtes
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Requête
Method: GET
Type:
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses/force_logout/jobs/105
Réponse
{
"id": 105,
"status": "completed"
}
Code d'état : 200