Referência do evento de log do CDR
Para eventos cdr_logged enviados por um webhook de log, o objeto payload contém dados sobre um evento CDR (Registro de detalhes de chamada) que foi manipulado por integração telefônica. O objeto payload para
um evento CDR contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
primary_phone_number |
string | Número de telefone que foi chamado. |
global_session_id |
string | Identificador de sessão exclusivo |
failure_occurred |
booleano | Se uma falha ocorreu durante a chamada. |
failure_details |
string | Detalhes sobre qualquer falha ocorrida. |
transfer_occurred |
booleano | Se houve uma tentativa de transferir uma chamada. |
active_calls |
Número | Número de chamadas ativas quando a chamada começou. |
x-global-sip-trunk-call-id |
string |
Valor do cabeçalho de ID de chamada do tronco SIP extraído da solicitação inicial do SIP
|
call |
Object | Informações sobre a chamada. Consulte call. |
session_initiation_protocol |
Object | Detalhes relacionados ao protocolo do SIP Consulte session_initiation_protocol. |
max_response_milliseconds |
Object | Latência máxima para serviços utilizados durante a chamada. Consulte max_response_milliseconds. |
assistant_interaction_summaries |
Matriz | Detalhes sobre as transações do watsonx Assistant que ocorreram durante a chamada. Consulte assistant_interaction_summaries. |
injected_custom_data |
Object | Um conjunto de pares chave/valor extraído da variável de contexto cdr_custom_data. |
warnings_and_errors |
Matriz | Avisos ou erros que foram registrados durante a chamada. Consulte warnings_and_errors. |
realtime_transport_network_summary |
Object | Estatísticas para o fluxo de entrada no objeto inbound_stream e estatísticas para o fluxo de saída no objeto outbound_stream. Incluído apenas se o RTCP estiver ativado. Consulte realtime_transport_network_summary. |
call
O objeto call contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
start_timestamp |
Sequência | Hora de início da chamada, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
stop_timestamp |
Sequência | Hora em que a chamada terminou, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
milliseconds_elapsed |
Número | Duração da chamada, em milissegundos. |
end_reason |
string | Razão pela qual a chamada foi encerrada As razões possíveis são: -assistant_transfer -assistant_hangup -caller_hangup -com falha. |
security.media_encrypted |
Booleano | Se a mídia foi criptografada. |
security.signaling_encrypted |
Booleano | Se a sinalização SIP foi criptografada. |
security.sip_authenticated |
Booleano | Se a autenticação SIP foi usada para autenticar o responsável pela chamada. |
session_initiation_protocol
O objeto session_initiation_protocol contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
invite_arrival_timestamp |
Sequência | Horário em que a solicitação INVITE chegou, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
setup_milliseconds |
Número | Tempo que levou para configurar a chamada, em milissegundos. O tempo entre o recebimento da solicitação inicial do SIP INVITE e o recebimento da solicitação final do SIP ACK. |
headers.call_id |
Sequência | Campo de cabeçalho SIP Call-ID extraído do SIP INVITE relacionado à chamada. |
headers.from_uri |
Sequência | SIP URI do cabeçalho inicial do SIP INVITE From. |
headers.to_uri |
Sequência | SIP URI do cabeçalho inicial do SIP INVITE To. |
assistant_interaction_summaries
O objeto assistant_interaction_summaries contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
assistant_id |
Sequência | Identificador exclusivo do assistente. |
session_id |
Sequência | Identificador exclusivo da sessão. |
turns |
Matriz | Uma matriz de objetos descrevendo as interações do watsonx Assistant que aconteceram durante a conversa. Consulte assistant_interaction_summaries.turns[]. |
assistant_interaction_summaries.turns[]
Os objetos da matriz assistant_interaction_summaries.turns contêm as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
assistant.log_id |
Sequência | Identificador exclusivo para o evento registrado, que pode ser usado para correlacionar entre logs de mensagens e eventos CDR. |
assistant.start_timestamp |
Sequência | Hora em que a solicitação foi enviada ao assistente, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
assistant.response_milliseconds |
Número | Tempo (em milissegundos) entre o envio da solicitação e o recebimento da resposta do assistente. |
request |
Object | Uma solicitação enviada para o assistente. Consulte assistant_interaction_summaries.turns[].request. |
response |
Matriz | Uma matriz dos response objetos associados à solicitação. |
assistant_interaction_summaries.turns[].request
O objeto assistant_interaction_summaries.turns[].request contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
type |
Sequência |
Tipo de solicitação:
|
streaming_statistics |
Object | Informações e estatísticas relacionadas ao reconhecimento Speech to Text. Consulte assistant_interaction_summaries.turns[].request.streaming_statistics. |
assistant_interaction_summaries.turns[].request.streaming_statistics
O objeto assistant_interaction_summaries.turns[].request.streaming_statistics contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
transaction_id |
Sequência | Identificador exclusivo da transação. |
start_timestamp |
Sequência | Hora de início da transação, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
stop_timestamp |
Sequência | Hora em que a transação terminou, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
response_milliseconds |
Número | A latência (em milissegundos) entre o momento em que o silêncio é detectado no discurso do responsável pela chamada e um resultado final do assistente é recebido. |
echo_detected |
Booleano | Se um eco foi detectado. |
confidence |
Número | Pontuação de confiança do enunciado final. |
assistant_interaction_summaries.turns[].response
O objeto assistant_interaction_summaries.turns[].response contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
type |
Sequência |
Tipo de resposta:
|
barge_in_occurred |
Booleano | Se a interrupção ocorreu durante o turno. |
streaming_statistics |
Object | Informações e estatísticas relacionadas à síntese e reprodução do site Text to Speech. Consulte assistant_interaction_summaries.turns[].response.streaming_statistics. |
Mapeamento entre os tipos de resposta CDR e watsonx Assistant
Os valores da propriedade type mapeiam para os tipos de resposta watsonx Assistant.
| Tipo de resposta de CDR | Tipo de resposta do watsonx Assistant |
|---|---|
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
O objeto assistant_interaction_summaries.turns[].response.streaming_statistics contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
transaction_id |
Sequência | Identificador exclusivo da transação. |
start_timestamp |
Sequência | Hora de início da transação, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
stop_timestamp |
Sequência | Hora em que a transação terminou, no formato ISO (yyyy-MM-ddTHH:mm:ss.SSSZ). |
response_milliseconds |
Número | Tempo (em milissegundos) entre o momento em que um enunciado de texto é enviado ao assistente e o momento em que a integração telefônica recebe o primeiro pacote de áudio sintetizado. |
warnings_and_errors
O objeto warnings_and_errors contém avisos e erros que foram registrados durante a chamada, que são listados em ordem de ocorrência. Estão incluídas advertências para as seguintes condições.
- Mensagens quando as elocuções são filtradas pelo limite de pontuação de confiança.
- Subfluxos do Text to Speech, que é quando a síntese do Text to Speech não consegue acompanhar a taxa de streaming da integração telefônica e o áudio pode pular.
- Avisos de rede RTP, como alta perda de pacote ou alto jitter médio, se o RTCP estiver ativado.
O exemplo a seguir mostra a estrutura do objeto 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"
}
]
O objeto de cada aviso contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
message |
Sequência | Texto da mensagem de aviso. |
id |
Sequência | Identificador de mensagem exclusivo |
max_response_milliseconds
O objeto max_response_milliseconds contém as seguintes propriedades.
| Propriedade | Tipo | Descrição |
|---|---|---|
assistant |
Número | Latência máxima de ida e volta (em milissegundos), calculada a partir de todas as solicitações watsonx Assistant relacionadas à chamada. |
text_to_speech |
Número | Tempo máximo (em milissegundos) entre o momento em que um enunciado de texto é enviado ao serviço Text to Speech e o momento em que a integração telefônica recebe o primeiro pacote de áudio sintetizado. Esse valor é calculado por meio de todas as solicitações do Text to Speech relacionadas à chamada. |
speech_to_text |
Número | Latência máxima (em milissegundos) entre o momento em que o silêncio é detectado na fala do chamador e o recebimento de um resultado final do serviço Speech to Text. Esse valor é calculado por meio de todos os resultados de reconhecimento do Speech to Text relacionados à chamada. |
realtime_transport_network_summary
Quando o RTCP é ativado, o objeto realtime_transport_network_summary fornece estatísticas para o fluxo de entrada no objeto inbound_stream e estatísticas para o fluxo de saída no objeto outbound_stream.
O exemplo a seguir mostra a estrutura do objeto 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"
}
}
O objeto de cada fluxo contém as seguintes propriedades.
| Propriedades | Tipo | Descrição |
|---|---|---|
maximum_jitter |
Número | Jitter máximo durante a chamada. |
average_jitter |
Número | Jitter médio calculado durante a duração da chamada. |
packets_lost |
Número | Uma estimativa do número de pacotes que foram perdidos durante a chamada. |
packets_transmitted |
Número | Estimativa do número total de pacotes que foram transmitidos durante a chamada. |
canonical_name |
Sequência | Identificador exclusivo do remetente do fluxo, normalmente no formato @. |
tool_name |
Sequência | Nome do aplicativo ou da ferramenta em que o fluxo foi originado. Para a integração do telefone, o padrão é IBM Voice Gateway/ . |