Metadati della sessione di chiamata

Questo documento fornisce una spiegazione dello schema JSON utilizzato per strutturare i metadati per le sessioni di chiamata. Questo schema è fondamentale per rappresentare ed elaborare con precisione le sessioni di chiamata.

Schema dei metadati della sessione di chiamata

Questo schema descrive la struttura dei dati relativi ai metadati della sessione di chiamata. I componenti chiave sono descritti nelle sezioni seguenti.

Informazioni principali

Queste proprietà acquisiscono le informazioni principali della chiamata:

  • id (numero intero). L'identificatore di ogni sessione di chiamata. Questa è la chiave primaria che distingue una chiamata dall'altra.

  • lang (stringa). Il codice lingua ISO 689 utilizzato durante la chiamata, ad esempio en per l'inglese o es per lo spagnolo. Questo è fondamentale per l'analisi e la generazione di report specifici per lingua.

  • call_type (stringa). Il tipo di chiamata, utilizzando un insieme legacy di tipi. Gli esempi includono: Voice Inbound (app), Voice Outbound e Voice Internal. In questo modo le chiamate vengono classificate in base all'origine e allo scopo.

  • session_type (stringa): duplicato di call_type

  • session_type_v2 (stringa). Il tipo di chiamata, utilizzando l'insieme corrente di tipi. Questo valore è simile a call_type, ma può includere distinzioni più granulari, ad esempio Voice Inbound (Mobile) o Voice Inbound (IVR using Mobile).

  • status (stringa). Lo stato attuale della chiamata. I valori possibili includono scheduled, queued, connected, finished, failed e deflected. In questo modo viene monitorato l'avanzamento della chiamata durante il suo ciclo di vita.

  • subStatus(string). Fornisce uno stato più dettagliato della chiamata. I valori possibili includono waiting_for_agent, in_queue e connected_with_agent.

  • created_at (stringa, data e ora): il timestamp preciso della creazione del record di chiamata

  • queued_at (stringa, data/ora o null): il timestamp in cui la chiamata è entrata in coda o null se non è mai stata messa in coda

  • assigned_at (stringa, data/ora o null): il timestamp in cui la chiamata è stata assegnata a un agente o null se non è stata assegnata

  • connected_at (stringa, data/ora o null): il timestamp in cui la chiamata è stata connessa correttamente

  • ends_at (stringa, data/ora o null): il timestamp della fine della chiamata

  • scheduled_at (stringa, data/ora o null): il timestamp di pianificazione della chiamata o null se si trattava di una chiamata immediata

  • updated_at (stringa, data e ora): il timestamp dell'ultima modifica dei dati delle chiamate

  • wait_duration (integer): il tempo totale trascorso dal cliente in attesa, in secondi

  • call_duration (numero intero): la durata totale della chiamata, in secondi

  • hold_duration (numero intero): il tempo totale in cui il cliente è stato messo in attesa, in secondi, o null se non è stato messo in attesa

  • rating (numero intero o null): la valutazione della soddisfazione del cliente (CSAT) fornita dal cliente o null se non è stata fornita alcuna valutazione

  • has_feedback (booleano): un flag che indica se il cliente ha fornito un feedback dopo la chiamata

  • voip_provider (stringa): il fornitore VoIP utilizzato per la chiamata. Questo campo è deprecato e restituirà sempre deprecated.

  • out_ticket_id (stringa): l'identificatore del ticket creato nel sistema CRM esterno

  • out_ticket_url (stringa, uri): l'URL del ticket CRM

  • is_out_ticket_account (booleano): indica se il ticket CRM rappresenta un cliente (true) o un'interazione di chiamata (false)

  • verified (booleano): indica se l'interazione è stata verificata tramite l'azione smart di verifica

  • recording_url (stringa, URI o null): l'URL della registrazione della chiamata o null se non è disponibile alcuna registrazione

  • recording_permission (stringa). Lo stato dell'autorizzazione alla registrazione del cliente. I valori possibili includono not_asked, granted o denied.

  • voicemail_reason (stringa). Il motivo per cui è stato lasciato un messaggio vocale, se applicabile. Le opzioni includono not_voicemail, temporary_redirection e after_hour_deflection.

Informazioni sull'agente e sull'agente virtuale

