Dati sugli eventi della sessione di chat del controllo qualità

Questa pagina descrive i dati degli eventi della sessione di chat che Contact Center AI Platform (CCAI Platform) può esportare nell'applicazione di gestione della qualità (QM). I dati degli eventi di chat QM supportano l'SDK web e gli SDK per dispositivi mobili. Per saperne di più sull'integrazione della piattaforma CCAI con l'applicazione QM, consulta Integrazione di QM e SIPREC.

Per i dati sugli eventi della sessione di chiamata, vedi Dati sugli eventi della sessione di chiamata QM.

Eventi e trigger della sessione di chat

Alcuni eventi di sessione attivano l'esportazione dei dati della sessione di chat nell'applicazione QM. Questa sezione elenca i tipi di eventi di chat e include un esempio di payload di eventi di sessione per ciascuno.

Chat avviata

Questo evento viene attivato quando un operatore umano o un agente virtuale avvia una chat. Il payload dell'evento contiene lo stato iniziale della chat, incluse informazioni sulla coda, sui partecipanti e sull'iniziatore.

Il seguente esempio di codice mostra il payload dell'evento:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 138,
  "state": "waiting",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    }
  ]
}

Chat in attesa di assegnazione

Questo evento viene attivato quando una sessione di chat entra in una coda ed è in attesa di assegnazione.

Il seguente esempio di codice mostra il payload dell'evento:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "waiting",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    }
  ]
}

Chat accettata

Questo evento viene attivato quando un operatore umano o un agente virtuale accetta una chat. Si tratta di un evento intermedio facoltativo prima che un agente si connetta a una chat.

Il seguente esempio di codice mostra un payload dell'evento per un operatore umano:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 167,
  "state": "connected",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB0d0540e638354714a43d64e9be9677b6",
      "dn": "end_user_5"
    },
    {
      "state": "accepted",
      "type": "agent",
      "media_id": "MBd9670cb0cddd424c814194795527ae3a",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Il seguente esempio di codice mostra un payload dell'evento per un agente virtuale:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "connected",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MBdfcdab9220f94f1486008a165db3f31a",
      "dn": "end_user_5"
    },
    {
      "state": "accepted",
      "type": "virtual_agent",
      "media_id": "MBea10421d150b4d22b675de17070bc383",
      "dn": "virtual_agent_2"
    }
  ]
}

Chat connessa

Questo evento viene attivato quando una chat viene collegata a un agente umano o a un agente virtuale. Può trattarsi di una connessione automatica o di un agente che si connette manualmente.

Il seguente esempio di codice mostra un payload dell'evento per un operatore umano:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 114,
  "state": "connected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB7a504ce7f418447bb4a48b8f3fa609d0",
      "dn": "end_user_5"
    },
    {
      "state": "connected",
      "type": "agent",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Il seguente esempio di codice mostra un payload dell'evento per un agente virtuale:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "connected",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    },
    {
      "state": "connected",
      "type": "virtual_agent",
      "dn": "virtual_agent_2"
    }
  ],
  "connected_at": "2024-09-13T14:04:17.000-07:00"
}

Chat chiusa

Questo evento viene attivato quando una sessione di chat viene annullata o terminata prima che venga stabilita una connessione completa, ad esempio non è stata accettata o è terminata prematuramente.

Il seguente esempio di codice mostra il payload dell'evento:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 197,
  "state": "dismissed",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "dismissed",
      "type": "external",
      "media_id": "MB444f542e9b9c4f89a8369bb2430357ad",
      "dn": "end_user_5"
    },
    {
      "state": "dismissed",
      "type": "agent",
      "media_id": "MB7e657411b2284f95b2cf31ef5e6dc83c",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Chat ripresa

Questo evento viene attivato quando una sessione di chat precedentemente sospesa o interrotta viene ripristinata. Il payload contiene lo stato della chat quando viene ripresa.

Il seguente esempio di codice mostra il payload dell'evento:

{
  "session_type_v2": "In-web",
  "chat_id": 198,
  "state": "resumed",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "resumed",
      "type": "external",
      "media_id": "MB320da61121bc4fc48ea099759f679333",
      "dn": "end_user_5"
    },
    {
      "state": "resumed",
      "type": "agent",
      "media_id": "MBbe5db89a01ab4814a8e7830daf3d30fa",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Il partecipante ha abbandonato la chat

Questo evento viene attivato quando uno o più partecipanti abbandonano una sessione di chat. Può trattarsi di un utente finale, un operatore umano o un agente virtuale che abbandona la chat. Il payload contiene lo stato della chat quando i partecipanti l'hanno abbandonata.

Il seguente esempio di codice mostra il payload dell'evento per un utente finale che abbandona una chat:

{
  "session_type_v2": "In-web",
  "chat_id": 169,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB4dd73370bc564cf18f5347233523ef44",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MBba370f84cf914992b05e9aab03730c4b",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Il seguente esempio di codice mostra il payload dell'evento per un operatore umano che abbandona una chat:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 169,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB4dd73370bc564cf18f5347233523ef44",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent"
      "media_id": "MBba370f84cf914992b05e9aab03730c4b",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Il seguente esempio di codice mostra il payload dell'evento per un agente virtuale che abbandona una chat:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MBdfcdab9220f94f1486008a165db3f31a",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "virtual_agent",
      "media_id": "MBea10421d150b4d22b675de17070bc383",
      "dn": "virtual_agent_2"
    }
  ]
}

