Riferimento evento log CDR

Per gli eventi cdr_logged inviati da un webhook di log, l'oggetto payload contiene i dati relativi a un evento CDR (Call detail record) gestito dall'integrazione telefonica. L'oggetto payload per un evento CDR contiene le seguenti proprietà.

Proprietà dell'oggetto di payload webhook CDR
Proprietà Immettere Descrizione
primary_phone_number stringa Numero di telefono che è stato chiamato.
global_session_id stringa Identificativo sessione univoco.
failure_occurred booleano Se si è verificato un errore durante la chiamata.
failure_details stringa Dettagli su eventuali guasti che si sono verificati.
transfer_occurred booleano Che sia stato effettuato un tentativo di trasferire una chiamata.
active_calls Numero Numero di chiamate attive quando la chiamata è stata avviata.
x-global-sip-trunk-call-id stringa

Valore dell'intestazione ID chiamata trunk SIP estratto dalla richiesta INVITE SIP iniziale. Sono supportate le seguenti intestazioni di chiamate trunk SIP:

  • X-Twilio-CallSid
  • X-SID
  • X-Global-SIP-Trunk-Call-ID
call Oggetto Informazioni sulla chiamata. Vedere call.
session_initiation_protocol Oggetto Dettagli relativi al protocollo SIP. Vedere session_initiation_protocol.
max_response_milliseconds Oggetto Latenza massima per i servizi utilizzati durante la chiamata. Vedere max_response_milliseconds.
assistant_interaction_summaries Array Dettagli sulle interazioni watsonx Assistant che si sono svolte durante la chiamata. Vedere assistant_interaction_summaries.
injected_custom_data Oggetto Una serie di coppie chiave / valore estratte dalla variabile di contesto cdr_custom_data.
warnings_and_errors Array Avvertenze o errori registrati durante la chiamata. Vedere warnings_and_errors.
realtime_transport_network_summary Oggetto Statistiche per il flusso in entrata nell'oggetto inbound_stream e le statistiche per il flusso in uscita nell'oggetto outbound_stream. Incluso solo se RTCP è abilitato. Vedere realtime_transport_network_summary.

call

L'oggetto call contiene le proprietà riportate di seguito.

Proprietà dell'oggetto di chiamata
Proprietà Immettere Descrizione
start_timestamp Stringa L'ora in cui è stata avviata la chiamata, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
stop_timestamp Stringa L'ora in cui la chiamata è terminata, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
milliseconds_elapsed Numero Durata della chiamata, in millisecondi.
end_reason stringa

Motivo per cui la chiamata è terminata. I motivi possibili sono:

  • assistant_transfer
  • assistant_hangup
  • caller_hangup
  • failed
security.media_encrypted Booleano Se il supporto è stato crittografato.
security.signaling_encrypted Booleano Se la segnalatoria SIP è stata crittografata.
security.sip_authenticated Booleano Se l'autenticazione SIP è stata utilizzata per autenticare il chiamante.

session_initiation_protocol

L'oggetto session_initiation_protocol contiene le proprietà riportate di seguito.

Proprietà dell'oggetto session_initiation_protocol
Proprietà Immettere Descrizione
invite_arrival_timestamp Stringa L'ora in cui è arrivata la richiesta INVITE, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
setup_milliseconds Numero Tempo impiegato per impostare la chiamata, in millisecondi. L'intervallo di tempo tra la ricezione della richiesta INVITE SIP iniziale e la ricezione della richiesta ACK SIP finale.
headers.call_id Stringa Il campo di intestazione SIP Call-ID estratto dal SIP INVITE correlato alla chiamata.
headers.from_uri Stringa URI SIP dall'intestazione SIP INVITE From iniziale.
headers.to_uri Stringa URI SIP dall'intestazione SIP INVITE To iniziale.

assistant_interaction_summaries

L'oggetto assistant_interaction_summaries contiene le proprietà riportate di seguito.