Queste sezioni spiegano chi o cosa ha gestito la chiamata:

  • agent_info (oggetto). Questo campo può contenere informazioni su un agente umano o un agente virtuale. Utilizza la parola chiave one of per specificare che può essere uno dei due tipi.

    • agent (oggetto): informazioni sull'agente umano:

      • id (integer): l'ID dell'agente

      • agent_number (stringa o valore null): un identificatore assegnato all'agente

      • email (stringa, email): l'indirizzo email dell'agente

      • name (stringa): il nome completo dell'agente

      • last_name (stringa): il cognome dell'agente

      • first_name (stringa): il nome dell'agente

      • avatar_url (stringa, uri): l'URL dell'immagine dell'avatar dell'agente

    • virtual_agent (oggetto): informazioni sull'agente virtuale:

      • id (numero intero): l'ID dell'agente virtuale

      • name (stringa): il nome dell'agente virtuale

      • avatar_url (stringa, uri): l'URL dell'immagine dell'avatar dell'agente virtuale

  • selected_menu (oggetto o null): informazioni sul menu selezionato dal cliente durante la chiamata

    • id (integer): l'ID del menu

    • name (stringa): il nome del menu

    • parent_id (numero intero o valore null): l'ID del menu principale, se presente

    • position (integer): la posizione del menu rispetto agli altri menu dello stesso livello

    • deleted (booleano): indica se il menu è stato eliminato

    • menu_type (stringa): il tipo di menu. Ad esempio, ivr_menu o sms_menu.

    • hidden (booleano): indica se il menu è visibile e disponibile per l'uso

  • menu_path (oggetto o null): descrive il percorso gerarchico dei menu in cui il cliente ha navigato

    • items_count (integer): il numero di menu nel percorso

    • name (stringa): una stringa di nomi di menu separati da una barra. Ad esempio, assistenza o fatturazione.

    • materialized_path (stringa): una stringa di ID menu separati da una barra

Dettagli utente finale

  • end_user (oggetto): informazioni sul cliente

    • id (numero intero): l'ID interno del cliente

    • identifier (stringa o null): un identificatore esterno per il cliente

    • out_contact_id (stringa o valore null): l'ID del cliente nel CRM

Deviazione delle chiamate

  • deflection (stringa): indica se e come è stata deviata la chiamata. Ad esempio: no_deflection, over_cap_phone, after_hours_voicemail.

  • deflection_details (array): fornisce un log dettagliato dei trasferimenti che si sono verificati durante la chiamata. Ogni voce include:

    • id (integer): l'identificatore del record di log di deviazione

    • call_id (integer): l'identificatore della chiamata

    • transfer_id (numero intero o null): l'identificatore del trasferimento associato alla deviazione, se applicabile

    • deflection (stringa): il tipo di deviazione

    • created_at (stringa, data e ora): timestamp in cui si è verificata la deviazione

    • from_menu_path (oggetto o null): percorso del menu da cui è stata deviata la chiamata

    • to_menu_path (oggetto o null): percorso del menu a cui è stata deviata la chiamata

    • to_sip_uri (stringa o null): URI SIP a cui è stata deviata la chiamata, se applicabile

    • to_sip_headers (oggetto): intestazioni SIP con cui la chiamata è stata deviata, se applicabile

Durate di gestione delle chiamate

  • handle_durations (array): un array di oggetti, ognuno dei quali rappresenta un segmento della chiamata gestita da un agente. È utile per analizzare il tempo di gestione dell'agente.

    • id (integer): l'identificatore della durata dell'handle

    • agent_id (integer): ID dell'agente

    • acw_duration (integer): durata dell'attività successiva alla chiamata

    • bcw_duration (integer): durata del lavoro prima della chiamata

    • call_duration (integer): durata della chiamata durante questo segmento

    • menu_path_id (stringa o valore null): ID del percorso del menu

    • menu_path (stringa): nome del percorso del menu

    • lang (stringa): lingua utilizzata.

    • barged (booleano): indica se la chiamata è stata interrotta

    • transfer (booleano): indica se è stato effettuato un trasferimento

    • transfer_id (stringa o null): ID del trasferimento

    • transfer_cold (booleano o null): indica se il trasferimento è stato freddo

    • started_at (stringa, data e ora): timestamp di inizio

    • ended_at (stringa, data e ora): timestamp di fine

    • scheduled_at (stringa, data/ora o null): timestamp pianificato

    • hold_duration (numero intero o null): durata della sospensione durante questo segmento

    • assigned_connection_duration (numero intero): durata dell'attesa dell'utente finale mentre l'agente era connesso durante questa fase

    • session_breakthrough (oggetto): dettagli sull'assegnazione della chiamata che interrompe lo stato non disponibile di un agente, se applicabile

