Metadati della sessione di chat

Questo documento descrive lo schema del record dei metadati della sessione di chat. Il record dei metadati è il documento JSON creato da Contact Center AI Platform per una sessione di chat di assistenza. CCAI Platform invia il record dei metadati alla tua integrazione CRM nell'ambito del comando di chat session-end. Quando attivi lo spazio di archiviazione esterno, la piattaforma CCAI scrive anche il record nella configurazione dello spazio di archiviazione esterno utilizzando un file metadata.json. Ogni chat genera un record, identificato in modo univoco dall'elemento id di primo livello. Utilizza questo schema per importare i record nei sistemi downstream, convalidare i payload ricevuti o mappare i campi alle colonne del data warehouse.

Radice dello schema

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

Primary key: id (integer)

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

Discriminatore del gestore: agent_info (oggetto, oneOf)

Un singolo oggetto la cui forma varia a seconda dell'ultimo gestore della chat. Le due varianti si escludono a vicenda: è presente solo una delle due:

  • Variante con agente umano: presente quando l'ultimo gestore della chat è stato 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 quando l'ultimo gestore della chat era un agente virtuale. Contiene va_alias e omette email, first_name, last_name e agent_number.

Per rilevare la variante di un record, controlla la presenza di un campo specifico della variante, in genere agent_info.email per la variante dell'agente umano o agent_info.va_alias per la variante dell'agente virtuale. Le definizioni complete di ogni variante sono riportate in Definizioni: agent e Definizioni: virtual_agent.

Discriminatori della forma della chat: chat_type, session_type, session_type_v2 (stringa)

Tre visualizzazioni parallele dello stesso tipo di chat sottostante. Non sono mai in disaccordo sul tipo di chat rappresentato da un record; differiscono solo nel vocabolario utilizzato per denominarlo.

  • chat_type: utilizza il vocabolario enum precedente, ad esempio Messaggistica in entrata (App Chat), Messaggistica (SMS) e Messaggistica (WhatsApp).

  • session_type: restituisce sempre la stessa stringa di chat_type. Esiste per la compatibilità con le versioni precedenti delle integrazioni che utilizzano questo campo come chiave; consideralo un alias deprecato di chat_type.

  • session_type_v2: utilizza il vocabolario enum corrente, che può includere distinzioni più dettagliate, come Messaggistica in entrata (chat mobile). Per i tipi di chat che non hanno un valore specifico per la versione 2, session_type_v2 restituisce la stessa stringa di chat_type. Le nuove integrazioni devono analizzare session_type_v2.

Per i valori di ciascun campo, consulta Informazioni di base.

