Interact CTI: Canais e Assinaturas - Guia Completo#
Introdução#
O Interact CTI é uma poderosa ferramenta de integração que permite controlar e monitorar recursos do Interact, oferecendo interfaces para diversas funcionalidades.Principais funcionalidades do Interact CTI:Sincronismo de tela de agentes
Supervisão de estatísticas e alarmes
Este guia explora detalhadamente o sistema de Canais e Assinaturas do Interact CTI, fornecendo um entendimento completo sobre como estabelecer, gerenciar e utilizar a comunicação entre a sua aplicação e o Interact.1. Canais: A Ponte de Comunicação#
Um canal no Interact CTI representa uma conexão HTTP persistente que atua como um duto dedicado para o fluxo de informações entre a sua aplicação e o servidor.1.1 Estabelecendo a Conexão#
Para estabelecer um canal, envie o comando open_channel
ao servidor Interact CTI.channel_id
: Identificador numérico único (1-9999)
format
(opcional): XML ou JSON (padrão: XML)
O servidor responderá com um evento on_open_channel
, confirmando a abertura do canal.
1.2 Gerenciando a Conexão#
Múltiplas Assinaturas
Um único canal pode receber eventos de várias assinaturas.
Timeout
O canal é fechado após 1 minuto de inatividade.
Fechamento Explícito
Use o comando close_channel
para fechar manualmente.
Resposta de Fechamento
O servidor envia um evento on_close_channel
ao fechar.1.3 Manutenção do Canal: Heartbeat#
O Interact CTI utiliza um mecanismo de Heartbeat para manter o canal ativo, enviando periodicamente um pacote de dados vazio (data: {}
).
2. Assinaturas: Definindo o Fluxo de Eventos#
Assinaturas determinam quais eventos sua aplicação receberá do Interact CTI.2.1 Criando uma Assinatura#
Use o comando subscribe
para criar uma assinatura.id
(opcional): Identificador numérico da assinatura
agents
(opcional): Lista de agentes ou all
/*
para todos
services
(opcional): Lista de serviços ou all
/*
para todos
media_types
(opcional): Lista de mídias (voice, email, chat) ou all
/*
events
(opcional): Lista de eventos operacionais ou all
/*
channel_id
: ID do canal para receber os eventos
webhook
: URL do webservice para receber eventos via HTTP POST
expires
: Tempo de expiração em segundos (1-86400)
{
"subscription": {
"agents": ["Jose", "Maria"],
"events": ["on_login", "on_logout"],
"channel_id": 1234,
"expires": 3600
}
}
2.2 Alteração e Renovação de Assinatura#
Para alterar ou renovar uma assinatura, envie um novo comando subscribe
com o mesmo id
.2.3 Cancelando uma Assinatura#
Use o comando unsubscribe
para cancelar uma assinatura.2.4 Eventos: Tipos e Detalhes#
Os dados dos eventos são enviados no formato especificado na abertura do canal (XML ou JSON) e seguem o modelo Server Sent Events (SSE).
2.5 Exemplos de Uso#
1
Monitorando o Estado de Agentes
1.
Criar um canal com open_channel
2.
Criar uma assinatura com subscribe
, filtrando agentes e eventos
3.
Processar eventos como on_login
, on_logout
, on_change_state
2
Coletando Estatísticas de Serviços
1.
Criar um canal com open_channel
2.
Criar uma assinatura com subscribe
, filtrando serviços, mídias e variáveis estatísticas
3.
Processar eventos on_service_stats
periodicamente
Conclusão#
O sistema de Canais e Assinaturas do Interact CTI oferece um mecanismo robusto e flexível para integrar sua aplicação com os recursos do Interact. A criação de canais dedicados e a personalização de assinaturas, combinadas com filtros precisos, garantem um fluxo de informações eficiente e relevante.Compreender esses conceitos é essencial para utilizar o Interact CTI em todo o seu potencial, permitindo criar integrações poderosas e personalizadas que atendem às suas necessidades específicas.