Durate delle code

  • queue_durations (array): un array di oggetti, ognuno dei quali rappresenta un segmento della chiamata in cui il cliente era in coda. Questo è fondamentale per analizzare i tempi di attesa e i livelli di servizio.

    • id (integer): l'identificatore della durata della coda

    • agent_id (integer): ID dell'agente

    • ended_at (stringa, data e ora): timestamp di fine

    • lang (stringa): lingua utilizzata.

    • menu_path_id (integer): ID del percorso del menu

    • menu_path (stringa): nome del percorso del menu

    • queue_duration (integer): durata del segmento della coda

    • started_at (stringa, data e ora): timestamp di inizio

    • transfer_cold (booleano): indica se la chiamata è stata trasferita a freddo

    • transfer (booleano): indica se è stato effettuato un trasferimento

    • transfer_id (integer): ID del trasferimento

    • service_level_abandon_time_threshold (integer): soglia di tempo per l'abbandono del livello di servizio

    • service_level_event (stringa): stato dell'evento a livello di servizio. Ad esempio — excluded, in_sla, not_in_sla.

    • service_level_target_percent (integer): percentuale target per la conformità al livello di servizio

    • service_level_target_time (integer): tempo target per la conformità al livello di servizio

Riassegnazioni dell'agente virtuale

  • virtual_agent_deflected_escalations (array): dettagli delle riassegnazioni dagli agenti virtuali che sono state deviate

    • id (integer): l'identificatore

    • deflection (stringa): tipo di deviazione

    • escalation_id (integer): identificatore evento di riassegnazione

    • escalation_reason (stringa): motivo della riassegnazione

    • escalated_at (stringa, data e ora): timestamp di riassegnazione

    • menu_path_id (numero intero): ID percorso menu

    • menu_path (stringa): percorso del menu

    • lang (stringa): lingua

    • virtual_agent (oggetto): dettagli dell'agente virtuale

Durate di gestione dell'agente virtuale

  • virtual_agent_handle_durations (array): segmenti di tempo in cui la chiamata è stata gestita da un agente virtuale

    • id (integer): l'identificatore

    • virtual_agent (oggetto): dettagli dell'agente virtuale

    • call_duration (integer): durata del segmento

    • escalation_reason (stringa): motivo della riassegnazione

    • finish_reason (stringa): motivo per cui l'interazione è terminata

    • sentiment (numero intero): il sentiment dell'utente finale.

    • response_count (numero intero): numero di risposte dell'agente virtuale

    • fallback_response_count (integer): conteggio delle risposte di riserva

    • initiated_by (stringa): come è stata avviata la sessione dell'agente virtuale

    • menu_path_id (numero intero): ID percorso menu

    • menu_path (stringa): percorso del menu

    • lang (stringa): lingua

    • transfer (booleano): indica se la chiamata è stata trasferita

    • transfer_id (numero intero): identificatore dell'evento di trasferimento

    • started_at (stringa, data e ora): timestamp di inizio

    • ended_at (stringa, data e ora): timestamp di fine

Durate di gestione dell'utente finale

  • consumer_handle_durations (array): durate della chiamata dell'utente finale

    • id (integer): l'identificatore

    • call_duration (integer): durata del segmento utente finale

    • hold_duration (integer): durata del blocco utente finale

    • started_at (stringa, data e ora): timestamp di inizio

    • ended_at (stringa, data e ora): timestamp di fine

