Le point de terminaison "Force logout agents" (Forcer la déconnexion des agents) vous permet de déconnecter de force les agents en ligne. Les agents engagés dans des appels ou des chats actifs sont automatiquement déconnectés lorsqu'ils terminent leurs interactions en cours. Les agents inactifs sont déconnectés immédiatement. Ce point de terminaison permet de forcer la déconnexion d'agents spécifiques, d'équipes entières ou d'agents identifiés par des adresses IP avec une notation CIDR, une liste d'adresses IPv4/IPv6 ou des plages d'adresses IP. Pour un grand nombre d'agents, une tâche en arrière-plan est créée pour gérer efficacement le processus de déconnexion.
Voici les points de terminaison de l'API "Force agent logout" (Forcer la déconnexion des agents) :
Force logout 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 de l'équipe.
Adresse IP.
Point de terminaison :
Method: POST
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses/force_logout
Titres :
| 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"
]
}
Exemples de requêtes 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 l'ID de leur équipe. Dans ce cas, il s'agit des ID d'agent 11 et 12, ainsi que de l'ID d'équipe 1.
Requête
Titres :
| 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éconnecter les agents à l'aide d'une adresse IP
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
Titres :
| 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 de l'agent et la tâche résultante qui est créée.
Requête
Titres :
| 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 appel ou en chat seront déconnectés ultérieurement
Cet exemple montre comment les agents qui sont en appel ou en chat seront déconnectés ultérieurement, une fois le chat ou l'appel terminé.
Requête
Titres :
| 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 montre le scénario d'échec dans lequel les agents fournis n'ont pas pu être trouvés.
Requête
Titres :
| Clé | Valeur | Description |
|---|---|---|
| Content-Type | application/json |
Corps :
{
"ip_addrs": [
"34.211.11.0/24"
]
}
Réponse : Erreur : impossible de trouver un agent avec les paramètres d'entrée
{
"message": "cannot find any agent by input params"
}
Code d'état : 400
Tâches de déconnexion de l'agent
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
Titres :
| Clé | Valeur | Description |
|---|---|---|
| id | ID de tâche d'une demande de déconnexion forcée envoyée. |
Exemples de requêtes 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 une tâche qui a été exécutée.
Requête
Titres :
| 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