Proprietà dell'oggetto assistante_interaction_summaries
Proprietà Immettere Descrizione
assistant_id Stringa Identificativo univoco dell'assistente.
session_id Stringa Identificatore univoco della sessione.
turns Array Una schiera di oggetti che descrive le interazioni watsonx Assistant che si sono svolte durante la conversazione. Vedere assistant_interaction_summaries.turns[].

assistant_interaction_summaries.turns[]

Gli oggetti nell'array assistant_interaction_summaries.turns contengono le seguenti proprietà.

Proprietà degli oggetti in assistante_interaction_summaries.trasforma[] array caption
Proprietà Immettere Descrizione
assistant.log_id Stringa L'identificativo univoco per l'evento registrato, che può essere utilizzato per correlare tra i log di messaggi e eventi CDR.
assistant.start_timestamp Stringa L'ora in cui la richiesta è stata inviata all'assistente, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
assistant.response_milliseconds Numero Tempo (in millisecondi) tra il momento in cui la richiesta è stata inviata e il momento in cui la risposta è stata ricevuta dall'assistente.
request Oggetto Una richiesta inviata all'assistente. Vedere assistant_interaction_summaries.turns[].request.
response Array Una schiera degli oggetti response associati alla richiesta.

assistant_interaction_summaries.turns[].request

L'oggetto assistant_interaction_summaries.turns[].request contiene le proprietà riportate di seguito.

Proprietà dell'assistante_interaction_summaries.gira[].richiesta oggetto caption
Proprietà Immettere Descrizione
type Stringa

Tipo di richiesta:

  • start: viene inviata una richiesta iniziale all'assistente
  • speech_to_text: l'input viene ricevuto dal servizio Speech to Text
  • dtmf: la raccolta DTMF viene completata
  • sms: viene ricevuto un messaggio SMS dal chiamante
  • post_response_timeout: il timer di post - risposta scade
  • redirect: una chiamata viene reindirizzata
  • transfer: Una chiamata viene trasferita
  • transfer_failed: un trasferimento di chiamata non riesce
  • final_utterance_timeout: il timer finale scade
  • no_input_turn: no input turn è abilitato
  • sms_failure: non è possibile inviare un messaggio SMS al chiamante
  • speech_to_text_result_filtered: un'espressione viene filtrata a causa di un livello di confidenza basso
  • mrcp_recognition_unsuccessful: il riconoscimento MRCP viene completato senza un'espressione finale
  • network_warning: un errore di rete viene rilevato
  • media_capability_change: le capacità del supporto cambiano durante una chiamata.
streaming_statistics Oggetto Informazioni e statistiche relative al riconoscimento Speech to Text. Vedere assistant_interaction_summaries.turns[].request.streaming_statistics.
assistant_interaction_summaries.turns[].request.streaming_statistics

L'oggetto assistant_interaction_summaries.turns[].request.streaming_statistics contiene le proprietà riportate di seguito.

Proprietà dell'assistante_interaction_summaries.gira[].streaming_statistics object caption
Proprietà Immettere Descrizione
transaction_id Stringa Identificativo univoco della transazione.
start_timestamp Stringa L'ora in cui è stata avviata la transazione, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
stop_timestamp Stringa L'ora in cui è terminata la transazione, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
response_milliseconds Numero La latenza (in millisecondi) tra quando viene rilevato il silenzio nel discorso del chiamante e un risultato finale dall'assistente viene ricevuto.
echo_detected Booleano Se è stato rilevato un eco.
confidence Numero Punteggio di confidenza dell'espressione finale.

assistant_interaction_summaries.turns[].response

L'oggetto assistant_interaction_summaries.turns[].response contiene le proprietà riportate di seguito.

Proprietà dell'assistante_interaction_summaries.gira[].response object caption
Proprietà Immettere Descrizione
type Stringa

