Metadati della sessione di chiamata

Questo documento fornisce lo schema del record metadati della sessione di chiamata, ovvero il documento JSON emesso da UJET al termine di ogni chiamata vocale. UJET consegna il record all'integrazione CRM come corpo del comando di fine sessione e lo scrive nella configurazione di archiviazione esterna come file metadata.json. Ogni chiamata produce esattamente un record. Il id di primo livello identifica in modo univoco ogni record. Utilizza questo schema per importare record nei sistemi downstream, convalidare i payload ricevuti o mappare i campi sulle colonne del data warehouse.

Root dello schema

Il record dei metadati della sessione di chiamata è un singolo oggetto JSON che rappresenta una sessione di chiamata vocale. Tre concetti di primo livello determinano l'identità e la forma del record.

Chiave primaria: id (numero intero)

L'id di primo livello identifica in modo univoco la sessione di chiamata all'interno del tenant. Esiste un record per chiamata. Tutti gli altri campi di primo livello, array e oggetti nidificati descrivono gli attributi della chiamata identificata da id.

Discriminatore del gestore: agent_info (oggetto, oneOf)

Un singolo oggetto la cui forma varia a seconda dell'ultimo operatore che ha gestito la chiamata. Le due varianti sono mutuamente esclusive: il record contiene una sola variante:

  • Variante con agente umano: presente se l'ultima chiamata è stata gestita da un agente umano. Contiene email, first_name, last_name e agent_number, oltre ai campi condivisi id, name e avatar_url.

  • Variante dell'agente virtuale: presente se l'ultima chiamata è stata gestita da un agente virtuale. Contiene va_alias e omette email, first_name, last_name e agent_number.

Per rilevare quale variante contiene un record, controlla la presenza di un campo specifico per la variante, in genere agent_info.email per la variante dell'agente umano o agent_info.va_alias per la variante dell'agente virtuale. Per la forma completa di ogni variante, consulta agent e virtual_agent.

Discriminatori di forma della chiamata: call_type, session_type, session_type_v2 (stringa)

Tre visualizzazioni parallele dello stesso tipo di chiamata sottostante. Non sono mai in disaccordo sul tipo di chiamata che rappresenta un record; differiscono solo nel vocabolario utilizzato per denominare il tipo di chiamata.

  • call_type utilizza il vocabolario enum precedente (ad esempio Voice Inbound (App), Voice Outbound o Voice Internal).

  • session_type restituisce sempre la stessa stringa di call_type. UJET fornisce questo campo per la compatibilità con le versioni precedenti con le integrazioni che utilizzano questo campo; consideralo un alias deprecato di call_type. Consulta Controllo delle versioni e ritiri.

  • session_type_v2 utilizza il vocabolario enum corrente. Questo vocabolario estende il vocabolario call_type con distinzioni in entrata più granulari, ad esempio Voice Inbound (Mobile) e Voice Inbound (IVR using Mobile) anziché Voice Inbound (App) e Voice Inbound (IVR using App). Per i tipi di chiamata che non hanno un valore specifico per la versione 2, session_type_v2 restituisce la stessa stringa di call_type. Le nuove integrazioni devono analizzare session_type_v2.

Per i valori di ogni campo, vedi Informazioni di base.

Informazioni principali