Durate degli eventi utente finale

  • consumer_event_durations (array): dettagli degli eventi di chiamata dell'utente finale. Ad esempio, CSAT o pagamento.

    • id (integer): l'identificatore

    • duration (integer): durata dell'evento

    • type (stringa): tipo di evento

    • event (stringa): risultato dell'evento

    • menu_path_id (numero intero): ID percorso menu

    • menu_path (stringa): percorso del menu

    • lang (stringa): lingua

    • started_at (stringa, data e ora): timestamp di inizio

    • ended_at (stringa, data e ora): timestamp di fine

Durate in-menu per l'utente finale

  • consumer_in_menu_durations (array): durate delle interazioni dell'utente finale all'interno dei menu

    • id (integer): l'identificatore

    • duration (integer): durata all'interno del menu

    • event (stringa): risultato dell'interazione con il menu

    • menu_path_id (numero intero): ID percorso menu

    • menu_path (stringa): percorso del menu

    • lang (stringa): lingua

    • started_at (stringa, data e ora): timestamp di inizio

    • ended_at (stringa, data e ora): timestamp di fine

Partecipanti

  • participants (array): informazioni su ciascun partecipante alla chiamata. Ad esempio, cliente, agente, agente virtuale.

    • id (integer): l'identificatore del partecipante

    • type (stringa): tipo di partecipante. Ad esempio: end_user, agent, virtual_agent, ecc.

    • entry_type (stringa): modalità di partecipazione alla chiamata

    • user_id (numero intero o null): ID utente se il partecipante è un agente

    • end_user_id (numero intero o null): ID utente finale se il partecipante è il cliente

    • virtual_agent_id (numero intero o null): ID dell'agente virtuale se il partecipante è un agente virtuale

    • virtual_agent_params (oggetto): metadati personalizzati utilizzati dall'agente virtuale

    • status (stringa): stato del partecipante. Ad esempio, waiting, connected, finished ecc.

    • fail_reason (stringa): motivo dell'errore, se presente

    • connected_at (stringa, data e ora): timestamp della connessione del partecipante

    • phone_number (stringa): numero di telefono del partecipante

    • call_id (integer): identificatore della chiamata

    • call_duration (integer): durata della chiamata per il partecipante

    • hold_duration (numero intero o null): durata della sospensione per il partecipante

    • ended_at (stringa, data e ora): timestamp in cui è terminato il coinvolgimento del partecipante

    • adapter_fail_code (numero intero o null): codice numerico corrispondente al motivo del mancato pagamento

    • adapter_fail_message (stringa o valore null): descrizione leggibile di fail_reason, se disponibile.

Registrazioni

  • recordings (array): informazioni sulle registrazioni delle chiamate

    • id (integer): l'identificatore della registrazione

    • call_id (numero intero): identificatore della chiamata

    • conference_sid (stringa): identificatore della chiamata del fornitore VoIP

    • duration (integer): durata della registrazione

    • recording_type (stringa): tipo di registrazione

    • redaction_times (array): segmenti di tempo che sono stati oscurati

    • started_at (stringa, data e ora): timestamp di inizio della registrazione

Eventi offerta

  • offer_type (stringa o valore null): modalità di offerta della chiamata all'agente

  • offer_events (array): eventi in cui la chiamata è stata offerta agli agenti

    • casting_time (data e ora): ora in cui è stata offerta la chiamata

    • group (stringa): gruppo a cui è stata offerta la chiamata

Altri dettagli

  • answer_type (stringa o null): come è stata risposta alla chiamata. Ad esempio, manuale o automatica.

  • outbound_number (stringa): numero di telefono in uscita utilizzato.

  • wait_time_sms (array): interazioni SMS con tempi di attesa

  • in_call_sms (array): interazioni SMS durante la chiamata

  • dispositions (array): esiti registrati durante la chiamata

  • email (stringa, email o null): indirizzo email del cliente

  • feedback (stringa o valore null): feedback del cliente

  • smart_action_text (stringa o null): testo di qualsiasi azione intelligente intrapresa

  • custom_data_secured (oggetto o null): dati personalizzati firmati in modo sicuro

  • custom_data_not_secured (oggetto o null): dati personalizzati non firmati in modo sicuro

Definizioni chiave

Lo schema include anche una sezione delle definizioni, che definisce i componenti dello schema riutilizzabili:

  • menu_path: un percorso di menu gerarchico

  • agent: un agente umano

  • virtual_agent: un agente virtuale

  • deflection: definisce i possibili stati di deviazione