Tipo di risposta:

  • text_to_speech: un comando per riprodurre un'espressione per il chiamante
  • sms: un comando per inviare un messaggio SMS al chiamante
  • url: un comando per riprodurre un file audio al chiamante
  • transfer: un comando per trasferire una chiamata
  • text_to_speech_config: un comando per modificare le impostazioni Text to Speech
  • speech_to_text_config: un comando per modificare le impostazioni Speech to Text
  • pause_speech_to_text: un comando per arrestare il riconoscimento vocale
  • unpause_speech_to_text: un comando per avviare il riconoscimento vocale
  • pause_dtmf: un comando per arrestare l'elaborazione dei segnali DTMF in entrata
  • unpause_dtmf: unpause_dtmf: un comando per iniziare l'elaborazione di segnali DTMF in entrata
  • enable_speech_barge_in: un comando per abilitare il speech barge - in in modo che i chiamanti possano interrompere la riproduzione parlando
  • disable_speech_barge_in: un comando per disabilitare il speech barge - in in modo che la riproduzione non venga interrotta quando i chiamanti parlano durante la riproduzione audio
  • enable_dtmf_barge_in: un comando per attivare il DTMF barge - in in modo che i chiamanti possano interrompere la riproduzione dall'integrazione telefonica premendo un tasto
  • disable_dtmf_barge_in: un comando per disabilitare il barge - in DTMF in modo che la riproduzione dall'integrazione telefonica non venga interrotta quando il chiamante preme un tasto
  • dtmf: un comando per l'invio di segnali DTMF al chiamante
  • hangup: un comando per disconnettere la chiamata
    Vedere Associazione tra CDR e watsonx Assistant tipi di risposta.
barge_in_occurred Booleano Se baratto si è verificato durante il turno.
streaming_statistics Oggetto Informazioni e statistiche relative alla sintesi e alla riproduzione di Text to Speech. Vedere assistant_interaction_summaries.turns[].response.streaming_statistics.
Associazione tra CDR e watsonx Assistant tipi di risposta

I valori della proprietà type si associano ai tipi di risposta watsonx Assistant.

Tipo di risposta CDR watsonx Assistant tipo di risposta
text_to_speech text
url audio
dtmf dtmf, command_info.type : send
sms user_defined, vgwAction.command : vgwActSendSMS
transfer connect_to_agent
text_to_speech_config text_to_speech, command_info.type : configure
speech_to_text_config speech_to_text, command_info.type : configure
unpause_speech_to_text start_activities, type:speech_to_text_recognition
pause_speech_to_text stop_activities, type:speech_to_text_recognition
unpause_dtmf start_activities, type:dtmf_collection
pause_dtmf stop_activities, type:dtmf_collection
enable_speech_barge_in text_to_speech, command_info.type : enable_barge_in
disable_speech_barge_in text_to_speech, command_info.type : disable_barge_in
enable_dtmf_barge_in dtmf, command_info.type : enable_barge_in
disable_dtmf_barge_in dtmf, command_info.type : disable_barge_in
hangup end_session
assistant_interaction_summaries.turns[].response.streaming_statistics

L'oggetto assistant_interaction_summaries.turns[].response.streaming_statistics contiene le proprietà riportate di seguito.

Proprietà dell'assistante_interaction_summaries.gira[].response.streaming_statistics object caption
Proprietà Immettere Descrizione
transaction_id Stringa Identificativo univoco della transazione.
start_timestamp Stringa L'ora in cui è stata avviata la transazione, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
stop_timestamp Stringa L'ora in cui è terminata la transazione, in formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ).
response_milliseconds Numero Tempo (in millisecondi) tra quando un'espressione di testo viene inviata all'assistente e quando l'integrazione del telefono riceve il primo pacchetto di audio sintetizzato.

warnings_and_errors