Informazioni principali

  • id (integer): un identificatore univoco per ogni sessione di chat. Questa chiave primaria distingue una chat dall'altra.

  • lang (stringa): il codice lingua ISO 639 utilizzato durante la chat (ad esempio, "en" per l'inglese, "es" per lo spagnolo).

  • chat_typeI canali di comunicazione sono i mezzi attraverso i quali i messaggi vengono trasmessi dal mittente al destinatario. I valori includono "Messaging Inbound (App Chat)", "Messaging Inbound (Web Chat)", "Messaging (SMS)", "Messaging (WhatsApp)" e "Messaging (Apple Messaging for Business)".

  • session_type (stringa): un duplicato di chat_type (stessi valori), conservato per la compatibilità con le versioni precedenti. Consulta Controllo delle versioni e deprecazioni: duplicati legacy.

  • session_type_v2 (stringa): il tipo di chat, utilizzando il vocabolario del tipo corrente. Perfeziona i valori chat_type con distinzioni più dettagliate. I valori includono "Messaging Inbound (Mobile Chat)", "Messaging Inbound (Web Chat)", "Messaging (WhatsApp)", "Messaging (Apple Messaging for Business)", "Messaging (SMS)", "Messaging Inbound (SMS)", "Messaging Outbound (SMS)", "Messaging Outbound (SMS via API)", "Messaging Inbound (SMS Direct)", "Messaging Outbound (SMS Direct)" e "Messaging Outbound (SMS Direct via API)".

  • status (stringa): lo stato attuale della chat. Valori possibili: "queued", "selecting", "assigned", "va_assigned", "dismissed", "va_dismissed", "check_in_timeout", "finished", "no_response", "canceled" e "failed". (CCAI Platform segnala una chat terminata che non ha ricevuto risposta dal consumer come "no_response".)

  • sub_status (stringa o null): dettagli più specifici sullo stato della chat, se disponibili. Valori possibili: "selecting", "queued", "ongoing", "dismissed", "finished", "timeout", "deflected", "abandoned", "expired", "failed", "disconnected_by_agent", "disconnected_by_end_user", "no_messages", "no_messages_disconnected_by_agent", "no_messages_disconnected_by_end_user" e "end_user_opt_out".

  • created_at (stringa, data-ora): il timestamp di quando CCAI Platform ha creato la sessione di chat.

  • assigned_at (stringa, data-ora o null): il timestamp di quando la piattaforma CCAI ha assegnato la chat a un agente o null se non è stata assegnata.

  • ends_at (stringa, data-ora o null): il timestamp di fine della sessione di chat.

  • updated_at (stringa, data-ora): il timestamp relativo all'ultimo aggiornamento dei dati della chat da parte di CCAI Platform.

  • first_msg_sent_at (stringa, data-ora o null): il timestamp di invio del primo messaggio nella chat da parte di un partecipante.

  • last_msg_sent_at (stringa, data-ora o null): il timestamp di quando un partecipante ha inviato l'ultimo messaggio nella chat.

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

  • chat_duration (integer): la durata totale della chat, in secondi.

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

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

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

  • out_ticket_id (stringa o null): l'identificatore del ticket creato dalla piattaforma CCAI 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 chat (false).

  • fail_reason (stringa): il motivo di un eventuale errore durante la chat o "nothing" se la chat non ha avuto esito negativo. Valori possibili: "nothing", "unknown", "expired", "after_hours", "escalation_failed", "check_in_timed_out", "check_in_timed_out_expired", "expired_menu_selection", "end_user_opt_out", "over_cap_email", "group_deleted_no_substitute", "presession_deflection_unknown", "presession_deflection_timeout", "presession_deflection_message_delivery_failed", "sms_error" e "force_ended".

  • provider_type (stringa): il tipo di provider di chat utilizzato. Valori possibili: "unknown", "messaging", "twilio_conversations", "nexmo_conversations" e "ujet_conversations".

  • provider_channel_id (stringa o null): identificatore del canale specifico del provider per la chat.

  • message_count (integer): il numero totale di messaggi scambiati nella chat.

  • average_response_time (numero intero): il tempo medio impiegato dagli agenti per rispondere durante la chat, in secondi.

  • longest_response_time (numero intero): il tempo massimo impiegato da un agente per rispondere durante la chat, in secondi.

  • transcript (booleano): indica se esiste una trascrizione della chat per la sessione.

Informazioni su agenti e agenti virtuali

  • agent_info (oggetto): informazioni sull'agente umano o virtuale che ha gestito la chat per ultimo. Questo campo utilizza la parola chiave oneOf per specificare che può essere uno dei due tipi.

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

      • id (numero intero): 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 o null): l'URL dell'immagine 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 avatar dell'agente virtuale.

      • va_alias (stringa o null): l'alias di visualizzazione dell'agente virtuale, se configurato. Sempre presente nel payload; null se non è impostato alcun alias.

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

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

    • name (stringa): il nome del menu.

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

    • position (numero intero o null): la posizione del menu rispetto ad altri menu allo stesso livello.

    • deleted (booleano): indica se un amministratore ha eliminato il menu.

    • menu_type (stringa): il tipo di menu (ad esempio "sms_menu", "web_menu").

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

    • menu_path (oggetto o null): descrive il percorso gerarchico dei menu che il cliente ha esplorato.

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

    • name (stringa o null): una stringa di nomi di menu separati da barre (ad esempio, "Support/Billing") o null se il percorso del menu non è disponibile.

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

  • queue_priority_level (numero intero): la priorità della coda assegnata alla coda selezionata della chat. Presente solo quando la priorità della coda è attivata nel tuo account.

Dettagli utente finale

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

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

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

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