Queste proprietà acquisiscono le informazioni principali della chiamata:

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

  • call_uuid (stringa o null): un identificatore univoco che correla una chiamata tra i tenant di origine e di ricezione nelle interazioni di routing dinamico delle chiamate (DCR). Entrambe le gambe di una chiamata DCR condividono lo stesso valore call_uuid, consentendo ai clienti di collegare i dati tra gli ambienti. Il campo è null o vuoto per qualsiasi chiamata che non sia un'interazione DCR e per le chiamate effettuate prima che UJET aggiungesse il campo.

  • lang (stringa): il codice lingua ISO 639 per la chiamata (ad esempio, "en" per l'inglese o "es" per lo spagnolo). Questo codice ti aiuta a eseguire analisi e report specifici per la lingua.

  • call_type (stringa): il tipo di chiamata, utilizzando il vocabolario dei tipi legacy. I valori includono "Chiamata in entrata (app)", "Chiamata in entrata (web)", "Chiamata in entrata (IVR)", "Chiamata in entrata (IVR tramite app)", "Chiamata in entrata (API)", "Chiamata in entrata (diretta)", "Chiamata in entrata (estensione)", "Chiamata pianificata (app)", "Chiamata pianificata (web)", "Chiamata pianificata (API)", "Richiamata vocale", "Richiamata vocale (web)", "Chiamata in uscita", "Chiamata in uscita (API)", "Chiamata in uscita (diretta)", "Chiamata in uscita (UCaaS)", "Chiamata interna", "Campagna vocale (Acqueon)", "Campagna vocale (<nome brand>)" e "Chiamata pianificata con operatore".

  • session_type (stringa): un duplicato di call_type (stessi valori) che UJET conserva per la compatibilità con le versioni precedenti. Consulta Controllo delle versioni e ritiri: duplicati legacy.

  • session_type_v2 (stringa): il tipo di chiamata, utilizzando il vocabolario corrente. Perfeziona i valori di call_type con distinzioni in entrata più granulari (ad esempio, "Inbound vocale (cellulare)" e "Inbound vocale (IVR tramite cellulare)" al posto di "Inbound vocale (app)" e "Inbound vocale (IVR tramite app)"). I valori includono "Voice Inbound (Mobile)", "Voice Inbound (Web)", "Voice Inbound (IVR)", "Voice Inbound (IVR using Mobile)", "Voice Inbound (API)", "Voice Inbound (Direct)", "Voice Inbound (Extension)", "Voice Scheduled (Mobile)", "Voice Scheduled (Web)", "Voice Scheduled (API)", "Voice Callback", "Voice Callback (Web)", "Voice Outbound", "Voice Outbound (API)", "Voice Outbound (Direct)", "Voice Outbound (UCaaS)", "Voice Internal", "Voice Campaign (Acqueon)", "Voice Campaign (<your brand name>)" e "Agent Scheduled Call".

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

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

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

  • assigned_at (stringa, data/ora o null): il timestamp in cui UJET ha assegnato la chiamata a un agente o null se UJET non ha assegnato la chiamata.

  • connected_at (stringa, data/ora o null): il timestamp della connessione della chiamata.

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

  • scheduled_at (stringa, data/ora o null): il timestamp in cui UJET ha pianificato la chiamata o null se la chiamata era immediata.

  • updated_at (stringa, data e ora): il timestamp dell'ultimo aggiornamento dei dati delle chiamate da parte di UJET.

  • wait_duration (numero intero o null): il tempo totale trascorso dal consumatore in coda durante l'intera chiamata, in secondi, o null se UJET non ha registrato alcun tempo di attesa. Per il tempo di attesa suddiviso per singolo segmento, consulta l'array queue_durations (Durate delle code). Consulta Controllo delle versioni e deprecazioni: nomenclatura del campo Tempo di attesa.

  • call_duration (integer or null): la durata totale della chiamata, in secondi.

  • hold_duration (numero intero o null): il tempo totale trascorso dal consumatore in attesa, in secondi, o null se non è stato necessario attendere.

  • rating (numero intero o null): la valutazione della soddisfazione del cliente (CSAT) inviata dal consumatore o null se il consumatore non ha inviato una valutazione.

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

  • voip_provider (stringa): il fornitore VoIP per la chiamata. (Nota: questo campo è obsoleto e restituisce sempre "deprecated".)

  • out_ticket_id (stringa o null): l'ID della richiesta creata da UJET nel sistema CRM esterno.

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

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

  • verified (booleano): indica se l'azione smart di verifica ha verificato l'interazione.

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

  • recording_permission (stringa o null): lo stato dell'autorizzazione di registrazione del consumatore. Valori possibili: "not_asked", "granted", "denied".

  • voicemail_reason (stringa): il motivo di un messaggio vocale, se applicabile. Le opzioni includono "not_voicemail", "temporary_redirection" e "after_hour_deflection".

  • disconnected_by (stringa o null): indica chi ha terminato la chiamata. Valori possibili: disconnected_by_unknown, disconnected_by_agent, disconnected_by_end_user, disconnected_by_virtual_agent, disconnected_by_system.

  • fail_reason (stringa o null): il motivo per cui una chiamata non è andata a buon fine o "nothing" per le chiamate che non hanno avuto esito negativo. I valori possibili includono nothing, unknown, expired, eu_canceled, eu_rejected, eu_abandoned, eu_in_menu_abandoned, eu_busy, eu_wrong_number, eu_no_answer, eu_noti_failed, ag_canceled, ag_ignored, ag_mic_no_device, ag_mic_denied, voip_twilio_error, voip_tokbox_error, voip_invalid_token, voip_conn_general, voip_conn_timeout, voip_conn_signal.

  • fail_details (stringa o valore null): dettaglio aggiuntivo leggibile che accompagna fail_reason, se disponibile.

  • adapter_fail_code (integer o null): codice numerico corrispondente a fail_reason a livello di chiamata. Null se la chiamata non è andata a buon fine. La stessa enumerazione viene utilizzata per adapter_fail_code per partecipante nella Sezione 17.

  • adapter_fail_message (stringa o null): messaggio leggibile da una persona corrispondente a adapter_fail_code. Null se la chiamata non è andata a buon fine.

  • support_number (stringa o null): il numero di telefono che il consumatore ha composto per contattare il contact center, nel formato E.164. Compilato per le chiamate originate da IVR; potrebbe essere nullo per altri canali.

  • queue_priority_level (numero intero; presente solo quando la priorità della coda è attivata nel tuo account): la priorità della coda assegnata alla chiamata.

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 operatore umano o un operatore virtuale. Utilizza la parola chiave oneOf per specificare che può essere di due tipi.

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

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

      • agent_number (stringa o 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 univoco dell'agente virtuale.

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

      • avatar_url (stringa, URI o null): l'URL dell'immagine dell'avatar dell'agente virtuale.

      • va_alias (stringa o null): l'alias del display per l'agente virtuale, se ne hai impostato uno. Sempre presente nel payload; null quando non è impostato alcun alias.

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

    • id (integer): l'ID univoco del menu.

    • name (stringa): il nome del menu.

    • parent_id (integer or null): l'ID del menu principale, se presente.

    • position (integer): la posizione del menu rispetto ad 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 che il consumatore ha esplorato.

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

    • name (stringa): una stringa di nomi di menu separati da una barra (ad esempio, "Assistenza/Fatturazione").

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

  • automation_redirection (oggetto; presente solo quando il primo log di deviazione della chiamata è associato a un gruppo di reindirizzamento): dettagli sul reindirizzamento della coda basato sulla percentuale che ha influito sul routing di questa chiamata.

    • percent_redirection (booleano): indica se hai attivato il reindirizzamento basato sulla percentuale nel menu di origine.

    • redirection_group (array): array di un elemento contenente i dettagli del gruppo di reindirizzamento:

      • group_label (stringa): etichetta leggibile per il gruppo di reindirizzamento (ad esempio "Gruppo di reindirizzamento 1").

      • destination (oggetto o null): la destinazione di reindirizzamento che hai configurato nel gruppo.

      • after_hours (booleano o null): indica se hai attivato le opzioni di deviazione al di fuori dell'orario di lavoro nel gruppo.

      • ah_destination (oggetto o null): la destinazione di reindirizzamento al di fuori dell'orario di lavoro che hai configurato nel gruppo.

Dettagli utente finale

  • end_user (oggetto o null): informazioni sul consumatore:

    • id (numero intero o nullo): l'ID interno del consumatore.

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

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

Dati personalizzati e forniti dall'SDK

  • customer_flag (oggetto; presente solo quando il sito web ha superato i dati di autenticazione personalizzati): attributi di dati personalizzati correlati all'autenticazione che l'app o il sito web del consumatore ha superato all'inizio della sessione. Il payload include solo il sottoinsieme che designi come parametri di autenticazione.

  • api_dap_request (oggetto; presente solo quando attivi i parametri dei dati e li configuri per l'inclusione nei metadati della sessione): uno snapshot dei valori dei parametri dei dati della chiamata, come li configuri nelle impostazioni dell'API esterna del tuo account. I tipi di chiavi e valori dipendono dalla configurazione dei parametri dei dati.

  • form_responses (array; presente solo quando il consumatore ha inviato almeno una risposta a un modulo): le risposte raccolte dai moduli dell'SDK in-call durante la sessione. Ogni voce contiene:

    • id (stringa o numero intero): identificatore della risposta a un modulo.

    • title (stringa): titolo del modulo mostrato al consumatore.

    • smart_action_id (numero intero o null): identificatore dell'azione intelligente che ha attivato il modulo, se presente.

    • questions (array): le coppie di domanda e risposta raccolte.

Allegati

  • photos (array): foto caricate dal consumatore durante la chiamata.

    • id (integer): identificatore univoco della foto.

    • photo_type (stringa): tipo o origine della foto (ad esempio "foto").

    • url (stringa, uri): URL della foto archiviata.

    • smart_action_type (stringa o null): l'azione intelligente che ha prodotto la foto, se presente.

    • transfer_id (numero intero o null): l'ID evento di trasferimento per la foto, se il consumatore l'ha caricata dopo un trasferimento.

  • videos (array): video caricati dal consumatore durante la chiamata.

    • id (numero intero): identificatore univoco del video.

    • url (stringa, uri): URL del video archiviato.

    • smart_action_type (stringa o null): l'azione smart che ha prodotto il video, se presente.

    • transfer_id (integer or null): The transfer event ID for the video, if the consumer uploaded it after a transfer.

Deviazione delle chiamate

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

  • deflection_details (array): fornisce un log dettagliato dei reindirizzamenti durante la chiamata. Il campo di deviazione all'interno di ogni voce utilizza l'enumerazione definita in Definizioni: deviazione. Ogni voce include:

    • id (integer): identificatore univoco per il record del log di deviazione.

    • call_id (integer): identificatore univoco della chiamata.

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

    • deflection (stringa; vedi Definizioni: deviazione per i valori consentiti): 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 è iniziata la deviazione.

    • to_menu_path (oggetto o null): percorso del menu a cui UJET ha reindirizzato la chiamata.

    • to_sip_uri (stringa; presente solo quando UJET ha deviato la chiamata a una destinazione SIP): URI SIP a cui UJET ha deviato la chiamata, se applicabile.

    • to_sip_headers (oggetto; presente solo quando UJET ha deviato la chiamata a una destinazione SIP): intestazioni SIP con cui UJET ha deviato la chiamata, se applicabile.

Trasferimenti

  • transfers (array): una voce per ogni evento di trasferimento durante la chiamata. Registra sia i trasferimenti a caldo che a freddo tra agenti, agenti virtuali e menu.

    • id (integer): identificatore univoco del trasferimento.

    • status (stringa): stato attuale del trasferimento (ad esempio, trasferimento in corso, connesso o non riuscito).

    • fail_reason (stringa): motivo per cui il trasferimento non è riuscito o "nothing" se non è fallito.

    • created_at (stringa, data e ora): quando è iniziato il trasferimento.

    • assigned_at (stringa, data/ora o null): quando UJET ha assegnato il trasferimento al destinatario.

    • connected_at (stringa, data/ora o null): quando il trasferimento è connesso.

    • updated_at (stringa, data e ora): l'ultima volta che UJET ha aggiornato il record di trasferimento.

    • call_duration (integer): durata della chiamata del segmento trasferito, in secondi.

    • wait_duration (numero intero): tempo di attesa del consumatore durante il trasferimento, in secondi.

    • deflection (stringa): tipo di deviazione associato al trasferimento, se presente.

    • answer_type_path (stringa o null): percorso che descrive la risoluzione della chiamata trasferita.

    • from_menu_path / to_menu_path (oggetto o null): percorso del menu prima e dopo il trasferimento; stessa forma di menu_path in Definizioni.

    • from_agent / to_agent (oggetto o null): agente umano su ciascun lato del trasferimento; stessa forma dell'oggetto agent in Definizioni.

    • from_virtual_agent / to_virtual_agent (oggetto o null): agente virtuale su ciascun lato del trasferimento; stessa forma dell'oggetto virtual_agent in Definizioni.

    • from_queue_priority_level / to_queue_priority_level (numero intero o null): priorità della coda prima e dopo il trasferimento. Presente solo quando attivi la priorità della coda sul tuo account.

Durate di gestione delle chiamate

  • handle_durations (array): un array di oggetti, ognuno dei quali rappresenta un segmento della chiamata gestita da un agente. Ciò supporta l'analisi del tempo di gestione dell'agente.

    • id (integer): identificatore univoco 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 pre-chiamata.

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

    • menu_path_id (integer o null): ID del percorso del menu.

    • menu_path (stringa): il nome del percorso del menu.

    • lang (stringa): lingua utilizzata.

    • barged (booleano): indica se il supervisore ha interrotto la chiamata.

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

    • transfer_id (integer or 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 o null): 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 del consumatore mentre l'agente si connette durante questa fase.

    • session_breakthrough (oggetto; presente solo quando la chiamata ha superato lo stato non disponibile di un agente): dettagli sull'assegnazione della chiamata che ha superato 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 consumatore era in coda. Ciò supporta l'analisi dei tempi di attesa e dei livelli di servizio.

    • id (integer): identificatore univoco 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): il 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 or null): 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 del livello di servizio ("excluded", "in_sla", "not_in_sla").

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

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

Riassegnazioni dall'agente virtuale all'agente umano

  • escalations (array): ogni voce rappresenta una riassegnazione da un agente virtuale a un agente umano.

    • id (integer): identificatore univoco della riassegnazione.

    • status (stringa): stato attuale (ad esempio, riassegnazione, riassegnato o non riuscito).

    • reason (stringa): motivo per cui la sessione è stata riassegnata.

    • created_at (stringa, data e ora): quando è iniziato il riassegnamento.

    • escalated_at (stringa, data/ora o null): quando la riassegnazione è stata completata.

    • from_virtual_agent (oggetto o null): agente virtuale che ha riassegnato la chiamata. Stessa forma dell'oggetto virtual_agent in Definizioni.

    • to_agent (oggetto o null): l'agente umano a cui è stata riassegnata la chiamata. Stessa forma dell'oggetto agent in Definizioni.

    • from_menu_path / to_menu_path (oggetto o null): percorso del menu prima e dopo il riassegnamento.

Riassegnazioni dell'agente virtuale

  • virtual_agent_deflected_escalations (array): dettagli delle riassegnazioni evitate dagli agenti virtuali.

    • id (integer): identificatore univoco.

    • deflection (stringa): tipo di deviazione.

    • escalation_id (integer): identificatore dell'evento di riassegnazione.

    • escalation_reason (stringa): motivo della riassegnazione.

    • escalated_at (stringa, data e ora): timestamp dell'escalation.

    • menu_path_id (integer): ID percorso menu.

    • menu_path (stringa): percorso del menu.

    • lang (stringa): lingua.

    • virtual_agent (oggetto): dettagli dell'agente virtuale. Consulta la sezione Definizioni.

Durate di gestione dell'agente virtuale

  • virtual_agent_handle_durations (array): segmenti di tempo in cui un agente virtuale ha gestito la chiamata.

    • id (integer): identificatore univoco.

    • virtual_agent (oggetto): dettagli dell'agente virtuale. Consulta la sezione Definizioni.

    • call_duration (integer): la durata del segmento.

    • escalation_reason (stringa): motivo della riassegnazione.

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

    • sentiment (integer): il sentiment del consumatore.

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

    • fallback_response_count (integer): conteggio delle risposte di riserva.

    • initiated_by (stringa): come è iniziata la sessione dell'agente virtuale.

    • menu_path_id (integer): ID percorso menu.

    • menu_path (stringa): percorso del menu.

    • lang (stringa): lingua.

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

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

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

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

Durate di gestione dei consumatori

  • consumer_handle_durations (array): le durate della chiamata del consumatore.

    • id (integer): identificatore univoco.

    • call_duration (integer): durata del segmento di consumatori.

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

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

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

Durate degli eventi dei consumatori

  • consumer_event_durations (array): dettagli degli eventi di chiamata del consumatore (ad esempio CSAT o pagamento).

    • id (integer): identificatore univoco.

    • duration (integer): durata dell'evento.

    • type (stringa): tipo di evento.

    • event (stringa): risultato dell'evento.

    • menu_path_id (integer): 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 nel menu dei consumatori

  • consumer_in_menu_durations (array): durate delle interazioni dei consumatori all'interno dei menu.

    • id (integer): identificatore univoco.

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

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

    • menu_path_id (integer): 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 ogni partecipante alla chiamata (ad esempio, il consumatore, l'agente o l'agente virtuale).

    • id (integer): identificatore univoco del partecipante.

    • type (stringa): tipo di partecipante ("end_user", "agent", "virtual_agent" e così via).

    • 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): identificatore del consumatore se il partecipante è il consumatore.

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

    • virtual_agent_params (oggetto; presente solo quando configuri metadati personalizzati dell'agente virtuale per l'inclusione): metadati personalizzati utilizzati dall'agente virtuale.

    • status (stringa): stato del partecipante ("waiting", "connected", "finished" e così via).

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

    • connected_at (stringa, data/ora o null): timestamp di connessione del partecipante.

    • phone_number (stringa; presente solo per i partecipanti consumatori): numero di telefono del partecipante.

    • call_id (integer): identificatore della chiamata.

    • call_duration (integer o null): la durata della chiamata per il partecipante.

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

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

    • adapter_fail_code (integer o null): codice numerico corrispondente al motivo dell'errore.

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

    • agent_assist (oggetto; presente solo nei partecipanti agenti quando configuri l'assistente agente): impostazioni dell'assistente agente attive per questo partecipante.

    • virtual_agent (oggetto; presente solo nei partecipanti dell'agente virtuale): Dettagli dell'agente virtuale che funge da partecipante, diverso da agent_info di primo livello e da virtual_agent_params.

    • caller_id (stringa; presente solo quando abiliti l'ID chiamante nell'intestazione SIP sul tuo account e solo per i partecipanti consumer): ID chiamante che UJET estrae dalle intestazioni SIP in entrata per questo partecipante consumer.

    • sip_headers (oggetto o null): intestazioni SIP associate a questo partecipante. Sempre presente nel payload; null quando UJET non acquisisce le intestazioni.

    • location (stringa o null; presente solo nei partecipanti agenti): la posizione dell'agente.

    • location_id (numero intero o null; presente solo nei partecipanti agenti): l'ID località.

    • email (stringa, email; presente solo nei partecipanti agenti): l'indirizzo email dell'agente.

    • first_name (stringa o null; presente solo nei partecipanti agenti): il nome dell'agente.

    • last_name (stringa o null; presente solo nei partecipanti agenti): il cognome dell'agente.

    • middle_name (stringa o null; presente solo nei partecipanti agenti): il secondo nome dell'agente.

    • teams (array; presente solo nei partecipanti agenti): array di oggetti { id, name } per i team dell'agente.

Registrazioni

  • recordings (array): informazioni sulla registrazione dell'audio delle chiamate.

    • id (integer): identificatore univoco della registrazione.

    • call_id (integer): identificatore della chiamata.

    • conference_sid (stringa o null): identificatore della chiamata del provider VoIP.

    • duration (numero intero o null): durata della registrazione.

    • recording_type (stringa): tipo di registrazione.

    • redaction_times (array): segmenti di tempo oscurati.

      • start (stringa, data e ora): l'inizio dell'intervallo di oscuramento.

      • end (stringa, data e ora): quando è terminato l'intervallo di oscuramento.

      • duration (numero intero): durata della redazione, in secondi.

      • start_agent_id (integer o null): l'agente che ha avviato la redazione.

      • end_agent_id (integer or null): The agent who ended the redaction.

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

  • post_processed_recordings (array; presente solo quando attivi la registrazione post-elaborata sul tuo account): registrazioni audio che la post-elaborazione produce (ad esempio la conversione del formato o la redazione).

    • id (integer): identificatore univoco della registrazione post-elaborata.

    • call_id (integer): identificatore della chiamata.

    • duration (numero intero): durata della registrazione, in secondi.

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

    • recording_file_name (stringa): nome file dell'asset audio post-elaborato.

    • recording_url (stringa, uri): URL del file audio post-elaborato.

    • agent_id (numero intero o stringa): identificatore dell'agente associato al segmento.

    • virtual_agent_id (integer o stringa): identificatore dell'agente virtuale associato al segmento, se presente.

    • conversation_id (stringa): identificatore che mette in correlazione questa registrazione con il relativo record di conversazione.

  • segments (array; presente solo quando attivi le registrazioni degli approfondimenti post-elaborati sul tuo account): segmenti audio (e registrazione dello schermo facoltativa) per partecipante che il sistema produce per le pipeline di approfondimenti downstream.

    • id (integer): identificatore univoco del segmento.

    • call_id (integer): identificatore della chiamata.

    • duration (integer): durata del segmento, in secondi.

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

    • audio_file_name (stringa): nome file della risorsa audio del segmento.

    • audio_url (stringa, uri): URL del file audio del segmento.

    • agent_id (numero intero o stringa): identificatore dell'agente associato al segmento.

    • virtual_agent_id (integer o stringa): identificatore dell'agente virtuale associato al segmento, se presente.

    • participant_id (numero intero o stringa): identificatore del partecipante a cui appartiene il segmento.

    • conversation_id (stringa): identificatore che mette in correlazione questo segmento con il relativo record di conversazione.

    • screen_recording_url (stringa, URI o null): URL dell'asset di registrazione dello schermo corrispondente. Presente solo quando attivi la registrazione dello schermo sul tuo account.

    • screen_recording_file_name (stringa o null): nome file della registrazione dello schermo. Presente alle stesse condizioni di screen_recording_url.

Eventi offerta

  • offer_type (stringa o null): come UJET ha offerto la chiamata all'agente.

  • offer_events (array): eventi in cui UJET ha offerto la chiamata agli agenti.

    • casting_time (stringa, data e ora): l'ora in cui UJET ha offerto la chiamata.

    • group (stringa): gruppo a cui UJET ha offerto la chiamata.

Altri dettagli

  • answer_type (stringa o null): come è stata risolta la chiamata ("manuale" o "automatica").

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

  • wait_time_sms (array; presente solo quando in questa chiamata si sono verificate interazioni SMS relative al tempo di attesa): interazioni SMS inviate da UJET al consumatore in merito al tempo di attesa previsto. Ogni voce contiene:

    • transfer_id (numero intero o null): identificatore dell'evento di trasferimento, se associato a un trasferimento.

    • status (stringa): stato dell'SMS. Valori possibili: not_triggered, triggered, triggered_allowed, triggered_denied, triggered_no_selection, triggered_sent, triggered_failed.

    • received (booleano): indica se il consumatore ha ricevuto l'SMS.

  • in_call_sms (array; presente solo quando si sono verificate interazioni SMS durante questa chiamata): interazioni SMS durante la chiamata. Ogni voce contiene:

    • transfer_id (numero intero o null): identificatore dell'evento di trasferimento, se associato a un trasferimento.

    • preset_sent (booleano): indica se UJET ha inviato un messaggio preimpostato.

    • custom_sent (booleano): indica se l'agente ha inviato un messaggio personalizzato (testo libero).

    • received (booleano): indica se UJET ha ricevuto un SMS dal consumatore.

  • dispositions (array; presente solo quando attivi i codici o le note di tempo di wrap up sul tuo account): codici e note di tempo di wrap up registrati dagli agenti. Ogni voce include campi visualizzati dinamicamente in base alla configurazione del tempo di wrap up:

    • user_id (integer): identificatore dell'agente.

    • transfer_id (numero intero o null): identificatore dell'evento di trasferimento, se registrato dopo un trasferimento.

    • participant_id (integer): identificatore partecipante.

    • note (stringa): nota dell'agente in formato libero.

    • original_note (stringa): la versione originale (pre-modifica) della nota.

    • code (stringa): nome in codice della disposizione.

    • ujet_code_id (numero intero o stringa vuota): l'ID UJET del codice di disposizione, una chiave stabile per il codice (il nome visualizzato del codice può cambiare). Stringa vuota quando non disponibile.

    • list (stringa): il nome dell'elenco a cui appartiene il codice.

    • list_path (stringa): percorso separato da barre dell'elenco di codici.

    • ujet_list_id (numero intero o stringa vuota): l'ID UJET dell'elenco a cui appartiene il codice di disposizione, una chiave stabile per l'elenco. Stringa vuota se non disponibile.

    • custom_list_id (stringa o numero intero): identificatore dell'elenco definito dal cliente, se mappato.

    • custom_code_id (stringa o numero intero): identificatore del codice definito dal cliente, se mappato.

  • email (stringa, email o null): indirizzo email del consumatore.

  • feedback (stringa o valore null): feedback del consumatore.

  • 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.

  • in_queue_wait_time_va (array; presente solo quando attivi il monitoraggio del tempo di attesa in coda per gli agenti virtuali nel tuo account e solo quando si è verificato almeno un riassegnazione dell'agente virtuale preservato): intervalli di tempo in cui il consumatore ha atteso in coda mentre UJET ha preservato un agente virtuale per lui dopo il riassegnazione. Ogni voce contiene:

    • start (stringa, data e ora): l'inizio dell'attesa in coda.

    • end (stringa, data/ora o null): quando è terminata l'attesa in coda; null se non è stata completata.

    • duration (numero intero o null): durata dell'attesa in secondi; null quando end è null.

  • auto_session_summaries (array; presente solo quando attivi il riepilogo delle conversazioni sul tuo account e UJET ha generato correttamente un riepilogo): Riepiloghi della sessione generati con l'AI che UJET salva nel record CRM. Ogni voce contiene:

    • user_id (integer): identificatore del partecipante agente a cui è associato il riepilogo.

    • participant_id (integer): identificatore partecipante.

    • session_summary (stringa): il testo del riepilogo.

    • session_summary_sections (array o oggetto): il riepilogo in sezioni strutturate, se disponibile.

  • sip_headers (oggetto; presente solo quando abiliti l'acquisizione delle intestazioni SIP sul tuo account e la configuri per l'inclusione nei metadati della sessione): intestazioni SIP in entrata acquisite da UJET per la chiamata. Le chiavi e i valori riflettono le intestazioni SIP ricevute dal fornitore di telefonia upstream.

Definizioni

Questa sezione definisce ogni sottoschema una sola volta. I gruppi di proprietà che fanno riferimento ai link dei sottoschemi rimandano a queste definizioni anziché ridefinire le loro forme in linea.

Descrive un percorso di menu gerarchico attraversato dalla chiamata. Per l'elenco completo dei campi, consulta Navigazione nel menu.

Riferimento da: il campo menu_path di primo livello; ogni transfers[].from_menu_path e transfers[].to_menu_path; ogni escalations[].from_menu_path e escalations[].to_menu_path; ogni deflection_details[].from_menu_path e deflection_details[].to_menu_path.

agente (oggetto)

Descrive un agente umano. Questo oggetto è una delle due varianti del discriminatore agent_info di primo livello (vedi Radice dello schema). Consulta la sezione Informazioni sull'agente e sull'agente virtuale per l'elenco completo dei relativi campi.

Riferimento da: il campo agent_info quando un operatore umano ha gestito l'ultima chiamata; ogni transfers[].from_agent e transfers[].to_agent; ogni escalations[].to_agent.

virtual_agent (oggetto)

Descrive un agente virtuale. Questo oggetto è una delle due varianti del discriminatore agent_info di primo livello (vedi Radice dello schema). Consulta la sezione Informazioni sull'agente e sull'agente virtuale per l'elenco completo dei relativi campi.

Riferimento da: il campo agent_info quando un agente virtuale ha gestito l'ultima chiamata; ogni transfers[].from_virtual_agent e transfers[].to_virtual_agent; ogni escalations[].from_virtual_agent; ogni virtual_agent_handle_durations[].virtual_agent; ogni virtual_agent_deflected_escalations[].virtual_agent.

deflection (stringa, enum)

Lo stato di deviazione di una chiamata o di un segmento di chiamata. I valori seguono un pattern di denominazione &lt;trigger&gt;_&lt;destination&gt;, in cui il prefisso identifica la condizione che ha attivato la deviazione (ad esempio, sovra-capacità, orario non lavorativo o reindirizzamento temporaneo) e il suffisso identifica la destinazione o il trattamento (ad esempio, segreteria, coda, telefono o messaggio).

Suffissi comuni delle destinazioni:

  • _phone: instrada la chiamata a un numero di telefono esterno.

  • _voicemail: indirizza la chiamata alla segreteria.

  • _message: riproduce un messaggio informativo.

  • _message_only: riproduce un messaggio e termina la chiamata senza ulteriore instradamento.

  • _callback: offre una richiamata programmata.

  • _wait: mantiene il chiamante in attesa.

  • _queue: inserisce la chiamata in una coda diversa.

  • _sip: indirizza la chiamata a una destinazione SIP.

  • _extension: indirizza la chiamata a un'estensione.

  • _phone_with_extension: instrada la chiamata a una destinazione telefonica con un'estensione.

Valori consentiti, raggruppati per famiglia di trigger:

  • Nessuna deviazione: no_deflection, deflecting.

  • Capacità eccessiva: quando la coda ha superato la soglia di capacità: over_cap_phone, over_cap_voicemail, over_cap_callback, over_cap_wait, over_cap_queue, over_cap_message, over_cap_sip, over_cap_extension, over_cap_phone_with_extension.

  • Al di fuori dell'orario di apertura: quando la chiamata è arrivata al di fuori dell'orario di apertura configurato del menu: after_hours_voicemail, after_hours_phone, after_hours_message_only, after_hours_queue, after_hours_message, after_hours_sip, after_hours_extension, after_hours_phone_with_extension.

  • Reindirizzamento temporaneo: quando configuri un reindirizzamento temporaneo nel menu: temp_redirection_phone, temp_redirection_message, temp_redirection_voicemail, temp_redirection_queue, temp_redirection_sip, temp_redirection_extension, temp_redirection_phone_with_extension.

  • IVR pre-sessione: ivr_presession_deflection.

  • Avviata dall'agente virtuale: quando un agente virtuale ha reindirizzato o trasferito la chiamata: va_redirection_phone, va_redirection_sip, va_third_party_phone, va_third_party_sip.

  • Chiamata interna fuori orario: internal_call_after_hours_message, internal_call_after_hours_queue, internal_call_after_hours_phone, internal_call_after_hours_extension, internal_call_after_hours_sip, internal_call_after_hours_voicemail.

  • Capacità eccessiva di chiamate interne: internal_call_over_capacity_message, internal_call_over_capacity_queue, internal_call_over_capacity_phone, internal_call_over_capacity_extension, internal_call_over_capacity_sip, internal_call_over_capacity_voicemail, internal_call_over_capacity_wait.

  • Reindirizzamento automatico delle chiamate interne: internal_call_automatic_redirection_message, internal_call_automatic_redirection_queue, internal_call_automatic_redirection_phone, internal_call_automatic_redirection_extension, internal_call_automatic_redirection_sip, internal_call_automatic_redirection_voicemail.

  • Trasferimento di chiamata al di fuori dell'orario di lavoro: call_transfer_after_hours_message, call_transfer_after_hours_queue, call_transfer_after_hours_phone, call_transfer_after_hours_extension, call_transfer_after_hours_sip, call_transfer_after_hours_voicemail.

  • Trasferimento di chiamata in eccesso: call_transfer_over_capacity_message, call_transfer_over_capacity_queue, call_transfer_over_capacity_phone, call_transfer_over_capacity_extension, call_transfer_over_capacity_sip, call_transfer_over_capacity_voicemail, call_transfer_over_capacity_wait.

  • Reindirizzamento automatico del trasferimento di chiamata: call_transfer_automatic_redirection_message, call_transfer_automatic_redirection_queue, call_transfer_automatic_redirection_phone, call_transfer_automatic_redirection_extension, call_transfer_automatic_redirection_sip, call_transfer_automatic_redirection_voicemail.

  • Arresto di emergenza: quando un amministratore ha attivato un arresto di emergenza: emergency_shutdown, emergency_shutdown_message, emergency_shutdown_after_hours, emergency_shutdown_over_capacity.

  • Dynamic call routing (DCR): dcr_transferred, dcr_missed, dcr_redirected, dcr_finished.

Riferimento da: il campo deflection di primo livello; ogni deflection_details[].deflection; ogni transfers[].deflection.

Controllo delle versioni e deprecazioni

Lo schema dei metadati della sessione di chiamata supporta l'evoluzione compatibile con le versioni precedenti. UJET può aggiungere nuovi campi e array in qualsiasi momento. Le integrazioni devono ignorare le chiavi non riconosciute per garantire la continuità della funzionalità. I campi di questa sezione sono obsoleti, legacy o sostituiti in modo soft. Rimangono nel payload per compatibilità con le versioni precedenti, ma le nuove integrazioni devono seguire le indicazioni per ogni campo.

Campi ritirati

  • voip_provider (stringa) - Deprecato. Restituisce sempre la stringa letterale "deprecated". UJET non mostra più le informazioni sul fornitore alle integrazioni tramite questo documento. Non esiste un campo di sostituzione; se la tua integrazione deve identificare il provider di telefonia upstream, contatta il tuo team dedicato all'account.

Duplicati legacy

  • session_type (stringa) - Alias legacy di call_type. Restituisce sempre lo stesso valore di call_type e utilizza lo stesso vocabolario di enumerazione legacy. UJET conserva questo campo per la compatibilità con le versioni precedenti con le integrazioni che si basano su session_type. Le nuove integrazioni devono analizzare direttamente call_type oppure, per distinzioni in entrata più granulari, session_type_v2 (vedi Evoluzione del vocabolario di seguito).

Evoluzione del vocabolario

call_type e session_type_v2 descrivono lo stesso tipo di chiamata sottostante utilizzando due vocabolari diversi. UJET emette entrambi i campi in ogni record; non sono duplicati l'uno dell'altro:

  • call_type utilizza il vocabolario enum legacy. Valori come Voice Inbound (App) e Voice Inbound (IVR using App) coprono tutte le origini SDK mobile e in-app in un'unica etichetta. call_type non è deprecato. UJET continuerà a emettere questo campo, ma il suo vocabolario non acquisirà nuovi valori granulari.

  • session_type_v2 utilizza il vocabolario enum corrente. Introduce distinzioni in entrata più granulari, ad esempio Voice Inbound (Mobile) e Voice Inbound (IVR using Mobile), per i tipi di chiamate che hanno valori specifici della versione 2. Per i tipi di chiamata che non hanno un valore specifico per la versione 2, session_type_v2 restituisce la stessa stringa di call_type.

Le nuove integrazioni devono analizzare session_type_v2. I valori per ogni campo sono elencati in Informazioni di base.

Nomenclatura dei campi del tempo di attesa

Il documento dei metadati della sessione di chiamata riporta il tempo di attesa in coda in due ambiti, in due nomi di campi:

  • Totale chiamata: il campo wait_duration di primo livello contiene il tempo totale trascorso in coda dal consumatore durante l'intera chiamata.

  • Per segmento: ogni voce dell'array di primo livello queue_durations (Durate delle code) contiene il proprio campo queue_duration con il tempo di attesa per quel singolo segmento di coda.

Entrambi i nomi si riferiscono allo stesso tipo di misurazione (tempo trascorso in coda), ma in ambiti diversi. Il totale delle chiamate wait_duration riflette il tempo di attesa complessivo del consumatore, mentre i valori queue_duration per segmento descrivono ogni segmento della coda. Questo documento non emette un campo queue_duration di primo livello separato; i valori per segmento sono disponibili solo all'interno di queue_durations.