L'oggetto warnings_and_errors contiene avvertenze ed errori registrati durante la chiamata, elencati in ordine di ricorrenza. Sono incluse le avvertenze per le seguenti condizioni.

  • I messaggi quando le utteranze sono filtrate dalla soglia di punteggio di fiducia.
  • Text to Speech underflow, ovvero quando Text to Speech la sintesi non riesce a tenere il passo con la velocità di streaming dell'integrazione telefonica e l'audio potrebbe saltare.
  • Avvisi di rete RTP, come ad esempio la perdita di pacchetto o il jitter medio elevato, se RTCP è abilitato.

L'esempio seguente mostra la struttura dell'oggetto warnings_and_errors:

  "warnings_and_errors": [
    {
      "message": "CWSMR0032W: A Watson Speech to Text final utterance has a confidence score of 0.1, which does not meet the confidence score threshold of 0.2. The utterance will be ignored.",
      "id": "CWSMR0032W"
    },
    {
      "message": "CWSMR0031W: The synthesis stream from the Watson Text-to-Speech service can't keep up with the playback rate to the caller, so audio might skip. transaction ID=a1b2c3d4e5",
      "id": "CWSMR0031W"
    }
  ]

L'oggetto per ogni avvertenza contiene le seguenti proprietà.

Proprietà dell'oggetto warnings_and_errors
Proprietà Immettere Descrizione
message Stringa Testo del messaggio di avvertenza.
id Stringa Identificativo messaggio univoco.

max_response_milliseconds

L'oggetto max_response_milliseconds contiene le proprietà riportate di seguito.

Proprietà dell'oggetto max_response_millisecondi
Proprietà Immettere Descrizione
assistant Numero Latenza massima del round-trip (in millisecondi), calcolata da tutte le richieste watsonx Assistant correlate alla chiamata.
text_to_speech Numero Tempo massimo (in millisecondi) tra quando un'espressione di testo viene inviata al servizio Text to Speech e quando l'integrazione telefonica riceve il primo pacchetto di audio sintetizzato. Questo valore viene calcolato da tutte le richieste Text to Speech relative alla chiamata.
speech_to_text Numero La latenza massima (in millisecondi) tra quando viene rilevato il silenzio nel discorso del chiamante e quando viene ricevuto un risultato finale dal servizio Speech to Text. Questo valore viene calcolato da tutti i risultati di riconoscimento Speech to Text relativi alla chiamata.

realtime_transport_network_summary

Quando RTCP è abilitato, l'oggetto realtime_transport_network_summary fornisce statistiche per il flusso in entrata nell'oggetto inbound_stream e le statistiche per il flusso in uscita nell'oggetto outbound_stream.

L'esempio seguente mostra la struttura dell'oggetto realtime_transport_network_summary.

"realtime_transport_network_summary": {
  "inbound_stream": {
    "maximum_jitter": 5,
    "average_jitter": 1,
    "packets_lost": 0,
    "packets_transmitted": 1000,
    "canonical_name": "user@example.com",
    "tool_name": "User SIP Phone"
   },
  "outbound_stream": {
    "maximum_jitter": 5,
    "average_jitter": 1,
    "packets_lost": 0,
    "packets_transmitted": 2000,
    "canonical_name": "voice.gateway@127.0.0.1",
    "tool_name": "IBM Voice Gateway/1.0.0.5"
   }
}

L'oggetto per ogni flusso contiene le seguenti proprietà.

Proprietà dell'oggetto realtime_transport_network_summary
Proprietà Immettere Descrizione
maximum_jitter Numero Jitter massimo durante la chiamata.
average_jitter Numero Jitter medio calcolato sulla durata della chiamata.
packets_lost Numero Una stima del numero di pacchetti persi durante la chiamata.
packets_transmitted Numero Stima del numero totale di pacchetti trasmessi durante la chiamata.
canonical_name Stringa Identificativo univoco per il mittente del flusso, generalmente in formato @.
tool_name Stringa Nome dell'applicazione o dello strumento da cui ha avuto origine lo stream. Per l'integrazione telefonica, il default è IBM Voice Gateway/ .