Openframe API
. openframe A API fornece endpoints que fornecem a Central de contato como serviço (CCaaS) a capacidade de criar e atualizar registros de interação sem usar o Manipulador de operações.
Use esta API para criar registros de interação para rastrear chamadas telefônicas do agente. Depois que um registro de interação é criado, a interação pode ser exibida automaticamente no Espaço configurável do CSM quando um agente recebe uma chamada telefônica.
Para acessar esta API, o plug-in com.sn_openframe_store deve ser instalado na instância e o usuário chamador deve ter a função sn_openframe_api_user ou sn_openframe_user. . openframe A API é executada no sn_openframe namespace.
Para obter informações adicionais sobre registros de interação de voz do CSM, consulte CSM voice interaction record page.
Openframe - PATCH /openframe/voice-interaction/
Atualiza o registro de interação especificado na tabela Interaction [interaction]. Os provedores de Contact Center as a Service (CCaaS) podem usar esses registros para rastrear chamadas telefônicas.
Formato de URL
URL com controle de versão: /api/now/openframe/
URL padrão: /api/now/openframe/voice-interaction/
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| api_version | Opcional. Versão do endpoint a ser acessado. Por exemplo, v1 ou v2 . Especifique este valor somente para usar uma versão de endpoint diferente da mais recente. Tipo de dados: Cadeia de caracteres |
| interactionSysId | Sys_id do registro de interação a ser atualizado. Este valor é retornado pelo Criar interação de voz/POST endpoint. Tipo de dados: Cadeia de caracteres Tabela: Interação [interaction] |
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| interação | Obrigatório. Detalhes da interação de voz. Pelo menos um parâmetro deve ser passado. Tipo de dados: Objeto |
| Interaction.additionalParams | Pares nome-valor dos campos de registro de interação associados e seus respectivos valores. Por exemplo: Tipo de dados: Objeto Padrão: Nenhum |
| interaction.callbackPhoneNumber | Número de telefone de retorno de chamada do chamador. Este é o número que o agente usa para entrar em contato com o solicitante caso a chamada seja descartada. Tipo de dados: Cadeia de caracteres Formato: E.164 Padrão: Nenhum |
| Interaction.clientSessionId | Identificador exclusivo do registro em um sistema externo usado para rastrear esta chamada telefônica. Essas informações vinculam os registros entre os dois sistemas. Tipo de dados: Cadeia de caracteres Padrão: Nenhum |
| interaction.inboundId | Identificador exclusivo do provedor de aplicações para o serviço de voz. Tabela: Campo ID de entrada na tabela Aplicação de canal do provedor [sys_cs_provider_application]. Padrão: Nenhum |
| interaction.userPhoneNumber | Número de telefone do usuário que fez a chamada associada à interação de voz. Tipo de dados: Cadeia de caracteres Formato: E.164 |
| InteractionContext | Variáveis de contexto de interação a serem definidas. Pares nome-valor das variáveis de contexto de interação a serem salvas no registro de interação. Esses valores são determinados por CCaaS. Por exemplo: Tipo de dados: Objeto Padrão: Nenhum |
| PhoneLogs | Pares nome-valor dos logs de telefone para criar e associar a uma chamada. Você pode especificar qualquer campo na tabela Log de telefone [sn_open_frame_phone_log]. Por exemplo: Tipo de dados: Matriz de objetos Padrão: Nenhum |
| RelatedRecords | Registros relacionados à chamada. Tipo de dados: Matriz de objetos Padrão: Nenhum |
| RelatedRecords.documentId | Sys_id do registro relacionado. Tipo de dados: Cadeia de caracteres Tabela: Especificada em relatedRecords.documentTableparâmetro. |
| RelatedRecords.documentTable | Nome da tabela que contém o registro relacionado. Tipo de dados: Cadeia de caracteres |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis .
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis: application/jsonou application/xml. Padrão: application/json |
| Tipo de conteúdo | Formato de dados do corpo da solicitação. Tipos compatíveis: application/jsonou application/xml. Padrão: application/json |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .
| Código do status | Descrição |
|---|---|
| 200 | Bem-sucedido. A solicitação foi processada com sucesso. |
| 400 | Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada. |
| 500 | Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro. |
Parâmetros do corpo da resposta (JSON ou XML)
| Nome | Descrição |
|---|---|
| status | Status da atualização do registro. Valores possíveis:
|
Solicitação de curl
O exemplo de código a seguir mostra como atualizar o registro de interação com o sys_id 12961fff7fb2d2102d0cd3cf8c8c86652b.
curl "http://instance.service-now.com/api/now/openframe/voice-interaction/12961fff7fb2d2102d0cd3cf8c86652b" \
--request PATCH \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"interaction\":{
\"additionalParams\":{
\"direction\":\"inbound\",
\"short_description\":\"New Poonam outbound call\",
\"assigned_to\":\"a8f98bb0eb32010045e1a5115206fe3a\"
}
},
\"interactionContext\":{
\"devicetype\":\"genesys\",
\"requester_session_language\":\"en-US\"
},
\"phoneLogs\":[
{
\"call_id\":\"2323223\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
},
{
\"call_id\":\"33535353\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
},
{
\"call_id\":\"1997654\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
}
],
\"relatedRecords\":[
{
\"documentTable\":\"csm_consumer\",
\"documentId\":\"59e788fbdb1b1200b6075200cf9619d2\"
},
{
\"documentTable\":\"sys_user\",
\"documentId\":\"62826bf03710200044e0bfc8bcbe5df1\"
}
]
}" \
--user 'username':'pasword'
Resposta:
{
"result": {
"status": "SUCCESS"
}
}
Openframe - POST /openframe/voice-interaction
Cria um registro de interação na tabela Interaction [interaction] quando um agente aceita uma chamada. Os provedores de Contact Center as a Service (CCaaS) podem usar esses registros para rastrear chamadas telefônicas.
Use este endpoint para fornecer uma experiência consistente para os agentes, semelhante a outros canais nativos, como bate-papo e caso, ao aceitar chamadas telefônicas.
Formato de URL
URL com controle de versão: /api/now/openframe/
URL padrão: /api/now/openframe/voice-interaction
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| api_version | Opcional. Versão do endpoint a ser acessado. Por exemplo, v1 ou v2 . Especifique este valor somente para usar uma versão de endpoint diferente da mais recente. Tipo de dados: Cadeia de caracteres |
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| interação | Obrigatório. Detalhes da interação de voz. Pelo menos um parâmetro deve ser passado. Tipo de dados: Objeto |
| Interaction.additionalParams | Pares nome-valor dos campos de registro de interação associados e seus respectivos valores. Por exemplo: Tipo de dados: Objeto Padrão: Nenhum |
| interaction.callbackPhoneNumber | Número de telefone de retorno de chamada do chamador. Este é o número que o agente usa para entrar em contato com o solicitante caso a chamada seja descartada. Tipo de dados: Cadeia de caracteres Formato: E.164 Padrão: Nenhum |
| Interaction.clientSessionId | Identificador exclusivo do registro em um sistema externo usado para rastrear esta chamada telefônica. Essas informações vinculam os registros entre os dois sistemas. Tipo de dados: Cadeia de caracteres Padrão: Nenhum |
| interaction.inboundId | Identificador exclusivo do provedor de aplicações para o serviço de voz. Tabela: Campo ID de entrada na tabela Aplicação de canal do provedor [sys_cs_provider_application]. Padrão: Nenhum |
| interaction.userPhoneNumber | Obrigatório. Número de telefone do usuário que fez a chamada associada à interação de voz. Tipo de dados: Cadeia de caracteres Formato: E.164 |
| InteractionContext | Variáveis de contexto de interação a serem definidas. Pares nome-valor das variáveis de contexto de interação a serem salvas no registro de interação. Esses valores são determinados por CCaaS. Por exemplo: Tipo de dados: Objeto Padrão: Nenhum |
| PhoneLogs | Pares nome-valor dos logs de telefone para criar e associar a uma chamada. Você pode especificar qualquer campo na tabela Log de telefone [sn_open_frame_phone_log]. Por exemplo: Tipo de dados: Matriz de objetos Padrão: Nenhum |
| RelatedRecords | Registros relacionados à chamada. Tipo de dados: Matriz de objetos Padrão: Nenhum |
| RelatedRecords.documentId | Sys_id do registro relacionado. Tipo de dados: Cadeia de caracteres Tabela: Especificada em relatedRecords.documentTableparâmetro. |
| RelatedRecords.documentTable | Nome da tabela que contém o registro relacionado. Tipo de dados: Cadeia de caracteres |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis .
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis: application/jsonou application/xml. Padrão: application/json |
| Tipo de conteúdo | Formato de dados do corpo da solicitação. Tipos compatíveis: application/jsonou application/xml. Padrão: application/json |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .
| Código do status | Descrição |
|---|---|
| 200 | Bem-sucedido. A solicitação foi processada com sucesso. |
| 400 | Solicitação Incorreta. Um tipo de solicitação incorreto ou uma solicitação malformada foi detectada. |
| 500 | Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro. |
Parâmetros do corpo da resposta (JSON ou XML)
| Nome | Descrição |
|---|---|
| número | Retornado somente em caso de sucesso. Número da interação de voz recém-criada. Tipo de dados: Cadeia de caracteres |
| status | Status da criação do registro. Valores possíveis:
|
| sysId | Retornado somente em caso de sucesso. Sys_id do registro de interação de voz recém-criado. Tabela: Interação [interaction] |
Solicitação de curl
O exemplo de código a seguir mostra como criar um novo registro de interação.
curl "http://instance.service-now.com/api/now/openframe/voice-interaction" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"interaction\":{
\"userPhoneNumber\":\"+1303506536\",
\"clientSessionId\":\"a545t65678\",
\"callbackPhoneNumber\":\"+14089965744\",
\"additionalParams\":{
\"direction\":\"inbound\",
\"short_description\":\"New outbound call\",
\"assigned_to\":\"a8f98bb0eb32010045e1a5115206fe3a\"
}
},
\"interactionContext\":{
\"devicetype\":\"genesys\",
\"requester_session_language\":\"en-US\"
},
\"phoneLogs\":[
{
\"call_id\":\"2323223\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
},
{
\"call_id\":\"33535353\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
},
{
\"call_id\":\"1997654\",
\"agent\":\"a8f98bb0eb32010045e1a5115206fe3a\",
\"start_time\":\"2024-11-04 21:45:00\"
}
],
\"relatedRecords\":[
{
\"documentTable\":\"csm_consumer\",
\"documentId\":\"59e788fbdb1b1200b6075200cf9619d2\"
},
{
\"documentTable\":\"sys_user\",
\"documentId\":\"62826bf03710200044e0bfc8bcbe5df1\"
}
]
}" \
--user 'username':'password'
Resposta:
{
"result": {
"status": "SUCCESS",
"sysId": "12961fff7fb2d2102d0cd3cf8c86652b",
"number": "IMS0000052"
}
}