Gli endpoint API di stato dell'agente forniscono l'accesso agli oggetti di stato dell'agente. Viene creato un oggetto agente per ogni utente configurato in Contact Center AI Platform (CCAI Platform) che dispone di un ruolo che include un'autorizzazione agente.
Di seguito sono riportati gli endpoint API di stato dell'agente:
Gli endpoint di stato dell'agente ti consentono di modificare lo stato degli agenti. Consentono di modificare lo stato da Disponibile a qualsiasi stato personalizzato. Le transizioni da e verso stati definiti dal sistema come In chiamata attivano un errore. Inoltre, questi endpoint supportano gli aggiornamenti collettivi, consentendo modifiche simultanee dello stato per interi team o gruppi selezionati di agenti.
Aggiorna stato agente
Questo endpoint consente di aggiornare lo stato degli agenti. La seguente tabella mostra le proprietà nel corpo JSON:
| Proprietà | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| stato | VERO | Stringa | Lo stato in cui impostare gli agenti, ad esempio disponibile. |
| agent_ids | VERO | Arry Integer | ARRAY di ID agente. |
| team_ids | VERO | Array Integer | ARRAY di ID team. |
Endpoint:
Method: POST
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": []
}
Esempio di richiesta e risposte
Le sezioni seguenti forniscono richieste di esempio all'endpoint.
Modificare correttamente gli stati degli agenti
L'esempio seguente mostra la richiesta e la risposta associata alla modifica dello stato di alcuni agenti in cui l'azione è stata eseguita correttamente.
Richiesta
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Risposta:
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"previous_status": "lunch",
"current_status": "Available"
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"previous_status": "In-call",
"current_status": "In-call",
"message": "Agent can't be changed from system status 'In-call'"
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"previous_status": "Offline",
"current_status": "Offline",
"message": "Agent's status can't be changed if they are offline or logged out"
}
]
Codice di stato: 200
Lo stato non esiste
Questo esempio mostra la richiesta e la risposta associata in cui lo stato fornito non esiste e pertanto è considerato non valido.
Richiesta
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
Body
{
"status": "Napping",
"agent_ids": [
11,
12
],
"team_ids": []
}
Risposta: Errore: lo stato "Napping" non esiste
{
"message": "status 'Napping' does not exist"
}
Codice di stato: 400
Stato impostato sullo stato del sistema
Questo esempio mostra la richiesta e la risposta in cui lo stato è impostato su uno stato di sistema, in questo caso "in chiamata". Non è possibile impostare lo stato di un agente su uno stato gestito dal sistema.
Richiesta
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
Body
{
"status": "In-call",
"agent_ids": [
11,
12
]
}
Risposta: Errore: l'agente non può essere modificato nello stato di sistema "In chiamata"
{
"message": "Agent can't be changed to system status 'In-call'"
}
Codice di stato: 400
Recupera gli stati degli agenti
Questo endpoint consente di recuperare lo stato degli agenti. La seguente tabella mostra le proprietà nel corpo JSON:
| Proprietà | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| stato | VERO | Stringa | Lo stato in cui impostare gli agenti, ad esempio disponibile. |
| agent_ids | FALSE | Arry Integer | ARRAY di ID agente. |
| team_ids | FALSE | Array Integer | ARRAY di ID team. |
Endpoint:
Method: GET
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Esempio di richiesta e risposte
Le sezioni seguenti forniscono richieste di esempio all'endpoint.
Visualizzare lo stato di agenti e team specifici
Questo esempio mostra come ottenere lo stato degli agenti con ID 11 e 12 e di qualsiasi agente del team con ID 1.
Richiesta
Intestazioni:
| Chiave | Valore | Descrizione |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Risposta: stato degli agenti richiesti
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"status": "lunch",
"ip_addrs": [
"34.211.11.101"
]
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"status": "In-call",
"ip_addrs": [
"34.211.11.102"
]
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"status": "Offline",
"ip_addrs": [
"34.211.11.103"
]
}
]
Codice di stato: 200