Flag dei clienti e dati forniti dall'SDK

  • customer_flag (oggetto): flag che contrassegnano attributi importanti del consumatore forniti o aggiornati dai sistemi esterni durante la sessione. Presente solo quando i sistemi esterni hanno fornito o aggiornato i flag dei clienti relativi all'autenticazione durante la sessione.

    • verified_customer (booleano): indica se un sistema esterno ha contrassegnato il consumatore come verificato.

    • bad_actor (booleano): indica se un sistema esterno ha segnalato il consumer come malintenzionato.

    • repeat_customer (booleano): indica se un sistema esterno ha contrassegnato il consumatore come cliente abituale.

  • custom_data_secured (oggetto o null): dati personalizzati con firma sicura forniti dall'SDK o dall'API Apps.

  • custom_data_not_secured (oggetto o null): dati personalizzati con firma non sicura forniti dall'SDK o dall'API Apps.

  • sip_headers (oggetto): intestazioni SIP in entrata acquisite per la chat. Le chiavi e i valori riflettono le intestazioni SIP ricevute dal provider upstream. Presente solo quando attivi l'acquisizione dell'intestazione SIP nel tuo account e la configuri in modo che venga visualizzata nei metadati della sessione

Allegati multimediali

  • photos (array): foto o screenshot associati alla chat.

    • id (integer): identificatore univoco della foto.

    • photo_type (stringa): il tipo di foto. I valori possibili includono "photo" e "screenshot".

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

    • smart_action_type (stringa o null): l'azione smart associata alla foto, se presente.

    • transfer_id (numero intero o null): identificatore dell'evento di trasferimento associato alla foto, se un partecipante l'ha caricata dopo un trasferimento completato.

  • videos (array): video associati alla chat.

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

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

    • smart_action_type (stringa o null): l'azione smart associata al video, se presente.

    • transfer_id (numero intero o null): identificatore dell'evento di trasferimento associato al video, se un partecipante lo ha caricato dopo un trasferimento completato.

Trasferimenti di chat

  • transfers (array): una voce per ogni evento di trasferimento durante la chat. Registra i trasferimenti tra agenti, agenti virtuali e menu.

    • id (integer): identificatore univoco del trasferimento.

    • status (stringa): stato attuale del trasferimento. I valori possibili includono "transferring", "transferred", "failed" e "deflected".

    • fail_reason (stringa): il motivo per cui il trasferimento non è riuscito o "nothing" se è riuscito. Valori possibili: "nothing", "timeout", "canceled", "ag_connection_timeout", "va_failure", "agent_detection_missed", "unknown" e "unreachable_phone_number".

    • created_at (stringa, data-ora): timestamp di inizio del trasferimento.

    • assigned_at (stringa, data/ora o null): timestamp di quando la piattaforma CCAI ha assegnato il trasferimento.

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

    • updated_at (stringa, data/ora o null): timestamp dell'ultimo aggiornamento del record di trasferimento da parte della piattaforma CCAI.

    • call_duration (numero intero o null): durata del segmento di chat trasferito, in secondi.

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

    • deflection (stringa): tipo di deviazione associato al trasferimento. Consulta Definizioni: deflection per i valori consentiti.

    • answer_type_path (stringa o null): percorso che descrive in che modo gli agenti o i menu hanno risposto alle chat di origine e di destinazione.

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

Durate di gestione delle chat

  • handle_durations (array): un array di oggetti, ciascuno dei quali rappresenta un segmento della chat gestito da un agente.

    • id (integer): identificatore univoco della durata di gestione.

    • agent_id (integer o null): identificatore dell'agente.

    • acw_duration (numero intero): durata del lavoro post-chat, in secondi.

    • chat_duration (numero intero): durata della chat durante questo segmento, in secondi.

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

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

    • lang (stringa): lingua utilizzata.

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

    • transfer_id (integer o null): ID del trasferimento.

    • started_at (stringa, data/ora o null): timestamp di inizio.

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

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

    • response_time_total (numero intero): tempo di risposta totale dell'agente, in secondi.

    • response_time_max (numero intero): il tempo di risposta più lungo dell'agente, in secondi.

    • response_time_avg (numero o null): tempo di risposta medio dell'agente, in secondi. Questo valore può includere la precisione decimale.

    • assigned_connection_duration (numero intero): durata dell'attesa del consumatore mentre l'agente assegnato si connetteva durante questo segmento.

