fala pessoal beleza bom no vídeo de hoje nós vamos tratar sobre as intervenções humanas durante o atendimento ali da Inteligência Artificial basicamente o que que acontece Nossa inteligência tá lá toda pomposa atendendo o cliente e o dono ali do negócio tá acompanhando via WhatsApp em determinado momento ele resolve intervir na conversa ele quer falar com o cliente certo e se a gente não tiver implementado isso que nós vamos implementar aqui agora nesse vídeo eh a inteligência artificial vai continuar respondendo o o cliente mesmo eh com o uma pessoa um humano respondendo então vai virar uma
bagunça Ali vai virar uma salada de de mensagens e pode ficar bem confuso né pode não vai ficar bem confuso Então vamos lá de cara eu já consigo imaginar algumas formas que a gente pode fazer isso eh só que a gente vai fazer aqui de uma forma que não vamos subir eh Nenhuma ferramenta vamos utilizar apenas a Evolution e o WhatsApp web no caso e o nhn certo Não vamos subir por exemplo no chatot se você quiser fazer pelo chatot tem como é legal Você pode adicionar os Label zinhos lá de boot ativo boot nativo
e o agente de atribuído e tudo fica bem legal isso pode ser conteúdo de um vídeo também mas hoje a gente vai tratar somente com nhn Evolution api e o pró próprio WhatsApp web certo que o cliente vai est que o dono do negócio vai estar utilizando vai est acessando certo esse vídeo aqui é uma é uma solicitação aqui do rena Costa ele deixou aqui um comentário pra gente pedindo para que eu fizesse um vídeo eh sobre isso que ele implementou em um projeto dele só que ele não sabe se o que ele implementou é
o melhor meio e aqui eu vou trazer a melhor forma que eu encontrei para mim s fonar esse problema para para que eu e desenvolvesse e fosse funcional e não me desse tanto trabalho tanto gerenciamento certo e vamos lá então pessoal e primeiro a gente vai criar aqui o nosso fluxo do n e esse fluxo vai ser o webop webop post para receber as informações da Evolution vou colocar sem autenticação e ele vai chamar intervencão interven beleza vou trocar aqui da intervenção humana show de bola e agora eu vou configurar aqui no meu router meu
router certo que que é esse router aqui que que eu fiz em vez de eu ficar Tod todas as À vezes vindo aqui na Evolution abrindo aqui a minha Instância indo nos eventos web Hook e trocando aqui o Web Hook que tá sendo enviado ou o Web Hook de de produção e ou web Hook de teste ou às vezes eu tenho eu quero receber a mensagem para outro pim tipo eu quero só armazenar a mensagem para fazer um um pós processamento Depois nem vai ter uma ia respondendo e aqui eu não tenho a possibilidade de
colocar dois web hops certo na mesma Instância então é o que eu faço aqui nesse router esse aqui é o endereço de produção que tá configurado aqui na Evolution então todas as mensagens vai chegar aqui e aqui ele distribui ele distribui pro fluxo YouTube de teste que é quando eu clico aqui em test workflow ele manda pro fluxo YouTube de produção que é quando tá ativo aqui ó o nosso fluxo certo então eu vou fazer a mesma coisa aqui agora eu vou duplicar esse fluxo YouTube eu vou desativá-lo porque eu quero desligar o a inteligência
artificial que tá respondendo por ele ela tá configurada E tá respondendo certo então eu vou fazer uma ligação aqui vou colocar o intervenção humana prod isso mesmo e aqui é o intervenção pegar aqui se eu não me engano é interal Beleza então basicamente aqui ele pega tudo que ele recebe no Jason BO e encaminha pro próximo web e eu vou fazer a mesma coisa para o de teste certo puxar aqui vou colocar como interal aquição humana tirar final beleza ele faz a mesma coisa só que o de teste do fluxo YouTube de produção eu não
vou desativar porque ele só funciona quando eu aperto no teste workflow certo então esse aqui é o meu router esse aqui é o meu workflow de Rota ele recebe tudo e encaminha para vários outros web hooks certo beleza voltando aqui para intervenção humana Vamos fazer um teste então eu vou trazer aqui o meu WhatsApp What web no grupo e vou mandar um Olá beleza recebido aqui já a nossa mensagem de Olá Beleza se a gente observar aqui o body o corpo da mensagem aqui do evento que nós Recebemos a gente pode verificar aqui ó que
o o tem aqui o Remote de ID aqui que no caso é o número de quem tá enviando e aqui tem esse from me esse from significa se foi eu ou se não fui eu que enviei essa mensagem certo Enviei essa dispare a mensagem então se eu vir aqui no WhatsApp web e mandar olá agora o evento que a gente tem é o mesmo remote did porque é o a conversa é a caixa de entrada no caso só que o fica que sim fui eu que mandei a mensagem certo é uma mensagem que foi mandada
aqui via WhatsApp web as mensagens que são enviadas pela Evolution elas não geram evento certo elas não criam um evento que chega via webro então a gente não não precisa se preocupar com essas mensagens que são as mensagens que o assistente tá utilizando certo que a o a Open a a inteligência artificial ali tá gerando e tá respond respondendo certo então a gente não precisa se preocupar com ela Nós só precisamos nos preocupar com PR me true ou false false é quando é o cliente mandando mensagem true é quando é o dono do negócio aqui
o dono do WhatsApp mandando a mensagem beleza com base nisso e sabendo disso a gente pode começar a trabalhar eh essa parte Aonde ele vai bloquear o o usuário caso eh e tenha uma intervenção humana então aqui eu já vou ser bem objetivo tá e já vou seguir para o para paraa solução nem vou colocar um agente aqui respondendo primeiro Tá bom mas vamos lá primeiro eu vou ter um no IF certo esse noif primeiro Deixa eu só fazer uma coisa aqui eu vou trazer a normalização aqui ó e eu utilizo no luxo YouTube eh
aqui esse nó de normalização aqui só para ficar mais fácil ele já pega todos os tipos ali eh de de mensagem que chega da Open então eu vou utilizar vou mandar um poar normalização eu tenho que chamar de input Evolution save vamos testar novamente e vamos Olá show de bola tá normalizado os nossos dados e agora a gente tem os dados aqui de Instância e temos os dados também de da mensagem do chat ID que é quem manda a mensagem e aqui ó esse e é o que eu criei na normalização deixa eu pegar aqui
para dizer se a mensagem é de entrada ou de saída eu ia utilizar no no si eu ia direto checar essa informação aqui tá do Pr me mas basicamente com essa expressão é isso que eu estou fazendo eu vou explicar ela para você aqui agora o from me ele tem um true ou false certo ele é verdadeiro ou ele é falso então eu trago ele aqui nessa expressão ó Jon Body data from me se isso aqui for true eu traduzo isso PR outcoming que é saída entendeu é uma mensagem de saída se isso aqui for
false ele não vai ser traduzido para outcoming ele vai ser traduzido para incoming que é entrada certo que é uma mensagem de entrada então basicamente eu fiz só uma tradução aqui para ficar visível para mim que o evento é de outcoming que é de saída ou incoming que é de entrada e sempre que a pessoa o humano intervém aqui pelo WhatsApp web vai ser um evento de saída perfeito então aqui a gente pode trazer agora um e aqui eu vou checar o ev é igual outc certo eu vou fixar essa informação para que eu não
precise ficar rodando toda hora beleza aqui ele deu true sim é uma mensagem e de saída é uma intervenção humana Beleza então o que que eu vou fazer com a intervenção humana eu vou vir aqui e vou eh criar um Heads certo nesse nó eh eu vou criar uma aqui h set value off aqui em Heads beleza essa aqui ela vai ser o chat ID e aqui eu vou colocar o underline blck certo é o nome da chave eu tô colocando o chat ID porque eu não tô utilizando só o chat ID que no caso
é o número da pessoa que iniciou a conversa porque eu utilizo também o Heads para fazer memória para fazer outras coisas então eu sempre coloco um sufixo aqui para Ah é desse chat ID mas é block para saber se ele tá bloqueado ou não certo evalue eu vou colocar aqui uma expressão boana para true por exemplo aqui poderia ser qualquer coisa mas eu vou colocar um bolean aqui Beleza deixa em automático mesmo ele já vai identificar aqui o tipo e aqui que é o segredo da coisa tá esse expir certo essa inspiração e nessa inspiração
eu vou colocar 15 minutos quanto tempo que é 15 minutos se 1 minuto é 60 segundos 10 minutos são 600 segundos V ser 900 segundos certo então eu tenho uma inspiração aqui de 900 segundos já vocês vão entender o porquê dessa esses essa inspiração e eu vou explicar Beleza então aqui eu vou colocar aqui eh Block aí para bloquear Inteligência Artificial certo e quando não for o nó de de outcoming certo aqui para ficar bonito a gente poderia até utilizar um sutch é isso que eu vou fazer tá vamos deixar isso aqui mais bonitinho eu
vou fazer assim ó sut é igual a outcom certo tá certo e vamos renomear a saída para outp também igual a infome vamos renomear a saída também para en tá Por que eu fiz isso cara costume prefiro usar sut do que IP porque o Switch me dá mais opções se no futuro eu quiser incluir mais alguma coisa aqui mais algum swit aqui é só eu incluir eu não vou precisar eh mexer no IF e coisas do tipo então aqui se for outcom eu vou pro Block aí que ele vai setar e lá no RS uma
chave com o chat ID e o buan ali com valor de True certo e se a mensagem for de entrada se o usuário tiver enviando essa mensagem eu vou vir no Heads também mas aí o que que eu vou fazer no Heads agora eu vou querer o obter um valor certo eu vou querer obter e qual que é aqui qual que é a chave que eu quero obter aqui do RS eu quero obter essa chave aqui ó que eu copiei que é o chat ID underline Block certo aqui eu vou chamar de block ele vai
vir como automático não preciso de nenhuma opção Beleza então Então vamos fazer aqui um teste simples se deixa eu tirar esses aqui não podem tipo do Set por favor Ah tá string vou colocar como string não vai poder ser boleano então vou colocar aqui como fixo mesmo beleza sem problemas e agora a vai testar se eu vir aqui e mandar um olá ele veio aqui e criou um Block certo e agora se eu vir aqui e mandaram olar é o teste mandar aqui ó olá ele veio aqui e consultou e na na consulta dele ele
encontrou um blog certo agora a gente vai partir pra parte da lógica certo Deixa eu só renomear isso eu vou chamar po Beleza então vamos lá e se acontecer o seguinte deixa eu colocar esse ptl aqui para um segundinho eu vou salvar vou mandar um Olá aqui certo com esse dtl de 1 Segundo ele vai sobrescrever eh aquela mensagem lá aquele ele vai sobrescrever aquele aquela chave que a gente tinha criado aquela informação e aí agora ele vai apagar depois de um segundo então se eu vir aqui neste WhatsApp e mandar um olá agora ele
não vai mas encontrar aquele tru gente tá mandar um olá ele não vai encontrar mais o true certo cont e p no segundo não segir paraar inspiração V testar aqui novamente olar el fez em teoria é para est com tpl de 1 segundo Vamos mandar aqui colar isso agora sim provavelmente eu não tinha executado aqui ou não tinha salvo a configuração uma coisa assim mas basicamente o que que eu fiz aqui eu alterei novamente para um segundo só para vocês verem que se não tiver a chave lá ele vai trazer aqui o blo como nulo
E é isso que a gente vai checar Beleza se eu vou colocar um swit tá não vou colocar um s o bloco ele é uma string e essa string uma string vazia aqui eu vou colocar ya ya pode responder certo e agora eu vou adicionar também o Block aqui só que se ele for igual a true aqui a ia não pode responder S Block Beleza então o que que nós temos aqui agora é Recebemos a mensagem a gente passa pela normalização passamos para un para um sutch para ver se é uma mensagem de entrada ou
se é uma mensagem de saída se for uma mensagem de saída que é uma mensagem que foi uma intervenção aqui via WhatsApp ele vai criar uma chave de bloqueio lá dentro do nosso Heads certo e se for uma mensagem de entrada ele vai lá no Heads verificar eh pedir o valor dessa chave de bloqueio certo se o na hora que ele consultar o Retorno lá do RS for o Block igual a nulo vazio aí a pode responder significa que não tá bloqueado se for igual a true é porque a o usuário o o usuário não
o o dono do negócio aqui interview o humano interview então a i a não pode responder beleza então vamos fazer um testezinho aqui primeiro mandando um ligar né se ligar não funcion primeiro mandando um Olá sem tá bloqueado e caímos no i pode responder agora nós vamos mandar um olá para bloquear Beleza então agora bloqueou por 900 segundos Isso aqui vai ficar essa chave só vai ser apagada automaticamente pelo pelo Heads daqui 15 minutos daqui 900 segundos então se eu mandar um Olá aqui de novo depois que eu ativar o fluxo molar aqui de novo
ele cai no ia não pode responder beleza Qual que é a grande sacada disso aqui a grande sacada é utilizar apenas o Heads não precisar e ficar se comunicando por exemplo com post Gris su base Bas ou ou planilha do Google Drive não sei o que que você utiliza aí então a gente vai utilizar só o Heads você tem um nhn Você tem uma instalação do Heads não existe nhn sem Heads entendeu então você não vai precisar subir um banco de dados r e de novo você utiliza o mesmo que você tem ali pro seu
nhn certo e coloca a chave aqui como o chat ID e o uma um sufixo aqui para identificar ó é o chat ID de block aqui certo que eu vou estar gravando informação agora a gente já tem isso e isso aqui depois de 15 minutos Vai expirar automaticamente então toda vez que ou mano mandar alguma coisa certo ele vai cair nesse fluxo aqui então o a ia não vai ficar 15 minutos sem responder a ia vai ficar 15 minutos depois da última mensagem do humano sem responder entendeu então depois que passou 15 minutos que o
humano respondeu aí a pode passar responder novamente porque a chave de bloqueio vai ter sumido do Reds vai ter sido apagada então vamos aqui no ia pode responder eu vou colocar por exemplo isso aqui é é só um exemplo fício tá que aí a não eu vou vou fazer direitinho vou pegar um nó aqui de inteligência eh vou pegar aqui texto mensagem com tá Vou colocar aqui uma mensagem de sistema T escolher o modelo aqui para eu não uso tanto esse nó aqui tá então tipo vou colar aqui você eh você é você é o
um assistente e fala sobre qualquer pronto colocar qualquer PRP de sistema aqui e o texto certo eu vou só puxar aqui para eu ter acesso a input da normalização beleza Vixe não tá pegando aqui tiado eh pegar por vamos por aqui o nhn não é perfeito tá gente só para vocês saberem acontece bugzin aqui essa versão para mim tá estável tipo não senti a necessidade de atualizar então eu não não fui atualizar então tem algumas coisinhas aqui que que que dá uns bugzinho maneiro beleza Tá basicamente é isso que eu quero fazer e aqui eu
vou criar um nó http lá para Evolution ó tá vendo aqui agora já tá aparecendo cara é uma loucura vou pegar a server URL vou pegar é no formato post é barra nesse G ok Então vai ser barra bar text barra instance Beleza vou mandar um reader que chama api vou mandar o body do byter e Number e text apenas então tem ter Number e text Opa Number é o chat ID e o text vai ser o content bom acredito que não precisamos de mais nada agora eu vou colocar isso aqui para zero save para
um no caso né Tá certo vou ativar o teste mas aí eu preciso tirar isso aqui vou mandar um Olá aqui de intervenção humana para quê esse Olá aqui é só para setar como um segundo apenas o bloqueio humano Beleza então se eu vir aqui agora e mandar um oi oi como posso ajudar você hoje ah me algo legal ah tá eu tenho que clicar o eu vou ativar aqui o o fluxo tá porque aí a gente não precisa toda hora ficar ativando me conte algo legal Claro você sabia e pá controu uma história aqui
sobre os povos Beleza então agora eu vou vir aqui como humano e vou intervir eu vou escrever qualquer coisa porque se eu escrever intervir vocês vão achar que é interir a palavra que bloqueia né então eu mandei um olá agora se eu vir aqui e mandar uma mensagem e agora essa mensagem eu vou colocar o texte o testow aqui para vocês verem aonde ela vai cair Se eu mandar um ah ah blá blá blá já cai no fluxo de que a i não pode responder E aí a não vai responder certo então vamos fazer mais
um testezinho aqui só pra gente fixar o funcionamento do do nosso fluxo do nosso bloqueio aqui com a intervenção humana eu vou mandar um Olá aqui para um segundo vou colocar agora como 30 segundos tá pr pra gente conseguir testar e o bloqueio e o desbloqueio certo eu vou ativar o nosso fluxo aqui então agora já tá com 30 segundos E lembra que eu setei para um segundo de novo e limpei lá então se eu mandar um ah Olá aqui eu preciso que a inteligência artificial me responda ã Ah tá eu não tinha setado tá
como blo aqui Se eu mandar aqui para para um segundo de novo eu não tinha eu tava com o fluxo desabilitado e aí eu mandei o Olá sem apertar o teste workflow lá por isso que que não desbloqueou então agora vai para 1 segundo vou voltar aqui para 30 segundos pra gente conseguir testar certo podemos testar aqui agora Olá aqui eu espero que a inteligência artificial me responda ah quantas ah pernas tem o nem a perna né que chama é Cadê povo tem três corações o povo tem tentáculos Nossa eu chamei de pernas são tentáculos
beleza aqui a nossa ia tá respondendo a gente tudo tudo certo vou mandar umá de novo ele não tá com memória aqui tá então ele vai ficar o Olá vai ficar esse Olá vai te ajudar infinito o objetivo aqui não é ter memória então deixa sem memória mesmo isso aqui é só para você entender isso aqui você vai colocar no começo dos seus fluxos Tá bom então agora eu vou intervir com o humano e Aqui começa a contagem de 30 segundos tudo que eu mandar aqui ó agora ele não vai ser respondido certo então vamos
esperar um pouquinho aqui vamos esperar passar 30 segundos e assim que passar 30 segundos a gente vai poder enviar alguma coisa e a voltar a responder porque já passou o tempo do bloqueio certo vamos ver aqui acho que ainda não opa já passou o tempo de ok parece que você digitou algoo que não é claro como posso ajudar você hoje viu pessoal como é simples como é fácil como é rápido Talvez o vídeo tenha ficado um pouco grande mas é que eu gosto de ser detalhista para para explicar essas coisas para que você realmente Fix
e aprenda Ah e saiba como executar e não simplesmente vá lá e baixe o fluxo que eu vou disponibilizar vou subir no github para vocês ir lá fazer o download e subir aí no nhn de vocês mas para que vocês saibam e e saibam da manutenção Ah eu quero de 15 minutos é 900 segundos Ah eu quero 30 minutos é 1800 segundos entendeu então aqui vocês vão saber da manutenção e aqui que gerencia o tempo de bloqueio e sai do bloqueio automaticamente tudo isso com o nosso bom e velho RS beleza Renan Espero que tenha
te respondido aqui esse vídeo espero eso que seja um método diferente do seu para que você possa a pesar e falar pô isso aqui é muito bom isso aqui é bem interessante espero o seu comentário aí de agradecimento se você ainda não deixou o like no no vídeo cara eu não acredito que você chegou até aqui e não deixou esse like no vídeo cara eu entreguei conteúdo aqui que se pudesse você podia tinha que dar 1000 like infelizmente uma pessoa só consegue dar um like né Mas beleza compartilhe com os amigos e até próximo vídeo
deixa nos comentários aí sugestão que eu posso estar fazendo um vídeo para você também até mais