pesquisa automática - isochat - whatsapp
Cadastro da pesquisa
Para a pesquisa ocorrer de forma automática, é necessário que o campo "Pesquisa automátca" esteja com a opção "Sim" selecionada.
Seleção dinâmica
A seleção dinâmica define quais chats terão a execução de uma pesquisa automática. A partir de um "script" o motor de pesquisa irá selecionar os chats que a pesquisa automática irá executar.
Script padrão SQL Server:
INSERT INTO ISOSDCON_DADOS
SELECT DISTINCT T1.ISOEMP_CODIGO, '§ISOSDCONEXE_CODIGO§' , ISOCHT_CODIGO AS CODIGO , 'ISOCHATBOT', 'A', CAST(CONVERT(CHAR , GETDATE(), 120) AS DATETIME), '1'
FROM ISOCHAT T1
INNER JOIN ISOPQ_SD T4
ON T4.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T4.ISOPQPES_CODIGO = 11 // ALTERAR PARA O CÓDIGO DA PESQUISA CADASTRADA
INNER JOIN ISOPQPESQUISA T5
ON T4.ISOEMP_CODIGO = T5.ISOEMP_CODIGO
AND T4.ISOPQPES_CODIGO = T5.ISOPQPES_CODIGO
WHERE ISOCHT_WHATSAPP = 'W'
AND ISOCHT_ENTCLICODIGO > 0
AND ISOCHTSIT_CODIGO = 4 // ALTERAR PARA O CÓDIGO DA SITUAÇÃO DO CHAT CONCLUÍDO/ENCERRADO
AND ISOCHT_MODULO <> 'PES'
AND ISOCHT_DATAFIM >= GETDATE() - 1
AND NOT EXISTS (SELECT * FROM ISOCHAT T2 WHERE
T2.ISOEMP_CODIGO = T1.ISOEMP_CODIGO AND
T2.ISOCHT_GXCHATUSERDEVICE = T1.ISOCHT_GXCHATUSERDEVICE AND
T2.ISOCHTSIT_CODIGO = 3) // ALTERAR PARA O CÓDIGO DA SITUAÇÃO DO CHAT EM ATENDIMENTO
AND NOT EXISTS (SELECT * FROM ISOPQATENDIMENTO T6 WHERE
T6.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T6.ISOPQATE_CODMODULO = T1.ISOCHT_CODIGO
AND T6.ISOPQATE_MODULO = 'ISOCHATBOT')
AND NOT EXISTS (SELECT * FROM ISOSDCON_DADOS T7 WHERE
T7.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T7.ISOSDCON_DAD_CODIGO = T1.ISOCHT_CODIGO
AND RTRIM(T7.ISOSDCON_DAD_DESCRICAO) = 'ISOCHATBOT')
AND T5.ISOPQPES_DATAFINAL >= GETDATE()
AND T5.ISOPQPES_DATAINICIAL <= GETDATE()
Script padrão Oracle:
INSERT INTO ISOSDCON_DADOS (ISOEMP_CODIGO, ISOSDCONEXE_CODIGO, ISOSDCON_DAD_CODIGO, ISOSDCON_DAD_DESCRICAO, ISOSDCON_DAD_FLAG, ISOSDCON_DAD_DATAALTERACAO, ISOSDCON_DAD_USUARIOALTERACAO)
SELECT DISTINCT T1.ISOEMP_CODIGO, '§ISOSDCONEXE_CODIGO§' , ISOCHT_CODIGO AS CODIGO , 'ISOCHATBOT', 'A', SYSTIMESTAMP, '1'
FROM ISOCHAT T1
INNER JOIN ISOPQ_SD T4
ON T4.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T4.ISOPQPES_CODIGO = 1 // ALTERAR PARA O CÓDIGO DA PESQUISA CADASTRADA
INNER JOIN ISOPQPESQUISA T5
ON T4.ISOEMP_CODIGO = T5.ISOEMP_CODIGO
AND T4.ISOPQPES_CODIGO = T5.ISOPQPES_CODIGO
WHERE ISOCHT_WHATSAPP = 'W'
AND ISOCHT_ENTCLICODIGO > 0
AND ISOCHTSIT_CODIGO = 1 // ALTERAR PARA O CÓDIGO DA SITUAÇÃO DO CHAT CONCLUÍDO/ENCERRADO
AND ISOCHT_MODULO <> 'PES'
AND ISOCHT_DATAFIM >= SYSTIMESTAMP - NUMTODSINTERVAL(1, 'HOUR')
AND NOT EXISTS (SELECT * FROM ISOCHAT T2 WHERE
T2.ISOEMP_CODIGO = T1.ISOEMP_CODIGO AND
T2.ISOCHT_GXCHATUSERDEVICE = T1.ISOCHT_GXCHATUSERDEVICE AND
T2.ISOCHTSIT_CODIGO = 2) // ALTERAR PARA O CÓDIGO DA SITUAÇÃO DO CHAT EM ATENDIMENTO
AND NOT EXISTS (SELECT * FROM ISOPQATENDIMENTO T6 WHERE
T6.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T6.ISOPQATE_CODMODULO = T1.ISOCHT_CODIGO
AND T6.ISOPQATE_MODULO = 'ISOCHATBOT')
AND NOT EXISTS (SELECT * FROM ISOSDCON_DADOS T7 WHERE
T7.ISOEMP_CODIGO = T1.ISOEMP_CODIGO
AND T7.ISOSDCON_DAD_CODIGO = T1.ISOCHT_CODIGO
AND RTRIM(T7.ISOSDCON_DAD_DESCRICAO) = 'ISOCHATBOT')
AND T5.ISOPQPES_DATAFINAL >= SYSTIMESTAMP
AND T5.ISOPQPES_DATAINICIAL <= SYSTIMESTAMP
Tabela utilizada na seleção dinâmica: ISOSDCON_DADOS
ISOEmp_Codigo: Código da empresa;
ISOSDConExe_Codigo: Código da execução;
ISOSDCon_Dad_Codigo: Código do chat;
ISOSDCon_Dad_Descricao: 'ISOCHATBOT' - Módulo utilizado;
ISOSDCon_Dad_Flag: 'A' - Ativo;
ISOSDCon_Dad_DataAlteracao: Data atual;
ISOSDCon_Dad_UsuarioAlteracao: 1 - Usuário padrão;
Condições da seleção:
ISOCHT_WHATSAPP = 'W' : Chats do tipo WhatsApp;
ISOCHT_ENTCLICODIGO > 0 : Chats com código de cliente no isoCRM;
ISOCHTSIT_CODIGO = 3 : Chats com a situação concluído; Ver cadastro de situação do chat;
ISOCht_Modulo <> 'PES' : Chats que não são referente à pesquisa;
ISOCht_DataFim >= (select ISOPQ_SD_DataUltimaExecucao from ISOPQ_SD WHERE ISOPQPes_Codigo = 4) : Chats que foram finalizados após a data da última execução do motor de pesquisa referente à pesquisa cadastrada;
Vínculo da seleção dinâmica com a pesquisa. Na opção "Incluir apenas novos contatos" selecionar a opção "Não", com isso todas as conversas que forem finalizadas, conforme a seleção dinâmica, receberão a pesquisa.
Formulário
O formulário deverá ser cadastrado utilizando perguntas do tipo "combobox" para efetuar o salto de perguntas e definição da pontuação.
As perguntas poderão ser vinculadas com templates previamente cadastrados utilizados no WhatsApp. Ver módulo Omnichannel. Desta forma, a pergunta será enviada como um template.
Salto de perguntas
As perguntas do tipo combobox habilitam a possibilidade para efetuar salto de perguntas e definir uma pontuação. Desta forma, pode-se definir um fluxo de perguntas, conforme as respostas.
Exemplo de fluxo de pesquisa:
Pergunta 1: Vincula com um template do WhatsApp.
Você gostaria de participar de uma pesquisa rápida?
Opções:
Sim: Salto para a pergunta 2; Pontuação 1;
Não: Deixar em branco, com isso encerra a pesquisa; Não tem salto de pergunta;
Pergunta 2:
Em uma escala de 0 a 10, como você avalia esse atendimento?
Opções:
Muito insatisfeito: Salto para a pergunta 3; Pontuação 1;
Insatisfeito: Salto para a pergunta 3; Pontuação 2;
Neutro: Salto para a pergunta 3; Pontuação 5;
Satisfeito: Salto para a pergunta 3; Pontuação 7;
Muito satisfeito: Salto para a pergunta 3; Pontuação 10;
Pergunta 3:
Você indicaria a nossa empresa para um amigo ou familiar?
Opções:
Sim: Sem salto para próxima pergunta; Pontuação 10;
Talvez: Sem salto para próxima pergunta; Pontuação 5;
Não: Sem salto para próxima pergunta; Pontuação 1;
Vínculo do formulário com a pesquisa
Após o cadastro do formulário e necessário vincular com a pesquisa.
Mensagem de encerramento.
A mensagem de encerramento é cadastrada no vínculo do formulário com a pesquisa.
Agrademos a sua colaboração! 🙂
Motor de pesquisa
O motor de pesquisa executa a seleção dinâmica, inicializa a pesquisa enviando a primeira mensagem da pesquisa e encerra pesquisas inativas.
Execução do motor:
Exemplo da localização: C:\inetpub\wwwroot\isocrm\motor\bin\apisomotorpesquisa.exe
Comando para execução: apisomotorpesquisa.exe 1 USUARIO SENHA INTERVALO HORÁRIO_LIMITE LOG
Exemplo: apisomotorpesquisa.exe 1 MOTORPESQUISA 123 10 23:00 S
O usuário do motor deverá ser um "atendente" na classificação chat. Ou é necessário cadastrar o detalhe ATENDENTE_CHAT conforme o parâmetro a seguir.
Parâmetros
Parâmetros necessários para o funcionamento da pesquisa automática.
Parâmetro: ISOMOTORPESQUISA
Usuário: Usuário do motor de pesquisa ou usuário 1.
Detalhe: PORTA
Valor: 443
Detalhe: SECURE
Valor: 1
Detalhe: HOST
Valor: 'localhost'
Detalhe: BASEURLISOCHATBOT
Valor: 'https://localhost/isocrmisobot/rest/'
Detalhe: LIMITE_EXPIRACAO
Valor: 3 - Tempo em minutos de inatividade para encerar a pesquisa.
Detalhe: ATENDENTE_CHAT * a partir da versão 17.0.0 R43 B2
Valor: Código do atendente do chat na pesquisa.