Durate delle code

  • queue_durations (array): un array di oggetti, ciascuno dei quali rappresenta un segmento della chat in cui il consumatore era in attesa in una coda.

    • id (integer): identificatore univoco.

    • agent_id (integer o null): identificatore dell'agente.

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

    • lang (stringa): lingua.

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

    • menu_path (stringa): percorso del menu.

    • queue_duration (numero intero o null): durata della coda, in secondi.

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

    • transfer_cold (booleano o null): indica se la chat è stata trasferita a freddo.

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

    • transfer_id (integer o null): identificatore del trasferimento.

    • service_level_abandon_time_threshold (integer): soglia di abbandono del livello di servizio, in secondi.

    • service_level_event (stringa): stato dell'evento a livello di servizio. I valori possibili includono "excluded", "in_sla" e "not_in_sla".

    • service_level_target_percent (numero intero): percentuale target del livello di servizio.

    • service_level_target_time (integer): tempo target del livello di servizio, in secondi.

Escalation da agente virtuale ad agente umano

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

    • id (integer): identificatore univoco della riassegnazione.

    • status (stringa): stato attuale dell'escalation. Valori possibili: "escalating", "escalated", "canceled", "deflecting" e "deflected".

    • reason (string): motivo per cui la chat è stata riassegnata. Valori possibili: "unknown", "by_end_user_ask", "by_end_user_message", "by_virtual_agent", "payload_failure", "could_not_resume", "by_human_agent", "invalid_queue" e "dismissed".

    • created_at (stringa, data-ora): timestamp di inizio dell'escalation.

    • escalated_at (stringa, data-ora o null): timestamp del completamento dell'escalation.

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

    • to_agent (oggetto o null): l'agente umano a cui è stata assegnata la chat. Stessa forma dell'oggetto agent in Definitions.

    • from_menu_path / to_menu_path (oggetto o null): percorso del menu prima e dopo l'escalation.

Escalation deviate dall'agente virtuale

  • virtual_agent_deflected_escalations (array): dettagli delle escalation dagli agenti virtuali che hanno deviato verso un'altra destinazione.

    • id (integer): identificatore univoco.

    • deflection (stringa): tipo di deviazione per l'escalation deviata. Valori possibili: "no_deflection", "over_cap", "over_cap_email", "over_cap_virtual_agent", "over_cap_human_agent", "over_cap_sip", "over_cap_extension", "after_hours", "after_hours_email" e "after_hours_virtual_agent".

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

    • escalation_reason (stringa): motivo della riassegnazione. Stessi valori di escalations[].reason (vedi 10. Virtual-agent-to-human escalations).

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

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

    • menu_path (stringa): percorso del menu.

    • lang (stringa): lingua.

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

Durate di gestione dell'agente virtuale

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

    • id (integer): identificatore univoco.

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

    • chat_duration (numero intero): durata del segmento, in secondi.

    • escalation_reason (stringa): motivo della riassegnazione.

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

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

    • response_time_total (integer): tempo di risposta totale dell'agente virtuale, in secondi.

    • response_time_max (integer): tempo di risposta più lungo dell'agente virtuale, in secondi.

    • response_time_avg (numero o null): tempo di risposta medio dell'agente virtuale, in secondi. Questo valore può includere la precisione decimale.

    • fallback_response_count (integer): numero di risposte di riserva.

    • initiated_by (stringa): come è stata avviata la sessione dell'agente virtuale. Valori possibili: "end_user", "human_agent" e "post_session".

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

    • menu_path (stringa): percorso del menu.

    • lang (stringa): lingua.

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

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

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

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

Tempi di gestione dei consumatori

  • consumer_handle_durations (array): durate della presenza del consumatore nella chat.

    • id (integer): identificatore univoco.

    • chat_duration (numero intero): durata del segmento di consumatori, in secondi.

    • started_at (stringa, data/ora o null): timestamp di inizio.

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

    • message_count (integer): numero di messaggi dei consumatori.

    • response_count (integer): numero di risposte dei consumatori.

    • response_time_total (integer): tempo di risposta totale del consumer, in secondi.

    • response_time_max (numero intero): tempo di risposta più lungo del consumer, in secondi.

    • response_time_avg (integer): tempo di risposta medio del consumer, in secondi.

Durate degli eventi consumer

  • consumer_event_durations (array): dettagli degli eventi di chat dei consumatori (ad esempio, CSAT, pagamento).

    • id (integer): identificatore univoco.

    • duration (integer): durata dell'evento in secondi.

    • type (stringa): tipo di evento. Valori possibili: "csat".

    • event (stringa): risultato dell'evento. Valori possibili: "finished" e "abandoned".

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

    • menu_path (stringa): percorso del menu.

    • lang (stringa): lingua.

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

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

