Notificações enviadas para um URL previamente configurada.
Dentro do Portal da Empresa e por meio da API REST, é possível cadastrar e gerenciar webhooks, que são notificações enviadas para uma URL previamente configurada pela empresa, sempre que um evento específico ocorre. Essas notificações são realizadas por meio de requisições HTTP do tipo POST, contendo informações básicas sobre o evento ocorrido.
Para obter dados mais detalhados, a empresa pode utilizar a API REST, desde que disponha das credenciais de autenticação necessárias. Alternativamente, o portal permite configurar o envio completo das informações do evento diretamente no corpo da requisição, ativando a opção "Enviar dados completos" durante o cadastro do webhook.
Recomendamos, por motivos de segurança, utilizar o modo padrão com dados resumidos e realizar a complementação posteriormente via Open API. Também é possível incluir uma chave de autenticação personalizada no cabeçalho Authorization
das requisições enviadas.
Segue abaixo webhooks que são possíveis de serem recebidos:
● Novo cliente esperando
● Nova chamada iniciada
● Chamada finalizada
● Chamada avaliada
● Tags da chamada alteradas
● Cliente saiu da fila
● Atendente tirou um screenshot
● Atendente fechou a chamada
● Atendente fechou a solicitação
● Validação dos dados do cliente
● Validação de dados do cliente pelo atendente
● Cliente agendou uma chamada
● Cliente cancelou o agendamento
● Cliente reagendou a chamada
Acesse nossa documentação de Configurações de Firewall para consultar os IPs que serão utilizados para o disparo dos webhooks.
📌 Hooks de Browser
Caso seja necessário a execução de trechos de código dentro do seu site durante o processo de atendimento via Nuvidio, disponibilizamos o envio de mensagens de eventos através do widget sem a necessidade de integrações mais complexas via API. Todo o processo ocorre via Post Message uma funcionalidade nativa dos navegadores.
As mensagens podem ser escutadas via o próprio listener da propriedade window do navegador window.addEventListener. Segue abaixo um exemplo de utilização:
window.addEventListener('message', ({ data }) => {
if (!data) return;
const dataParsed = typeof data === 'string' ? JSON.parse(data) : data;
// Valida o tipo correto do evento de finalização
if (dataParsed.type === 'CALL_FINALIZED') {
// Código a ser executado
}
});
Abaixo segue a tabela de eventos emitidos:
Tipo (evento) | Descrição |
---|---|
QUEUED_UP | Cliente entrou na fila |
CALL_FINALIZED | Chamada finalizada |
FORM_SUBMITTED | Cliente preencheu o formulário e enviou para validação |
CALL_STARTED | Chamada iniciada |
QUEUE_LEFT | Cliente clicou em sair da fila |
WIDGET_OPENED | Widget aberto e exibido na tela |
LOCATION_COLLECTED | Localização buscada pelo roteador |
SELECTION_COLLECTED | Opção selecionada no roteador |
CALL_RATED | Chamada avaliada |
A aplicação envia outros eventos, mas que estão depreciados e não devem ser utilizados já que serão removidos em breve.
Alguns desses Hooks enviam informações adicionais, mas todos seguem o seguinte padrão de retorno:
{
"type": "CALL_STARTED", // Especificação do tipo da mensagem
"event": "CALL_STARTED", // Especificação do tipo do evento (geralmente corresponde ao type)
"page": {
"pagePath": "cliente/chamada-video", // Path que o cliente se encontrava quando o evento foi emitido
"platform": "nuvidio" // Identificação da plataforma nuvidio
},
"data": {} // Qualquer informação extra quando necessário
}