Chat terminata

Questo evento viene attivato al termine di una sessione di chat. Può trattarsi di un utente finale, di un operatore umano o di un agente virtuale che termina la chat. Il payload contiene lo stato della chat al termine, inclusi i partecipanti e i timestamp di connessione e fine della chat.

Il seguente esempio di codice mostra il payload dell'evento per un agente umano e un utente finale che abbandonano una chat:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 127,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB4a0a435e759c43369098ee7f2d0271f0",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MBa4afeafb5bcc4a279f51db76f3b98deb",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ],
  "connected_at": "2024-08-27T17:06:37.000-07:00",
  "ends_at": "2024-08-27T17:06:59.000-07:00"
}

Il seguente esempio di codice mostra il payload dell'evento per un agente virtuale e l'utente finale che abbandona una chat:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 190,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB6ea6204b6a0448428d88e9976fd856d4",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "virtual_agent",
      "media_id": "MBc6a2b72c99534a68990caf622b65571a",
      "dn": "virtual_agent_2"
    }
  ],
  "connected_at": "2024-09-12T10:50:51.000-07:00",
  "ends_at": "2024-09-12T11:54:08.000-07:00"
}

Il seguente esempio di codice mostra il payload dell'evento per una chat terminata durante l'attesa in coda:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 141,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB65670b2c44534af3860fad35be88ac41",
      "dn": "end_user_5"
    }
  ],
  "connected_at": "",
  "ends_at": "2024-08-29T14:41:16.000-07:00"
}

Campi evento sessione di chat

Le tabelle seguenti descrivono i campi nei dati di sessione che Contact Center AI Platform esporta nell'applicazione QM.

Campi generali

Nome campo

Valori

Descrizione

Condizione

type

  • AgentState
  • ChatState

Il tipo di evento del payload JSON complessivo.

  • Pass AgentState per gli eventi correlati all'agente.
  • Passa ChatState per gli eventi correlati alla chat.

item

L'oggetto con le informazioni sull'evento.

Campi dello stato della chat

Nome campo

Valori

Descrizione

Condizione

chat_id

  • L'ID chat

Disponibile nell'oggetto item.

L'identificatore della sessione di chat nel sistema Contact Center AI Platform.

  • Passa il valore del campo ID nell'oggetto principale nei metadati della sessione Contact Center AI Platform.

state

  • waiting
  • connected
  • disconnected
  • dismissed
  • resumed
  • participantDisconnect
  • transferred

Disponibile nell'oggetto item.

Lo stato attuale della sessione di chat.

direction

  • incoming

Disponibile nell'oggetto item.

La direzione della sessione di chat dal punto di vista del contact center.

  • Passa incoming quando la sessione di chat è in entrata.

initiator

  • agent_1
  • virtual_agent_2
  • end_user_5

Disponibile nell'oggetto item.

L'identificatore della parte che inizializza lo stato della chat.

  • Per gli agenti umani

    Passa il valore del campo ID nell'oggetto agent_info nei metadati della sessione.

  • Per gli agenti virtuali

    Passa il valore del campo virtual_agent_id nell'oggetto participants nei metadati della sessione.

  • Per gli utenti finali

    Passa il valore del campo ID nell'oggetto end_user nei metadati della sessione.

queue_path_ids

  • Un percorso di ID coda

Disponibile nell'oggetto item.

Il percorso della coda seguito dall'utente finale prima di raggiungere il primo agente della chiamata.

Questo valore viene creato utilizzando gli ID coda della coda a cui è stata eseguita la navigazione.

  • Questo vale solo per le chat in arrivo.

queue_path_names

  • Un percorso di nomi di code

Disponibile nell'oggetto item.

Il percorso della coda seguito dall'utente finale prima di raggiungere il primo agente della chiamata.

Questo valore viene creato utilizzando i nomi delle code della coda a cui è stata eseguita la navigazione.

  • Questo vale solo per le chat in arrivo.

language

  • Il codice lingua

Disponibile nell'oggetto item.