Partecipanti

  • participants (array): informazioni su ogni partecipante alla chat (ad esempio utente finale, agente, agente virtuale).

    • id (integer): l'identificatore univoco del partecipante.

    • type (stringa): tipo di partecipante. Valori possibili: "end_user", "agent", "manager", "virtual_agent", "external_agent" e "task_virtual_agent".

    • entry_type (stringa): il modo in cui il partecipante è entrato nella chat. Valori possibili: "queue_or_transfer", "barge" e "post_session".

    • 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 dell'agente virtuale se il partecipante è un agente virtuale.

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

    • status (stringa): stato del partecipante. Valori possibili: "waiting", "connecting", "invited", "connected", "wrapping_up", "finished", "failed", "resuming" e "post_session_in_progress".

    • fail_reason (stringa): motivo dell'errore, se presente. Valori possibili: "nothing", "canceled", "ag_connection_timeout" e "unknown".

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

    • phone_number (stringa): numero di telefono del partecipante. Presente solo nei partecipanti consumer.

    • chat_id (integer): identificatore della chat.

    • chat_duration (numero intero o null): durata della chat per il partecipante, in secondi.

    • finished_at (stringa, data-ora o null): timestamp che indica quando è terminato il coinvolgimento del partecipante.

    • agent_assist (oggetto): impostazioni di Agent Assist attive per il partecipante. Sempre presente; un oggetto vuoto predefinito quando Agent Assist non è configurato.

    • virtual_agent (oggetto o null): dettagli dell'agente virtuale che funge da partecipante; distinto da agent_info di primo livello e da virtual_agent_params.

    • sip_headers (oggetto o null): intestazioni SIP associate a questo partecipante. Sempre presente nel payload; null quando la piattaforma CCAI non acquisisce nulla.

    • location (stringa o null): la località configurata dell'agente. Presente solo sui partecipanti agenti.

    • location_id (numero intero o null): l'identificatore della località. Presente solo nei partecipanti agenti.

    • email (stringa, email): l'indirizzo email dell'agente. Presente solo sugli agenti partecipanti.

    • first_name (stringa o null): il nome dell'agente. Presente solo sugli agenti partecipanti.

    • last_name (stringa o null): il cognome dell'agente. Presente solo sugli agenti partecipanti.

    • middle_name (stringa o null): il secondo nome dell'agente. Presente solo sugli agenti partecipanti.

    • teams (array): array di oggetti { id, name } che descrivono i team a cui appartiene l'agente. Presente solo nei partecipanti agente.

Log di accesso

  • check_in_logs (array): eventi di check-in registrati durante la sessione di chat. Ogni elemento raggruppa gli eventi di check-in per un flusso di check-in.

    • check_in_id (integer): identificatore del flusso di check-in.

    • check_in_modal_displayed (stringa, data-ora): timestamp relativo al momento in cui la piattaforma CCAI ha mostrato la finestra modale di check-in al consumatore. Presente solo quando la piattaforma CCAI ha visualizzato la finestra modale di check-in.

    • check_in_modal_confirmed (stringa, data-ora): timestamp relativo al momento in cui il consumatore ha confermato di essere ancora presente. Presente solo quando il consumatore ha confermato la finestra modale di check-in.

    • check_in_modal_timed_out (stringa, data/ora): timestamp del momento in cui è scaduto il tempo per il prompt di check-in. Presente solo quando la finestra modale di verifica ha raggiunto il timeout.

    • timeout_modal_rejoin_success (stringa, data-ora): timestamp del momento in cui l'azione di rientro è riuscita. Presente solo quando il consumer si è unito di nuovo correttamente dopo il timeout.

    • timeout_modal_rejoin_failed_after_hour (stringa, data-ora): timestamp di quando l'azione di rientro non è riuscita a causa del comportamento dopo l'orario di chiusura. Presente solo quando il nuovo accesso non è riuscito perché la coda era fuori orario.

    • timeout_modal_exit_chat (stringa, data-ora): timestamp relativo al momento in cui il consumatore ha scelto di uscire dalla chat. Presente solo quando il consumatore è uscito dalla chat dalla finestra modale di timeout.

    • timeout_modal_time_out_sdk_closed (stringa, data-ora): timestamp di quando il flusso modale di timeout è terminato perché l'SDK è stato chiuso. Presente solo quando l'SDK è stato chiuso dopo il timeout.

