Então vamos lá pessoal aqui é a gente vai falar do redis né Ele é basicamente uma memória é Cash uma memória RAM e é uma memória muito rápida né uma memória e que normalmente as pessoas usam para cche para e sessão de conversa e a gente aqui tem três tem várias aplicações né mas eu acho que é interessante a gente ver essas aplicações aqui para essa memória porque mais simples quando a gente utiliza ela então aqui a gente tem um fluxo e é simples que eu preparei PR para esse me aqui aqui é o webook
normal da Evolution aqui a gente faz uma a gente coloca aqui a gente monta isso aqui eu vou passar também depois a gente bota content Type content Type se é áudio se é texto se é imagem ele já já dá Aqui de acordo com os parâmetros que ele pega do Web Hook e pega o chat ID que é remote né pra gente colocar na sessão pega o conteúdo né que é é o conteúdo que é o principal ele pega esse time stamp né que é o stamp que é isso aí vai ser uma coisa importante
que a gente vai falar daqui a pouco tá Dev al embaixo Aqui message time stamp Beleza então que acontece a gente pega esse mess stamp a gente bota e aqui esse mess event a gente coloca incoming ou outcoming dependendo se ele é from me ou não se é true ou fals né aqui él que a gente salva e aqui é instance né aqui a URL da Evo aqui é um time o buffer que a gente figur aqui aqui é o time de atendimento Então qual é o primeiro passo aqui da do do redit né é
a gente detectar então assim a gente V vamos ver aqui e aí ó ele chega aqui então ele chega aqui como ele chegou como incoming incoming é que vem de fora para dentro outcoming é que que é que é que sai de de de dentro para fora né vai para fora então aqui é a gente bota aqui igual a encam então assim quando for quando é uma mensagem en caming como essa aqui que o o aqui ó o from me é fals ele vai segue normal o flux quando esse from me ele é true se
ele vem aqui ó cadê cadê cadê cadê Aqui ó qu true ele vem aqui e ele vai identificar a mensagem como incoming e ele vai jogar aqui bom Que que aconteceu aqui ele setou a variável do redis ele pegou essa variável do redis aqui e ele colocou um valor de 720 e como a gente ligou esse expire aqui ele tá fazendo uma pagem agressiva segundo a segundo então é o que que isso significa isso significa que o cliente ele vai continuar mandando mensagem vou botar aqui ó false o cliente que tá mandando mensagem agora só
que vai parar aqui por que que parou aqui deixa eu só liberar aqui então por que que ele parou aqui porque aqui antes desse if a gente faz um get time out atendimento E como tá dentro do prazo do true então aqui nesse if a gente coloca o Jon atendimento ele não tá vazio né então ele ele true então é é o true ele foi pro true e o true não tem nada o o true espera então ele vai ficar aqui 720 segundos é pausado assim com É um mecanismo de 1 2 3 4 load
e a gente já faz uma uma pausa de atendimento quando o fromi é true E aí o que acontece aqui é que pra gente testar isso aqui agora pra gente continuar o nosso o nosso t a gente tem que vir aqui delete time time out atendimento eu vou aqui ó vou deletar essa aqui deletar essa aqui que tá com meu e tá com meu remote itats então eu vou clicar aqui delet e aí quando eu for aqui ó já vai passar passou passou por quê Porque aqui esse Espera já não é mais TR é nulo
é vazio então não tem mais pause aqui então esse aqui é a primeira aplicação do redis quando a gente quer pausar o atendimento por x segundos quando o from me ele é TR tá aí tudo tudo tranquilo tem alguma alguma questão aí com relação a esse primeiro ponto aqui eu tenho uma dú aí manda aí digamos o seguinte só para eu conseguir pensar aqui 12 ali néos Tô começando com um cliente aqui Digamos que o cliente me responde depois dos 12 minutos e eu não respondi ele como vai espirar a vai reir né só para
eu ter uma lógica aqui de é o que vai acontecer é que conversando com com o com o usuário cada vez que eu mando mensagem zero o time timeout atendimento então a partir da última mensagem que eu mandei ele vai começar o 720 segundos então cada vez que você manda uma mensagem mesmo ali ele já tendo calculado ele vai pegar e vai subir de novo ele vai pegar e vai subir de novo ele vai setar o time o timeout atendimento então não é nem legal assim botar um timeout muito muito grande né porque esse tempo
ele vai começar a contar da da da última mensagem é da última mensagem entendi dessa parte eu achei que quando mandasse a primeira ele Calculava mas aí toda vez que vem um frome ele reseta o tempo exatamente do meu from não é isso ex Exatamente é isso aí ele reseta o tempo Ah entendi eh bom aí essa aqui essa essa parte aqui de pausa atendimento já é uma coisa muito interessante porque a gente sabe que a pior coisa é ficar com bote respondendo de comunicação agora tem uma outra funcionalidade que é muito bacana também ação
que que ela faz ele pega as mensagens dentro daquele espaço de tempo 10 segundos por exemplo Às vezes a pessoa tudo bem como você tá manda três mensagens então é necessário a gente concatenar isso para que o o o agente ele não responda Oi oi como você está Estou bem aí você entendeu ele vai para não dar três respostas Vamos concatenar essa conversa dentro desses 10 segundos ou oito ou 12 isso aí Varia muito de caso a caso eu tô usando se eu não me engano eu tô usando 10 aqui no exemplo Então a gente
vai usar aqui no no redis uma funcionalidade dele chamada Push que que esse push faz o push ele cria uma fila ele cria uma fila de mensagem e como é que é essa fila de mensagem a gente cria aqui é uma lista né estamos criando aqui essa lista e a gente tem que e colocar no no eles vão entrar numa lista ordenada aonde quando a gente usa esse teio aqui a primeira mensagem fica na posição zero a segunda na posição um a terceira na posição dois e assim por diante dentro daqueles 10 segundos e uma
coisa importante da gente ter em mente é que o redis ele não grava é Array ele não grava objeto ele só grava string por isso que a gente tem que transformar esse json em string e por isso que a gente usa esse json string f porque a gente tem que e a gente tem que transformar ela em em string então aqui vamos ver aqui e bom aí tem aqui tem esse push faz uma lista depois a gente vai testar esse ele ele faz esse Get message aqui né ele faz um Get message todas as mensagens
depois ele ele vai para esse switch aqui esse Switch ele faz o quê ele ele calcula uma coisa interessante que eh aqui por exemplo pegando todo o json todo objeto messages Por que que a gente pega o messages porque aqui a gente botou aqui nessas variáveis aqui a gente a gente fez uma estrutura de message shad message content Type message content message time stamp message event então a gente já a gente fez aqui uma um objeto Messenger tá vendo aqui ó a gente fez aqui o objeto Messenger e quando chega lá El ele chega com
essa time stamp é isso aqui que a gente vai usar quando a gente for setar o buffer quando chega esse esse time stamp aqui a gente faz uma comparação a gente vê aqui ó esse aí aqui como eu já tô eh comparando como eu já tô já já usei o redis já armazenei no redis Agora eu tenho que fazer a operação inversa do string fy que é o pass então eu faço jeon parce para transformar eh a última mensagem do usuário né e em em objeto e aí ele transforma aqui E esse Jon e faz
uma comparação aqui embaixo agora menos agora menos o Jon timeout buffer que é o Jason timeout buffer dentro de variáveis time out buffer é cin tá em 5 segundos o time out buffer Então esse Jon agora menos 5 segundos é depois desse aqui então se é depois é porque já passou o a a já passou os 5 segundos e ele já pode seguir em frente porque ele não tá mais na no buffer se não é é o Extra output aí que que ele vai fazer ele vai mandar para cá para esse weight e esse wit
ele vai fazer de novo esse caminho e aqui enquanto ele tá mandando ele Tá formando uma fila por conta desse push E aí ele vai pegar aqui no Get message ele vai pegar sempre a última mensagem e ele vai comparar se a útima última mensagem já tem e 5 segundos comparado com a com o tempo de agora né a última mensagem tem uma diferença de 5 segundos pro tempo de agora ou seja a men a última mensagem é antes da mensagem atual menos o timeout que é o o 5 segundos e aí a gente uma
vez que isso essa condição seja atendida ele prossegue então aqui e vamos fazer aqui um Um test pra gente ver na prática como é que isso funciona Deixa eu tirar isso aqui para aqui eu vou pegar aqui vou fazer uma edição aqui nesse arquivo mesmo Olá tudo bem Beleza já tá Olá tudo bem deixa eu só ver aqui se tá com falso Beleza então já tá então vamos lá e deixa eu ver eu tenho que editar esse timestamp aqui tá esse timestamp tá nesse nesse formato aquio bem deixa eu fazer um negócio aqui pera aí
e vamos testar aqui tal tal aqui é o que a gente tá falando aqui é o time stamp daquele daquele daquele daquela informação pinada lá ele tá como dia 10 né que é hoje 14:48 48 logicamente é antes de e 16 e 06 né porque é era zer era 11 e tirou 5 segundos agora eu vou eu vou botar aqui e um teste eu vou eu vou eu vou deixar aqui eu vou tirar esse esse aqui pinado vou tirar o pinado e vou mandar aqui uma mensagem de teste deixa eu ir aqui no meu aqui
deixa eu ir aqui vamos lá vou testar o workflow Deixa eu só ver se o se a Evolution ela tá se ela tál de test tá já tá no test Beleza então aqui ó vamos lá olá vamos botar aqui rodar vamos testar aqui Olá então ele foi lá vamos lá ele tá com tudo bem Aí ele vai lá e aí and esse Get message com uma estrutura assim e ele tá olá tudo bem olá tudo bem então assim eu vou mandar agora uma outra meu nome éon aí ele vai tal tal tal ele vai ele
vai botar esse essa última frase ele vai botar por aqui ó meu nome éon e ele tá trazendo o time stamp e ele tá aqui com time stamp E se ele entender que o time stamp que o time stamp aqui não tem essa diferença de 5 segundos que é o que a gente pro timeout ele vai continuar nesse weight aqui e vai continuar acumulando aí a última mensagem dele a da pessoa mais de 5 segundos aí que que ele vai fazer ele vai deixar tudo ele vai dear deixar tudo prosseguir então Eh aqui por exemplo
eu vou pegar aqui e vou pegar essa execução aqui que já tem mais e aí eu vou pinar ela aqui por exemplo aí a gente vai botar aqui eu vou pinar ela aqui el tá com time stamp mais é mais mais antigo eu vou dar um teste ó ó já foi direto já foi direto e o que que ele fez aqui eh ele ele é importante ele depois que ele prosseguir pera aí deixa eu sear sair é importante a gente fazer é deletar o buffer né deletar o buffer por quê para zerar as mensagens porque
agora quando a pessoa for eh eh eh a gente precisa mandar essas mensagens paraa i e limpar o o redis Então esse delete buffer aqui eh ele apaga mas ele coloca no output todas e aí que que ele faz aqui esse messages ele vai trabalhar essas mensagens que estão acumuladas vai trabalhar como ele vai pegar e vai e o map né e com uma função do Jon parce ele vai parcial o o content e depois vai fazer um join por quê Porque ele vai pegar o content Cadê o content o content tá aqui ó aqui
o content é esse ele vai ele vai ele vai eh e eh mapear o content vai pegar o content e vai fazer um join Quebrando uma linha então ele vai mandar isso aqui paraa ia tá vendo ele manda assim organizadinho olá tudo bem olá olá meu nome é então ele vai mandar isso para ia E aí eh ele já sai daqui e já vai para ia E aí vamos ver agora o que que tem na vamos ver aqui ó o que que tem vamos ver se ele vai puxar não aqui ele não tá puxando mas
se eu fizer um Get message de buffer agora aqui ó vamos duplicar isso aqui e vamos fazer aqui um um Get message buffer Ó o meu remote 519 802s p.net então aqui ó vou fazer um teste aqui do Red tá nulo por pronto para fazer um buffer novo entenderam Então essa aqui é uma coisa fantástica pro Red e Vai acumulando aqui de uma forma bem simplificada e ele já vai gerando uma fila ele já vai gerando uma fila aqui no push esse get aqui traz a fila o TT ele Verifica o time stamp E aí
time stamp já tem lá e o tempo lá que a gente definiu lá para você fazer o buffer não não Ten o tempo então vai para esperar aí a pessoa continua mandando mensagem a mensagem V para aqui continua entrando na fila E aí quando ela quando quando isso aqui volta e vai vai para esse get aqui e ele vai verificar a última mensagem né E vai vai comparar o tempo da o time stamp da última mensagem e a diferença é entre o tempo atual menos o set de time out Ah já deu então prossegue o
buffer e segue adiante tranquilo aquela parte de deletar o buffer ali coisa ele deleta o buffer mas ele manda pra frente que tava no buffer não isso é buffer mas manda pra frente e é por isso que a gente bota aqui ele manda pra frente e a gente faz esse esse messager aqui né isso exatamente ele manda e deleta ele manda e deleta beleza tá aí segue segue adiante né segue adiante e aí aqui a gente vai ver uma outra aplicação é interessante também a gente vê aqui por exemplo nesse exemplo aqui a gente criou
esse code aqui que que esse code faz é um code de exemplo aonde ele seta a hora do de funcionamento de um estabelecimento que começa às 9 termina às 18 e se o tempo se a hora atual tiver dentro desse intervalo ele ele faz um output dentro do horário de atendimento se tiver fora fora do horário de atendimento por que isso porque aqui ele vai vir para esse switch e aí nesse Switch ele eh vai ele tem duas saídas aberto e fechados se ele tá aberto tranquilo vamos pro aberto vamos para iar se ele tá
fechado a gente vai pro PR rota fechado e aí o que que essa rota fechado faz ele ele guete atendimento ele ele faz um Get No atende noturno me né ele faz um get aqui ele faz um if esse if aqui a gente já vai entender o por desse get aqui esse if aqui ele faz o Jon Atende atende noturno é igual a Stop então passada aqui e quando chegar lá naquele set do final aí vai dar entender mais claro que que tá acontecendo a aqui a gente Ed mensagem né que é mensagem obrigado obrigada
por entrar em contato esse aqui é uma Hamburgueria nosso horário de atendimento é tal tal tal que não que não é o que tá no code né enfim isso aqui deix sua mensagem que iremos responder E aí manda pra api da Evolution E aí depois é aqui que a coisa acontece depois que ele vem aqui a primeira vez e recebe a mensagem fechado ele vem aqui e ele seta esse atende noturno me como stop e bota um time um um um tempo a o vai acontecer essa variável vai ficar com o valor Stop Ah tá
mas por que isso é importante isso é importante porque se a pessoa chegar e ela já recebeu a mensagem que tá fora do horário de repente a pessoa quer falar ah não mas eu só queria saber não sei o não sei o ia ser muito chato se a pessoa com mensagem e sempre fosse respondido estamos fora do horário atendimento estamos fora atendimento então que que a gente faz a gente coloca aqui ele vai ver que fech só que ele vai fazer um get ele vai fazer um get naquela variável e vai trazer o valor no
caso como teve um set aqui stop ele vai trazer aqui o valor Stop então a gente faz esse Jon atende noturno é igual a Stop é true então não faz nada deixa passar o tempo deixa passar os 3600 segundos se a pessoa quiser mandar mensagem e aí beleza tudo bem Como é que é o Hambúrger não sei o que cara ela já ela já teve essa primeira mensagem de Fora fora do expediente e pronto o resto não precisa ficar toda a hora repetindo isso E aí é se vamos supor que a pessoa é a pessoa
uma hora depois né 3600 eu não sei não sei não deu uma hora mas depois de uma hora a pessoa mandou a mensagem vai receber de novo ó estamos fora do horário de atendimento mas aí é outro momento é outra interação mas esse é o ponto aqui do redis para fazer essas interações pontuais eu usa esse get if e o set eh isso aqui é é interessante também por exemplo às vezes tá dentro do horário de atendimento e a gente quer fazer uma saudação Inicial Então a gente vai e a gente coloca faz um set
de de tempo x E aí ele vai ele dá aquela primeira interação e depois ou às vezes a pessoa não quer que vá para ia alguma coisa então Red ele tem essa coisa esse mecanismo de fazer um get if get if a condição e o set e a gente fazu esse D aqui esse delete e depois para para apagar né Essa variável que tá no no no redis é o que a gente a gente garante que esse mecanismo de de interação ele funcione porque a gente tem aqui esse ttl e a gente bota para expirar
então com isso aqui a gente garante que é o mesmo mecanismo do da pausa aqui é o mesmo mecanismo da pausa só que aqui a gente faz uma condição Ah eu quero saber se e eu faço o get e o if se ele tem se ele tem aquele Val Eu sei ele passou por aqui se ele passou por aqui não vai passar de novo então e a gente pode trabalhar esse ifá pontos do Flux posso ter um if por exemplo se ele chegou aqui e gan esse set aqui eu posso botar if Ah eu quero
saber se essed aqui aqui poderia em setor da empresa poderia um setor da empresa e aí como ele já passou por aquele setor eu posso chegar e posso mandar ele para outro lugar né Porque eu sei que ele STOP só que depois que você tá aí o ideal é deletar o o valor para para para liberar o valor para ele seguir ou deixa no temporizador mesmo se for uma coisa de tempo entenderam pessoal táo tudo certo aí até agora sim tá tranquilo tranquilo então assim o o o Red ele ele é uma memória rápida ele
é muito bom porque assim no Type bot ele tem as variáveis né as variáveis que ajudam bastante você ter um controle do seu fluxo você tem um controle do seu fluxo muito por conta das variáveis é uma variável E você tem como setar um valor para aquela variável Quem já usou o Type bot sabe sabe o que eu tô falando e sabe que essas variáveis elas ajudam para caramba o redis ele é ele ele faz esse papel você pode chegar aqui em vez de setar um valor fixo uma variável qualquer você pode trazer aqui ó
você pode porque aqui o fluxo trazer uma variável daqui uma variável dinâmica uma variável desse code uma variável qualquer e botar aqui nesse lugar porque aceita a expressão também então você é colocando esse set e depois colocando o get e o if te dá uma um mundo de possibilidades para você variáveis e definir o caminho que o usuário vai seguindo o seu fluxo para cima pro meio para baixo setor da empresa vai pra ia vai pra outra ia vai pro financeiro né pode ser também por exemplo e eu posso chegar Ah quero eu posso botar
um text classifier aqui Quero falar com financeiro beleza ele vem para cá ele vai até o final e vai setar aqui ó financeiro e aí quando ele setou esse financeiro aqui eu posso botar um get desse redis e eu vou botar um if se o redis se essa variável é financeiro e aí o que acontece aqui é que ele vai uma interação ele vai uma interação vai uma interação e depois eu uma condição aonde eu entendendo que ele não já satisfez aqui esse contato com financeiro eu vou e deleto deleto essa esse valor financeiro do
a pronto isso normal entendeu então assim é você setar as variáveis e você ver o usuário indo no caminho que você quer que ele siga tranquilo aqui isso isso então aqui eu vou é aqui eu vou e deixa eu só deixa eu ver aqui se na extensão tem o deixa eu ver se tem o gerenciar extensão deixa eu ver se tem URL aqui cara deixa eu ver se deixa eu ver se tem histórico aqui Git Hub G Hub pasta Isso aí foi foi um oculta não não tá oculta não não aqui ó aqui ó esse
aqui foi o Luiz do promova Web que deu essee que é foi ele que deu Aqui ó é foi ele que deu e aqui ó que acontece aqui essa URL aqui ó github deixa eu mandar aqui para vocês aqui para facilitar deixa deixa eu mandar aqui mandei aí aqui você vem aqui em release verção E aí você vem aqui em assets e E baixa esse Zip baixou Zip isso Ó lá tá baixou o zip aí que que você faz você vem aqui ó você descompacta extrair tudo aí você vai extrair você vai extrair esse folder
aqui aí você vem aqui no é só no Chrome que funciona tá aí você vem aqui você vem aqui no nas extensões gerenciar extensões tem que ver se esse modo do desenvolvedor tá habilitado tem que tá habilitado você v você vem aqui carregar sem compactação e você clica clica na pasta selecionar pasta pronto só isso aí você aí você dá um um refresh no seu n8n E aí ele já vai carregar essas PES aqui sacou pessoal E com relação ao redis aqui vocês tem algum algum alguma outra utilização Assim vocês costumam usar o redis PR
de alguma forma vocês não sei se de repente já usavam ele para concatenar e PR pausa mas essa questão de variáveis você já usaram essa finalidade eu a que gato sabe é eu do mesmo jeito também se eu tava usando mais o post que eu tinha mais assim facilidade mas que é bem simples né cara é é extremamente é extremamente simples é extremamente simples é até para fazer o time out ali é bem mais fácil porque eu tinha que fazer o timeout tudo com tabela não exato exato né a gente essa história de comparar tempo
você cai em formatação de data às vezes dá problema em ISO em em tu local e não sei o qu assim agora aqui não tem estresse aqui você bota aspirar em em tanto tantos segundos Acabou então realmente é facilita né E e esse essa essa essa concatenação também eu acho muito legal Sabe esse conceito de você usar esse push que ele faz essa fila né e ele tem outras funções aqui também e o delite o o get né aqui é o increment que ele ele incrementa aqui faz uma uma um incremento de um a um
né se a gente esver fazendo Contagem por exemplo Ah quero só mandar cont CCO mensagens quero só mandar qu se mensagens né exatamente ou então se de repente fazo é controlar os acessos do desse usuário para essa para essa ferramenta quando e chegar a 10 eu quero que você mande essa mensagem normalmente a gente faz isso como por banco de dados agora existe a possibilidade de fazer por aqui também de uma forma que não utiliza banco de dados e aqui é o info que ele retorna uma informação genérica sobre a Instância do redis eh aqui
tem kys também que a gente que ele retorna todas as chaves Eh que que atende a determinado padrão esse pop aqui também que eu já vi eh as pessoas usando que ele ele retira do do redig determinada data eh publish esse publish ele publica a mensagem do no canal do regist isso aqui eu realmente não nunca vi os arem e tem o push o set né então assim é uma ferramenta bem bacana e flexível e agora a gente não falou sobre a questão da da instalação do redis não sei se vocês têm facilidade já tem
o Red instalado no porer né pel pel Sim sim e aqui eu botei eu botei na mão mesmo né deixa eu abrir aqui o acho que cortou a ligação lição del é Também tô achando deixa eu deixa eu preencher aqui só pra gente abrir aqui carregando essa aqui é uma máquina que eu mantenho só de backup sabe é uma máquina que ela tem é é a máquina mais fraquinha lá mas se der algum problema na minha máquina na na na Correia sabe é bom tem é mas é qualquer coisinha já dá 100% E aí ela
ela ela cai também é uma máquina simples eu botando 14 stacks também aí tá querendo demais então aqui o redis redis aqui ó eh normalmente a gente deixa o redis vocês estão vendo vendo Então aqui a gente e coloca aqui a a imagem do redis né a gente coloca a nossa Network a porta é a 6379 e a gente não bota sem conectar ele você só bota local rost lá não é porque tem que ser o da mesma máquina né que tá no n8m É tem que ser da mesma máquina aí para conectar lá tem
gente o redis ele por ser uma memória rápida o ideal é não botar senha né Tem gente que bota senha mas usa ele sem senha e aí quando a gente vai aqui vamos botar aqui ó vamos ver esse aqui vamos abrir esse aqui vamos ver aqui o Red account o passw em branco o host Red porta Red porta 6379 e esse Database Number eu bota um número acima de 10 os números iniciais el reserva ele já reserva aplicações isso isso então eu uso da 10 para cima e que mais SSL amente isso só botar isso
clicar em em salvar e pronto ele já tá funcionando né E você vê que as stack dele é pequena é bem pequenininha e não tem mistério nenhum para colocar e para colocar ele e aí depois que ele estiver funcionando você vai ver que ele vai te dar uma flexibilidade legal assim para você usar no dia a dia é bem legalo bom legal legal D então mais alguma alguma tem alguém quer falar alguma coisa aí tem alguma outra questão grande Valentin Esse aí é fera Fala aí Valentin acho que você tá com microfone Beleza cara ver
eu ia falar você que voltar seo ali naquele de que suspender al o que o que o fica entendendo né est pensando assim ó por exemplo você queou aqui na parte de baio aqui o o cara alguém tá atendendo alui pegou o celular lá mandou mensagem então suspendeu ali or certo por 770 720 al a informação para daquele que vai em cima lá morr por aí é deixa é exatamente aqui é deixa eu só botar aqui o o true aí a gente faz essa esse esse processo aqui ó aqui a gente já vai ó Ah
chegou aqui setou beleza aí a gente vai aqui vamos botar aqui o falso que é a conversa então ele vai ele tem que parar lá no IF né parou no IF beleza é no caso aí alguém tá atendendo lá beleza tá tá conversando por lá mas sempre tá para AT ti certo sagem no no WhatsApp só não tá indo PR não então não tá chegando tá chegando aqui tá chegando tá chegando aí ó é aí não sei se seria legal você manter o histórico da conversa né porque mais por algum motivo cente entrar em contato
novamente com essa se uma história que que os Car conversar eu não sei né no escuro aqui né não porque eles falaram L secretinho deles láb L Mas eu não fiquei sabendo então basicamente no me histórico de conversa não sei o que aconteceu ser legal esse aí não sei meu ponto de vista não sei um histórico ali né é a gente pode vir aqui é tem interessante botar um chat Memory aqui botar um chat Memory Manager Vamos usar só ess vamos usar esse aqui porque esse aqui é sabe uso muito esse chat Memory Manager por
porque ele coloca aqui nesse mesmo Ness mesmo ele vem aquies ele e ele tá alimentando aqui E esse essa sessão do do super do post né que é é o meu postgre aqui da da minha VPS então aqui tudo que tá sendo enviado ele vai PR pro pro pro postgre ele tá fazendo uma fila né fazendo uma fila de de conversa porque se você mata ali a aplicação depois se o cara volra no no chat aí Falar agora posso atender Ah então aquele momento F que momento Cara não sei que começando lá tem você é
o é na verdade assim o a dificuldade vai ser para ia entender o que que o usuário tá falando com a pessoa o atendente porque quem vai ficar sem contexto vai ser seria né a ia É sim agora aplicando isso aí talvez ela não fique mais não agora não ela não vai ficar ela não vai ficar porque aqui Cada mensagem que que for eh ela vai chegar aqui ó ela vai eh ela vai ela vai colocar aqui a a a mensagem aqui a gente ela vai gravar tem só configurar aqui ó message user aí aqui
a gente bota aqui como variáveis poder salendo seria uma daquele outro você tem na quando elão então aqui que teoric você não fazerum tipo de Só que eu acho que se você não deletar vai ficar uma tabela gigantesca para esse determinado número é esse esse esse acaba sendo um problema né um problema porque imagina depois você mandar isso pra ia Pode até ser que é a ia não tenha capacidade de processar ler eu também acho que ISO você vai mandar muita coisa e ela vai travar entendeu Pode ser também tá então a bem prática você
vai ter ela vai gravar exatamente e o mesmo contexto sup mexi entendeu Á é é um fluxo normal lá na frente lá você já tá gravando D gravando aqui na frente mais pra frente P seu fluxo aquilo gravando como Memory buffer é Memory buffer porque tem um limite que por exemplo 10 eu tenho 10 memory buffers quando completa 10 ele apaga dessa forma você tá fazendo para ele acuar todas as mensagens para depois enviar para se qual 10 não amade de eu quero que grave exatamente como se ela tivesse a pessoa tivesse conversando com a
para tem aqui ó fala um pouco frente you por favor PR onde b a frente a pouquinho aqui aqui você D para você ter um Buff aí para baixo aqui ó aqui aqui um bu em cima aqui ó Mas então mas esse pff é do chat são aqueles 10 entendeu o sub então é exatamente isso que tive que eu você gravar exatamente igual gravando aí por exemplo e eu usando super Bas e gravar o história do te mensagem L Então uso super Bas como his de mensagem e falou PR os últimos 10 então se eu
se eu continuo gra anim super Bas ou algum outro tipo de m que eu vou vou pegar falar meu 10 só que os últimos estejam aqui para mim quando eu ia voltar falar cara saber pelo menos últimas 10 mensagens que foram enviadas e contexto é o que a gente o que a gente pode fazer também é uma coisa até interessante você vai gravando vai gravando vai gravando aí depois você coloca eete não você você salva no você você coloca um set do redis ele vai setar depois lá na frente você bota um get e você
manda umar antes fazer um resumo daquela conversa toda sim també a ideia no final geral é assim tem uma forma de que aí após o cara atender né ela vai voltar em algum momento que você vai voltar para vai depois de um dia depois uma hora Car determinou para e eu de mandei uma mensagem e fica tanto tempo aí Ocioso né e depois pass esse tempo eu eu eu aí eu já né Tem sab meu o que que os caras conversaram lá por fora não sei né então A ideia é ter um contexto aí para
últimas conversas que eles tiveram para ressa Porque se o criente vi fal a mesma coisa que tá fando com uma pessoa humana mesa então eu não vou saber eu e ela vou saber a tem uma forma de saber e como isso aí eu entendi is humanizar falar de novo sobre aquele mesmo assunto que ele falou H três dias atrás aí tem alguma capacidade de interpretar aquilo que nesse caso tu vai ter que colocar uma tarefa para SA um cliente dig oi ele vai at essa tabela e colete essa informação entendeu mas conseguir coletar isso automaticamente
acho mas eu não sei também se isso é é muito viável pelo seguinte a gente tem uma janela de de conversa aqui né aqui por exemplo a janela de conversa aqui que a gente usa e tá usando aqui começa de agora agora é de oit essa troca de mensagem via chat Memory ela vai entrar nesse nessa franquia de oito entendeu ela só vai se lembrar das últimas oito então assim is que iso é uma ferramenta para puxar essas 10 últimas esse contexto aí qu falou para poder entender o contexto antigo Porque aqui no chat Memory
ela nunca vai conseguir puxar porque ela vai puxar as últimas oito que entraram gente a ideia is é isso entendeu porque assim ó a ide pensa assim ó pensa Por que eu eu D S olhar e você tá conversando comigo né estou lá gravando as minhas memórias lá ó já tenho oito Tenho oito posições lá para gravar que eu tô falando com você beleza certo aí por algum motivo alguém foi lá e tomou no celular e ó começou a operar comu celular da mesma forma que a o cliente quando manda mensagem baixa aqui você também
menag tá mandando pessoa também D para ter aqui então a ideia é ter o mesmo chat memor ali ou ou sei lá alguma coisa aqui vai memorar memor mesma cois bem saio né Depois que eu par de falar eu no celular e atendendo aente sobre o celular par de falar o chat aqui até as memória de das últimas últimas mensagens foram mandadas né que foram trocadas e conseguir se virar da fal se entendeu então a ideia não é criar um Bade com todas as congressos assim dá um jeito de colocar escrito numa memória que o
o chat ali aí aí vai depois quando começar pender de novo e você abr informações ó ol as as conversas que o pessoal tem lá por fora tá aqui n memor b aqui entendeu então a ideia gravar tudo eim deixava da MMA forma que a eava BL buffer que tem oo cessar vou você ficou Claro aí não é é é um eu só na prática eu eu não vejo muito benefício né de e de fazer isso porque assim aqui a gente vai ter que e tem várias ferramentas né mas a gente bota a gente botando
Esse chat Memory aqui aí tem que inserir mensagem do usuário aqui mas aqui eu não consigo inserir o usuário da da ia porque a ia ela aqui não não respondeu eh só que aqui também não é paraar do do usuário do front né então a é tanto dear quos que no celular respondendo porque assim a questão maior é o cara o seu o seu você vai parar de operar alí você vai par quanto tempo Ah dia inteiro beleza não compensa a ári se eu tiver operando Depois de 5 minutos 2 minutos libera aí depois de
5 minutos libera entendeu se passar mais 5 minutos sem responder aí aí assume entendeu então assim dependendo do do prazo ali que eu tenho que você colocar né um info foi impulso 5 minutos puxa o cara po entrar de novo 5 minutos falar meu E aí que aconteceu e aí sabe que aconteceu Porque quem começou Twitch não foi foi o cara no cel e por isso que eu tô falando que a ideia que isso é por esses motivos entendeu Não é legal é legal sim consegue eh Deixar A Iá mais a par né do que
foi tratado né mas é isso eu acho que vale mais a pena você mandar essa esse contexto para uma ia para ela fazer um resumo e botar esse resumo aí pra ia ela se situar do que você botar a conversa em si sabe tá essa pausa pode demorar 15 minutos né E a conversa pode ser uma troca intensa né então cliente foi lá o cliente foi mandar uma pergunta o o cara foi lá interru aí Ah ele respondeu e o cliente sei lá foi fazer alguma coisa esqueceu de responder ele volta ali tocando de í
c não entendeu então por isso que eu fma pense isso entendeu sim sim não é legal é É interessante sim é é uma é uma funcionalidade agora para fazer isso é a gente tem algumas algumas ferramentas aqui tem um fluxo aqui deixa eu só abrir aqui um fluxo aqui meu sabe que também o é em alguma C que você fez você fez uma você usou aqueles agente lá de chamar a gente por for fazer usava mesmo buffer de de memória lá de de memória outro né de alguma forma você fazia queos sabia que tava falando
né É aqui por exemplo nesse nesse fluxo aqui eu tenho esse chat Memory aqui porque eu preciso que o text classifier ele tenha um entendimento de contexto Uhum Então não adianta eu botar só a a última mensagem para ele porque de repente essa última mensagem ele não temer que a pessoa quer falar com humano então eu já boto Esse chat Memory aqui eu boto get many messages então ele vai ele vai pegando as mensagens e aí que que ele faz que que eu faço aqui nesse nesse set Eu organizo a porque ele pega tudo sabe
fica fica um fica um um histórico grande eh no caso assim tudo que tá setado aqui aqui eu setei o contexto para cinco mas mas tudo bem eu peguei e botei para cinco e e aqui eu organizo para ia que que eu faço humano mensagem assistente e ia menos 2 humano menos 1 assistente menos um humano que é o zero e aí eu mando isso PR pro pro text classifier porque o tex classifier Ele já sabe o que que foi falado com a o usuário e aá usuário eá ele já tem um contexto da conversa
então é mais ou menos isso que a gente tá falando só que com o usuário e o e a pessoa que tá mandando mensagem né É isso aí eu entendi é um bom ponto Esse é um ponto legal esse aí e aqui você vê que a gente usa esse chat Memory aqui ele é usado direto aqui por exemplo aqui é eu faço até uma coisa legal aqui que que eu faço aqui eu pego o chat Memory eu pego get many messages pego as mensagens todas e depois eu faço um resumo pessoa pro humano que vai
atender saber o que que a Iá conversou com a o a o sujeito o usuário entendeu então a pessoa recebe no WhatsApp eh do da ia na WhatsApp que tava conversando que foi pausada ela recebe o resumo do contexto da conversa então quando ela continua a falar por ela mesmo ela já sabe Ah não você queria eu vi que você queria e saber isso aqui olha mas isso aqui é assim assado não sei o qu entendeu aí eu pensei não não dois mintin ainda por cima é é exemplo aleatório vai Vai que alguém CONSEG fazer
melhorar out tem outra ideiaa dis desse seu resumo aí né a gente fazia tipo ó o car no de conhecimentos cri esse cara que é o f conversado e chegar lá e aí ah [ __ ] não sei o que cara tá falando de o sistema na base de conhecimento aqui né E depois apaga acho né de coisa conversa mas deixando por sei lá um dia no máximo né poxa toda a conversa resumido aqui tanto Umo com out tudo que acontecendo aqui né então tamb mém é uma coisia doida de fazer mas sei lá é
É uma opção po fal colocar ID pel a mesmo que pelo eu aí as últimas vão vão apagada automaticamente aí a base de conhecimento fica fica bem inada e tantoo também posso colocar também coloque out depois de tantos mes eu eu apago depend começa eu ideia é eu acho que é lá por exemplo que ativa ex S tendente aí ativa né aí desativa aí a gente a da conversa dele é só Lar a base de conhecimento esse modelo meu a conversa dele tudoa só vai ser cancelada mas naquela naquela ela vai ser cancelada né s
F entu entendi não é interessante cara é um mecanismo interessante sim é legal isso eh eu acho que é é legal mas sempre a gente tem que botar na balança assim o custo e benefício né Porque quanto mais complexidade que a gente coloca maior é a manutenção maior a possibilidade de de erros aparecerem então eu particularmente eu não vejo um benefício que justifica fazer uma coleta de informações de de conversas porque eh eu eu reparo que depois que volta i é não é importante o que aconteceu anteriormente raras vezes é feita uma menção porque eu
gravo todas as conversas em planilha Excel E aí e eu eu vou vendo as interações e tal e É muito raro ter uma menção a uma coisa que que é é uma coisa passada É é passado sim sim então cara assim eu acho bacana para caramba assim eu acho que com certeza tem tem aplicações que isso é importante para caramba e às vezes você dando sei lá um suporte alguma coisa que tem que ter continuidade cara tem que fazer um negócio desse né tem que ter não tem como não ter porque para é você tá
Às vezes você tá dando uma aula e o cara ele vai querer mencionar não Porque na última aula a gente deu isso não sei o que cara vai buscar lá porque você vai precisar disso agora tô falando numa interação conversacional normal não vejo muito essa necessidade mas cara isso é fantástico essas essas possibilidades aí que vocês colocaram aí p são realmente top e ajudam pra caramba uma outra possibilidade até mais simples uma coisa simples da gente fazer é o próprio push outro push do redis cara ele vai fazer uma fila com tudo que fori falado
entendeu e depois você você você bota um get e ele vai jogar tudo isso e numa ia você manda resumir e manda pra ia principal ou você Manda direto pra ia principal se o tempo de acumulação for menor entendeu então tem muita coisa que a gente pode fazer e para preservar essa esse históric da conversa é são ideias né um dia vai aparecer um oportunidade de US Exatamente é mas essa essa coisa do do resumo para e esse mecanismo de de SDR que é quando a pessoa tá conversando e quando ela quer falar com o
humano e você mandar um resumo da conversa pro humano isso é super útil porque porque às vezes ele vai falar com a com a pessoa e fica meio no escuro não sabe o que que a pessoa tava falando e você tendo dando um resumo contexto ajuda PR caramba por favor qua pass aí dá para fazer um entendeu gente puxar direto lá do WhatsApp se ela tiver Salv lado entendeu é o quando você usa o chat Memory Manager e manda inserir as mensagens no chat Memory você tá garantindo que você tá alimentando o postou base com
aquela conversa naquela janela que você definiu se você definir uma janela de 50 você pode ter certeza que as últimas 50 mensagens da conversa do usuário com o o o o dono do do WhatsApp Eh aí ela vai ter acesso porque a janela que ela tá pegando é 50 daquela sessão então é por isso que eu gosto de usar o chat o chat Manager porque ele pega é a mesma sessão que a ia vai pegar entendeu Valentin é são sim a mesma sessão então ele vai ele vai pegar aquele mesmo contexto aí se você botar
um uma um histórico maior ele vai ele vai ele vai entender aquelas 50 mensagens só que o problema é que sempre ela vai pegar as 50 mensagens CTO é então é que no caso aí e a que eu falei né É E mais a questão de que atendente mesmo humano ou P humano elando entendeu a a ão É pô vou no chat aqui agora eu sei nada aconteceu fora entendeu então masão de não gravada né agora memória e tudo mais entendi top top demais qu é bom cara vocês vocês aqui ô para vocês que que
eu tô me engando agora pro assim Eu Já Fiz alguns mas ali na tabela do chat mesmo tem uma como é que eu posso dizer uma métrica assim que tu apaga uma vez no mês alguma coisa assim eu t aquele Rem de eternamente que vem né é que que que que eu faço aqui eh quando eu mando para aqui aqui eu acumulo né Eh aqui aqui eu eu eu seto um time out aquilo que eu falei do Red né eu seto um time out aqui por qu porque ele vai pegar esse time out aqui ele
vai pegar aqui então aqui ele já vai usar e aí que que ele vai fazer ele vai acumular aqui esse chat memb e aqui ele apaga depois que teve a interação ele apaga porque senão ele fica acumulando is isso fica acumulando muitoe o pesadão tem que apagar Em algum momento tem apagar quando você não precisar mais desse agora agora tip assim só para eu entender que tu pegou ali no chat mesmo aí só que toda vez que tu apaga ele Sera né para eu entender quando é que tu quando é que tu zera quando quando
ela dá tchau até breve como é que tu faz fazer tu botou tipo um uma intenção ali para isso eh aqui tem uma intenção quando a pessoa quer falar Quer um atendimento de um humano quer falar com a pessoa e tal e aí vem e aí vem para cá né Eh aí ela manda estamos direcionando aqui você aguarde aí ele seta o time out porque e PR a próxima conversa queem entrar lá ele poder morrer n isso morrer e aí ele pega esse chat Memory aqui ele ele faz ele get né ele vai pegar um
contexto das 20 últimas mensagens e aí aqui eu faço um relatório que é o relatório que vai ser enviado pro humano eu falo assim cara as as últimas cinco mensagens trocadas foram essas aqui é as útimas tem um cliente faço uma organização ó cliente EA cliente i a e depois eu mando pro pro dono lá do WhatsApp e aí depois que eu mando pro dono do WhatsApp eu apago por quê Porque o cara já vai resolver se o cara se for por um suporte humano o cara já vai resolver o cara já vai gerar uma
etiqueta de envio o cara já vai gerar um preço de frete os cara já vai e depois e se por que que tem que zerar depois porque Se ficar alguma algum resquício de interação humana pode impactar aqui nesse Tex classif isso que fal porque quando ele vi por exemplo um dia depois como Tom ele puxar Fin ele vai puxar as conversa antiga da outra conversa que ele teve a memória da tabela é igual você tem que deletar a memória entendeu E e atrapalha muito isso aqui dá muita sujeira nisso aqui tem que deletar o para
ter o contexto da conversa que você tá agora isso é um histórico que não tem nada a ver e dentro histórico que não tem nada a ver se a janela é muito grande em algum momento a pessoa pediu para falar com humano se eu não apagasse aqui vai pegar um histórico de 20 por exemplo cara se a troca de mensagem da pessoa com o atendente for menor do que 20 a demanda dela de falar com mano ainda tá no histórico Então a próxima vez que ela falar ela vai entrar nesse Tex classifier e vai ser
enviado direto para atendimento humano entendeu esse template do do n8n eu vou assim esse esse aqui disponibilizar assim e e e aí é E aí basicamente isso cara é é essa essa utilização aí que tem para fazer do Red é uma é um conhecimento que vale a pena investir sabe fechou galera es es Pô eu gosto quando Vocês participam aí que vocês são tem um conhecimento bacana E vocês agregam para caramba da Valentim Robert pessoal todo aí que é também e tal o pessoal que que que que participa quando quando tá junto pô acrescenta para
caramba porque sempre vem ideia nova sempre temz experiência nova Valeu aí pela pela participação do você hoje P Eu sei cara que toda sexta-feira aí se Força aí para passar conteúdo pra gente isso muito importante P É isso aí pra gente crescer junto né vamos crescer juntos então é isso pessoal pô boa sexta-feira para vocês aí Tudo de bom aí pessoal Valeu gente valeu grande abraço aí valeu Robert Robert Robert tá aí também é fera também cara valeu Fera