Il codice lingua della lingua selezionata dall'utente finale.

  • Questo vale solo per le chat in arrivo.

queue_uuid

  • L'ID coda

Disponibile nell'oggetto item.

L'UUID della coda a cui è stata indirizzata la chat.

  • Questo vale solo per le chat in arrivo e trasferite alla coda.

tenant

  • Il nome dell'istanza

Disponibile nell'oggetto item.

Il nome dell'istanza che ospita la chat.

event_id

  • L'ID evento

Disponibile nell'oggetto item.

Un identificatore per la sessione di chat.

timestamp

  • Un timestamp UNIX

Disponibile nell'oggetto item.

Un timestamp per la chat in formato Unix epoch

session_type_v2

  • In-web

Disponibile nell'oggetto item.

Indica una sessione di chat dell'SDK web.

support_number

  • NULL

  • Non applicabile alla chat.

connected_at

  • La data e l'ora

Disponibile nell'oggetto item.

La data e l'ora di inizio della sessione di chat.

ends_at

  • La data e l'ora

Disponibile nell'oggetto item.

La data e l'ora in cui è terminata la sessione di chat.

participants

Disponibile nell'oggetto item.

Un oggetto contenente le informazioni del partecipante alla chiamata.

participant_id

  • agent_id
  • virtual_agent_id

Disponibile nell'oggetto participants.

L'identificatore del partecipante alla chat.

  • Per gli agenti umani

    Passa il valore del campo ID nell'oggetto agent_info nei metadati della sessione.

  • Per gli agenti virtuali

    Passa il valore nel campo virtual_agent_id nell'oggetto participants nei metadati della sessione

  • Per gli utenti finali

    Passa il valore del campo ID nell'oggetto end_user nei metadati della sessione.

  • Per terze parti

    Trasmette il numero di telefono della terza parte, se disponibile.

    In caso contrario, passa il valore null.

type

  • external
  • agent
  • virtual_agent

Disponibile nell'oggetto participants.

Il tipo di partecipante alla chiamata.

  • Restituisce agent quando il partecipante alla chat è un agente.
  • Viene superato external quando il partecipante alla chat è un utente finale o una terza parte.
  • Supera virtual_agent quando il partecipante alla chat è un agente virtuale.

state

  • connected
  • disconnected
  • accepted
  • dismissed
  • resumed

Disponibile nell'oggetto participants.

Lo stato attuale del partecipante nella conferenza di chat.

media_id

  • twilio_mediaID
  • nexmo_mediaID

Disponibile nell'oggetto participants.

L'identificatore dei contenuti multimediali della sessione di chat dell'operatore.

  • Supera il twilio_mediaID quando l'iniziatore chatta con o da un numero Twilio.
  • Supera il nexmo_mediaID quando l'iniziatore chatta con o da un numero Nexmo.

dn

  • end_user_1
  • agent_1

Disponibile nell'oggetto participants.

Il numero di telefono del partecipante.

agent_number

Disponibile nell'oggetto participants. Il numero dell'agente.

name

Disponibile nell'oggetto participants. Il nome dell'agente.

alias

Disponibile nell'oggetto participants. L'alias dell'agente.

Trasferimenti delle sessioni di chat

I trasferimenti delle sessioni di chat non sono eventi di chat distinti. ma sono payload che indicano che è stato eseguito un trasferimento della sessione di chat. Questa sezione mostra un payload di trasferimento della sessione di chat attivato quando un agente abbandona una chat. In questo esempio, il valore del campo initiator è agent_1, il che indica che l'agente 1 ha avviato il trasferimento. Nell'array participants, agent_1 ha lo stato disconnected e agent_2 ha lo stato connected. Ciò indica che la sessione è stata trasferita dall'agente 1 all'agente 2, con l'agente 1 che ha abbandonato la chat e l'agente 2 che ha partecipato. Il valore del campo state complessivo in questo esempio è participantDisconnect, ma puoi modellare il tuo sistema in modo che abbia uno stato complessivo di transferred o connected, se preferisci. Puoi anche modellare il sistema in modo che abbia campi aggiuntivi per rappresentare in modo più esplicito un trasferimento di sessione, ad esempio transfer_id o un tipo di evento di trasferimento dedicato.

Il seguente esempio di codice mostra un payload evento per un trasferimento di sessione:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 208,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MBed9193af0a82486cbad069925b5a0b18",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MB05685c80e6af444faa1de5c5e48a26c7",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    },
    {
      "state": "connected",
      "type": "agent",
      "media_id": "MB5caad80c7d94477d9db9c5f1c3662768",
      "agent_number": "420",
      "name": "ajay1 ujet",
      "alias": "ajay1-alias",
      "dn": "agent_2"
    }
  ]
}