Eventi dell'offerta

  • offer_type (stringa o null): modalità con cui la piattaforma CCAI ha offerto la chat all'agente.

  • offer_events (array): eventi in cui CCAI Platform ha offerto la chat agli agenti.

    • casting_time (stringa, data-ora): l'ora in cui CCAI Platform ha offerto la chat.

    • group (stringa): gruppo a cui CCAI Platform ha offerto la chat.

Altri dettagli

  • dismiss_duration (numero intero): durata della chat nello stato ignorato, in secondi. Presente solo quando la chat è rimasta nello stato Ignorata.

  • answer_type (stringa o null): come è stata data risposta alla chat. Valori possibili: "manual", "auto", "outbound" e "deflection".

  • inbound_number (stringa): numero di telefono in entrata associato alla chat. Presente solo quando alla chat è associato un numero di telefono in entrata.

  • outbound_number (string): numero di telefono in uscita associato alla chat. Presente solo quando alla chat è associato un numero di telefono in uscita.

  • after_hours (booleano): indica se la chat è avvenuta al di fuori dell'orario di lavoro.

  • dispositions (array): codici e note di wrap up registrati dagli agenti. Presente solo quando attivi i codici o le note di wrap up nel tuo account. Ogni voce può contenere campi visualizzati in modo condizionale 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 del partecipante.

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

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

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

    • ujet_code_id (numero intero o stringa vuota): l'identificatore assegnato dalla piattaforma CCAI del codice di disposizione; una chiave stabile per il codice (il nome visualizzato del codice può cambiare). Stringa vuota se non disponibile.

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

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

    • ujet_list_id (numero intero o stringa vuota): l'identificatore assegnato da CCAI Platform dell'elenco a cui appartiene il codice di esito; 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.

  • auto_session_summaries (array): riepiloghi delle sessioni creati con l'AI salvati nel record del CRM. Presente solo quando attivi il riepilogo delle conversazioni nel tuo account e l'AI genera un riepilogo. Ogni voce contiene:

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

    • participant_id (integer): identificatore del partecipante.

    • session_summary (stringa): il testo del riepilogo.

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

  • transfer_limit (oggetto o null): dati relativi al limite di trasferimento per la chat.

    • enabled (booleano): indica se il monitoraggio del limite di trasferimento è stato attivato per la chat.

    • limit_count (integer): numero di trasferimenti consentiti.

    • limit_reached (booleano): indica se la chat ha raggiunto il limite di trasferimento configurato.

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

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

  • smart_action_text (stringa o null): testo di qualsiasi azione smart eseguita.

Definizioni

I seguenti sottoschemi vengono visualizzati in più punti del documento dei metadati della sessione di chat. Ogni schema secondario viene visualizzato una volta. I gruppi di proprietà che fanno riferimento a questi elementi rimandano a questa sezione anziché ridefinire la loro forma in linea.

Descrive un percorso di menu gerarchico attraversato dalla chat. Consulta Navigazione nel menu per l'elenco completo dei campi.

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.

agent (oggetto)

Descrive un agente umano. Questa è una delle due varianti del discriminatore agent_info di primo livello (consulta Radice dello schema). Consulta le informazioni sull'agente e sull'agente virtuale per l'elenco completo dei relativi campi.

Riferimento da: il campo agent_info quando l'ultimo gestore della chat era un agente umano; ogni transfers[].from_agent e transfers[].to_agent; ogni escalations[].to_agent.

virtual_agent (oggetto)

Descrive un agente virtuale. Questa è una delle due varianti del discriminatore agent_info di primo livello (consulta Radice dello schema). Consulta le informazioni sull'agente e sull'agente virtuale per l'elenco completo dei relativi campi.

Riferimento da: il campo agent_info quando l'ultimo gestore della chat era un agente virtuale; 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; ogni participants[].virtual_agent.

deflection (stringa, enum)

