Integração CTI
Configuração
Antes de iniciar a configuração da integração com o CTI, é importante configurar a base de dados do cliente. Para isto, é necessário preencher os campos da tabela EMPRESAS:
| Campo | Descrição |
|---|---|
| usa_cti | Habilita os botões de ligar no CRM |
| cti_autenticacao | Informa qual é a forma de autenticação do usuário no CTI (não é o socket), sendo:
|
| cti_tipo | Informa ao ‘ModuloCti.php’ que é para gerar uma requisição do socket para o web socket, o valor tem que ser 10 |
| cti_protocolo | Informa qual é o protocolo que vai ser feito a requisição |
| cti_ip | Informa o endereço do CTI do cliente |
| cti_porta | Informa a porta do CTI do cliente |
| cti_caminho | Informa o resto do endereço da API do CTI do cliente |
| cti_usa_linha | Não utilizado |
| cti_numero_linha | Não utilizado |
| cti_usa_zero_ddd | Define que se o valor for igual a 1 então adiciona o tom de discagem (0 zero antes do número de telefone) quando não for ramal interno |
| cti_nome_origem | Vvariável que vai na URL que diz que é o número de origem, número que tá ligando, no caso ramal que tá ligando |
| cti_nome_destino | Variável que vai na URL que diz que é o número de destino, número que tá recebendo |
Nota
É possível que os campos da tabela EMPRESAS ainda não estejam disponíveis na base do cliente.
- Campo usa_cti: 1
- Campo cti_autenticacao: 1
- Campo cti_tipo: 10
- Campo cti_protocolo: https
- Campo cti_ip: demo…
- Campo cti_porta: 8.080
- Campo cti_caminho: api/clicktodial
- Campo cti_usa_linha: 0
- Campo cti_numero_linha: 0
- Campo cti_usa_zero_ddd: 0
- Campo cti_nome_origem: origem
- Campo cti_nome_destino: destino
Formato da URL: $protocolo://$ip:$porta/$caminho?$nomeOrigem=$ramal&$nomeDestino=$phone$tokenUrl
URL com os dados: https://demo.integracaocto.com.br:8080/api/clicktodial?origem=3501&destino=4732100123
Como o CRM na plataforma também utilizará o Web Socket, logo são alteradas as informações da tabela ‘empresas’ para a tabela ‘configuracao_cti’. Isso significa que, os arquivos mais novos já utilizam para configurar o recebimento da ligação conforme necessidade, sem alterar código nos arquivos:
| Campo | Descrição |
|---|---|
| autenticacao | Informa qual é a forma de autenticação do usuário no CTI (não é o socket), sendo: 1. CURLOPT_USERPWD $agente:$senha informações cadastradas no usuário;
|
| tipo | Informa ao ‘ModuloCti.php’ que é para gerar uma requisição do socket para o web socket, o valor tem que ser 10 |
| protocolo | Informa qual é o protocolo que vai ser feito a requisição |
| ip | Informa o endereço do CTI do cliente |
| porta | Informa a porta do CTI do cliente |
| caminho | Informa o resto do endereço da API do CTI do cliente |
| usa_linha | Não utilizado, porém vai utilizado para dar o tom de discagem, quando 1 ativa a função |
| numero_linha | Não utilizado, porém será o número do tom de discagem, o valor presente será usado direto no número do telefone |
| metodo_chamada | Informa o método da chamada para o CTI |
| nome_variavel_origem_sainte | Variável que vai na URL que diz que é o número de origem. Número/ramal que está ligando, no caso das ligações realizadas |
| nome_variavel_destino_sainte | Variável que vai na URL que diz que é o número de destino. Número que está recebendo a ligação, no caso das ligações realizadas |
| nome_variavel_origem | Variável que vai na URL que diz que é o número que está ligando, no caso das ligações recebidas |
| nome_variavel_destino | Variável que vai na URL que diz que é o número que está recebendo a ligação, no caso das ligações recebidas |
| nome_variavel_audio | Variável que vai na URL que diz que é o endereço onde está disponível o áudio da ligação |
Depois de configurar o banco, devem ser substituídos os arquivos /sistema.php e /modulos/ModuloCti.php pela versão atual do sistema. Feito isso, o arquivo de /sistema.php será capaz de se conectar via protocolo WS no Web Socket, e iniciar ações, como a exibição do pop-up de inicio, recebimento e final de ligação. Ao trocar o arquivo do /modulos/ModuloCti.php, este será capaz de iniciar ligações, quando o cti_tipo for igual a 10.
Arquivos que devem ser colocados na base desse cliente na pasta /wconnect/:
- WConnect_MonitoraRamal.php;
- WConnect_WSDL_ConsultaRamal.php;
- WConnect_WSDL_FinalizaLigacao.php;
Nota
Somente o arquivo WConnect_MonitoraRamal.php precisa ser alterado por causa dos acessos do banco de dados, ou alterar como os demais arquivos.
Também é necessário configurar a tabela WL_chamados_empresa do banco de dados do Gestão de Relacionamento | CRM com os dados corretos do cliente em questão. Os dados do cliente a serem informados nesta tabela são: nome_banco, senha_banco e tenant.
| Campo | Tipo de dados |
|---|---|
| empresa_id | Int |
| nome | Varchar |
| nome_banco | Varchar |
| senha_banco | Varchar |
| senha_padrao | Varchar |
| ativo | Int |
| versao_ambiente | Varchar |
| data_versao | Date |
| host | Varchar |
| vip | Int |
| tenant | Varchar |
| curva_health_score | Varchar |
| health_score | Int |
Funcionamento da comunicação entre o CRM, Web Socket e CTI do Cliente:
Ao iniciar uma ligação através do CRM são verificadas as informações do cliente e, tendo os dados de conexão com o Web Socket configurados corretamente, é enviado uma chamada para o Web Socket de início de ligação. Ao mesmo tempo completa as ações do módulo, salva os dados da ligação para histórico e exibe o pop-up p de início de ligação. Enquanto isso, o Web Scoket recebe a chamada, processa e consulta os valores, e, tendo todos os dados válidos, envia uma requisição para o CTI do cliente que inicia a ligação.
Quando a ligação encerra, o CTI do cliente envia uma requisição para o Web Scoket do CRM que, recebe a chamada, processa a requisição e consulta as informações para se conectar ao usuário. Com as informações, salva os dados da ligação para histórico e verifica se o mesmo está logado no CRM naquele momento e, caso esteja, envia a chamada para o cliente do Web Socket, que recebe a chamada e exibe o pop-up de final de ligação.
English
Español

English
Español