Lo stato di deviazione associato a un trasferimento. I valori seguono un pattern <trigger>_<destination>, in cui il prefisso identifica la condizione che ha attivato la deviazione e il suffisso identifica la destinazione o il trattamento (ad esempio, _phone, _voicemail, _message, _queue, _sip, _extension, _callback, _wait).

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_message, over_cap_ewt_only, over_cap_queue, over_cap_sip, over_cap_extension, over_cap_phone_with_extension

  • Fuori orario, quando la chat è arrivata al di fuori dell'orario di apertura configurato per il menu: after_hours_voicemail, after_hours_phone, after_hours_message_only, after_hours_message, after_hours_queue, after_hours_sip, after_hours_extension, after_hours_phone_with_extension

  • Reindirizzamento temporaneo, quando è stato configurato 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

  • Pre-sessione IVR: ivr_presession_deflection

  • Reindirizzamento dell'agente virtuale, quando un agente virtuale ha reindirizzato la chat: va_redirection_phone, va_redirection_sip

Referenced from: each transfers[].deflection. (Le escalation deviate dall'agente virtuale in Escalation deviate dall'agente virtuale utilizzano un vocabolario di deviazione separato e più piccolo, documentato in linea.)

transfer (oggetto)

Descrive un trasferimento avvenuto durante la chat. Un trasferimento può spostare una chat tra menu, agenti e agenti virtuali. Consulta Trasferimenti di Chat per l'elenco completo dei campi.

Riferimento da: l'array transfers di primo livello. (Altri campi denominati transfer_id nel documento sono riferimenti interi alla id di un trasferimento, non oggetti transfer in linea.)

participant (oggetto)

Descrive un partecipante alla chat. La forma del partecipante varia in base al tipo di partecipante; i partecipanti agenti possono includere i campi del profilo dell'agente, della località, del team e di Agent Assist, mentre i partecipanti consumatori e agenti virtuali includono identificatori specifici del tipo. Consulta la sezione Partecipanti per l'elenco completo dei campi documentati.

Riferimento da: l'array participants di primo livello; auto_session_summaries[].participant_id; record di disposizione.

Riga della durata (oggetto)

Descrive un intervallo misurato all'interno della chat, ad esempio il tempo di gestione dell'agente, il tempo in coda, il tempo di gestione del consumatore, il tempo dell'evento del consumatore o il tempo di gestione dell'agente virtuale. Ogni array di durata ha la propria forma di riga perché i campi con nomi simili possono avere precisione o nullabilità diverse nelle tabelle.

Con riferimenti da: handle_durations, queue_durations, virtual_agent_handle_durations, consumer_handle_durations e consumer_event_durations.

Controllo delle versioni e ritiro

Il documento dei metadati della sessione di chat è progettato per l'evoluzione dello schema compatibile con le versioni precedenti. Nuovi campi e array possono essere aggiunti in qualsiasi momento e le integrazioni devono ignorare eventuali chiavi non riconosciute per garantire la continuità della funzionalità. I seguenti campi sono legacy o comunque sostituiti in modo non definitivo; rimangono nel payload per la compatibilità con le versioni precedenti, ma le nuove integrazioni devono seguire le indicazioni per ciascuno.

Duplicati legacy

  • session_type (stringa): alias legacy di chat_type. Restituisce sempre lo stesso valore di chat_type e utilizza lo stesso vocabolario enum precedente. Mantenuto per la compatibilità con le versioni precedenti delle integrazioni che utilizzano session_type. Le nuove integrazioni devono analizzare direttamente chat_type o, per distinzioni più dettagliate, session_type_v2 (vedi Evoluzione del vocabolario di seguito).

Evoluzione del vocabolario

chat_type e session_type_v2 descrivono lo stesso tipo di chat sottostante con due vocabolari diversi. CCAI Platform genera entrambi i campi in ogni record, che non sono duplicati l'uno dell'altro:

  • chat_type utilizza il vocabolario enum precedente. Valori come Messaggistica in entrata (app Chat) e Messaggistica (SMS) descrivono le categorie originali del tipo di chat.

  • session_type_v2 utilizza il vocabolario enum corrente. Potrebbe introdurre distinzioni più granulari per i tipi di chat che hanno valori specifici per la versione 2. Per i tipi di chat che non hanno un valore specifico per v2, session_type_v2 restituisce la stessa stringa di chat_type.

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

Campi additivi

Il payload dei metadati della sessione di chat potrebbe acquisire nuovi campi di primo livello, campi nidificati, campi di elementi di array o valori enum nel tempo. Le integrazioni devono ignorare le chiavi non riconosciute e conservare i record non elaborati, se possibile. Evita l'analisi rigorosa che non va a buon fine quando viene visualizzata una nuova proprietà.