E aí pessoal como é que vocês estão eu fiz um uma automação aqui interessante para nossa Pro nosso curso eu resolvi compartilhar com você uma um pouquinho como que ela funciona e quais são as possibilidades que essa automação pode trazer para você tá Teoricamente ela pode vender o que você quiser ela pode vender no nosso caso aqui ela tá vendendo Livros mas ela pode vender carro pode vender sapato pode vender casa pode vender o que você quiser você precisa alterar só algumas coisinhas nela mas ela foi criada justamente para que você consiga vender o que
você quiser tá é só ajustar o prompt ajustar o banco de dados e pronto óbvio que algumas coisas podem ser vendidas online outras não né mas conto com a sua inteligência para saber isso eu vou mostrar para você aqui eu vou compartilhar minha tela e vou começar abrindo o assistant mesmo e você vai ver que o prompt dele é super simples você um vendedor de livros seu objetivo é buscar livros do banco de dados e fechar pedidos para seu cliente o cliente pode pedir o livro por título categoria preço máximo ou autor você vai buscar
esses livros do banco de dados e mostrar ao cliente então eu tô deixando claro para ele Qual que é o trabalho dele e qual é o processo que ele tem que seguir quando o cliente Escolhe um livro você deve verificar se ele já possui endereço e nome cadastrados usando a function get user data eu já vou mostrar para vocês essas functions tá então o nosso a nossa automação não vai só conversar com o cliente ela vai interagir com o banco de dados eh usando as functions e vai interagir salvando dados lá e buscando dados de
lá eh se o cliente não tiver dados peça seus dados e deixa finalizar e não deixe finalizar o pedido sem eles a gente vai precisar só do endereço aqui nesse caso tá Eh mas você também pode mudar isso de acordo com a necessidade do teu negócio CPF pedir e-mail e tudo mais eh se o cliente já possuir dados peça para confirmar os dados mostrando-os na tela e peç para concluir o pedido então se o cliente já tiver os dados cadastrados ele vai só confirmar teu endereço é tal eh podemos concluir o pedido e eu coloquei
aqui uma coisa importante né talvez você já tenha sentido isso mas às vezes eles inventam informação então nunca inventa informação sempre peço ao usuário confirmação antes de prosseguir e sempre negue descontos tem algumas pessoas que conseguem pedir descontos pro bot e tudo mais né no nosso caso como o bot como a automação Não vai eh ela vai conversar direto com o usuário mas eu tô pedindo para ele não não gerar desconto e ele não vai gerar o link de preço para as pessoas Então mesmo que ele dê desconto a pessoa não vai ter o link
com aquele desconto tá isso pode trazer alguns problemas pode vai trazer não sei você precisa testar aí no teu negócio tá todas as vezes que eu pedi desconto pro meu pra minha automação que ele não deu o que é um bom sinal acho que eles estão ficando mais espertos né Então essas aqui são as instruções é o nosso prompt super simples o nome do bot aqui É bookkeeper eu sei que bookkeeper não é vendedor de livros mas eu achei o nome legal e coloquei e eu tô usando modelo GPT 3.5 turbo 16k e 16 06133
tá eu tô usando esse aqui mas se eu não me engano até esse aqui ó o 0125 Talvez seja melhor eu vou alterar ele aqui só pra gente testar Tá mas eu tô usando o GPT 3.5 turbo é o mais barato de todos e do 25 de Janeiro Beleza você pode usar o 4 se você quiser o 4 é bem mais esperto bem mais inteligente mas ele também é bem mais caro então se eu for vender alguma coisa mais cara cara uma coisa com ticket maior talvez vha a pena você vai gastar sei lá r$
1 para você fazer uma venda de 500 6 600 R 700 aí vale a pena né dependo do teu Business no meu caso aqui como é para testes eu vou usar só o 3.5 Turbo aí eu tenho três functions aqui ó são functions super simples que serve para 90% dos casos eu tenho aqui a get books e a get books nada mais é do que pegar os produtos do banco de dados com certos filtros tá então aqui por exemplo eh o nome dela é get books a descrição é pega os livros da do banco de
dados eu coloco tudo em inglês eu acho que fica melhor para ele entender mas você pode colocar em português também tá aí os parâmetros né properties Eh perdão as propriedades é título ou autor e a categoria do livro que pode ser ficção científica romance fantasia ou autoajuda E também o preço que é o número né e nenhum deles é obrigatório então o bot pode mandar pro banco de dados lá eu quero que você traga todos os livros É arriscado mas funciona de novo isso aqui você pode pegar né se você faz parte do curso você
pode pegar esse bot aqui essa automação e mudar ela de acordo com as tuas necessidades beleza voltar PR function aqui e tem aqui a save user data então é para salvar os dados do usuário ó no nosso caso aqui eu tô salvando só o endereço não tô salvando mais nada e o endereço é obrigatório Então sempre que vai salvar o os dados do usuário preca ter o endereço e por último pegar os dados do usri Mais acho que essa aqui o mnimo que você precisa fazer uma fun rod no assist que é o nome a
descrição o parâmetro aqui é vazio vendo zer properties zer requ então el S vai precisar buscar os dados daquele usurio eui o Inter eu Ret você pode Ret se vai funciar melhor você funcionar mas eu preferi fazer no banco de dados porque o banco de dados é mais ele é mais dinâmico né eu posso chegar aqui no nosso base Row que eu tô usando base Row como banco de dados deletar um produto criar outro produto e não precisa ficar atualizando o pdf do nosso da nossa automação Então olha só tá feita aqui a nossa o
nosso bot né a nossa na verdade nosso assistant Tá feito e só para confirmar eu criei aqui no base Roll mesmo tá o base Roll tem um plano free aqui bem Generoso se eu não me engano são 3000 linhas que você pode usar aqui de forma gratuita hospedado por eles mesmos mas se você quiser você pode baixar o base Roll e hospedar na sua própria máquina ou numa máquina virtual que você tem em algum lugar né digital Ocean Amazon aws Microsoft azure e assim vai eu tô usando a versão hospedada deles mesmo para mim funciona
perfeitamente eu tenho aqui alguns livros cadastrados já tá tem o nome o autor categoria E o preço e o usuário a tabela de usuários que não tem nada tá não tem nada mas a gente vai gravar o WhatsApp o nome o endereço a trade e a data Então beleza agora vamos pra parte mais legal né onde que tá a nossa automação então aqui no 18n lá no nosso curso eu vou eu passo passo a passo como que funciona isso aqui como que funciona a chamada de funções o que cada um desses nós aqui faz como
que eles funcionam mas no nosso caso aqui eu vou passar para você rapidamente como que ele funciona para mostrar o resultado final tá ele tá com um probleminha só que a minha integração com o WhatsApp não tá funcionando porque eu desliguei lá a minha api mas não tem nenhum problema a gente vai conseguir ver o resultado de qualquer forma tá então sim ele tá integrado com WhatsApp só precisa conectar a minha a minha Instância lá novamente mas eu não vou fazer isso agora mas ele funciona perfeitamente tá E esse bot aqui acred ou não ele
serve você vender qualquer coisa e o segredo tá aqui ó segredo tá aqui aqui em cima aqui são as functions que a gente tá chamando lá que o nosso assistent vai chamar tá eu vou rodar a primeira vez aqui ó e para facilitar a nossa vida no nosso web Hook Eu salvei aqui ó uma coisa um um uma mensagem fixa tá Olá gostaria de livro de ficção científica por favor então eu vou rodar uma vez aqui e você vai ver o que que ele vai fazer e eu vou explicar para você eh o processo tá
Então olha só Primeiro de tudo ele procura o usuário do banco de dados ele vai ver que o usuário se o usuário existe ou não como é que ele tá procurando ele tá procurando através do meu número do WhatsApp do meu número de celular tá se o usuário não existe ele vai criar o usuário aqui embaixo e ele vai colocar os dados do usuário aqui nesse Nozinho do merge user tá aí ele vai ver se o usuário possui uma trade essa trade ela é criada pelos assistant da openi Via api deles e aonde vai ficar
toda a nossa memória então todas as memórias da conversa e tudo mais vai ficar dentro dessa trade se você for ver aqui no nosso base roll olha só ele criou o usuário com esse WhatsApp esse WhatsApp não é meu tá com o nome que vem do próprio WhatsApp né Eh o endereço tá vazio a gente vai pedir depois o endereço pro cliente e a trad que foi criada aqui E esse ID de trad ele vai ser usado sempre para manter o histórico da conversa então se você não sabe ainda como funciona os assistance da openi
basicamente a gente cria uma trade que é como se fosse a memória daquele daquela automação daquele assistent e todas as mensagens que o usuário envia e que o bot envia caem nessa trade então era como se fosse uma conversa do WhatsApp que cada um fica mandando as mensagens lá dentro dessa tred tá então ele vê se usuário possui trad você podem ver que ele veio aqui para baixo primeiro ele criou a trad ele salvou a trad no banco de dados ele voltou o dado aqui para cima pro merge user daí ele verificou de novo agora
agora que eu criei a trad o usuário possui trad sim aí ele vem aqui para cima então ele cria a mensagem a gente tem um tratamento de erros aqui tá que eu não vou entrar em detalhes agora mas ele cria mensagem ele coloca essa mensagem do usuário dentro da trade e começa a rodar o assistent o o ass você pode colocar mensagens na trade e não rodar o assistent você pode colocar várias e várias mensagens na trad e só depois você pode rodar o assistant você não precisa rodar na mesma hora que você coloca uma
mensagem na trad isso tem algumas vantagens tá eu também não vou entrar aqui agora foge um pouquinho do escopo dessa desse vídeo mas é possível a partir do momento que eu rodo o assistant a gente precisa validar o status dele que que é o status até deixa eu entrar aqui ó para mostrar para você ó ele rodou quatro vezes tá vendo deixa eu mostrar aqui acho que fica mais fácil tá então Aqui nós temos ó o status completed né que foi o último ele começou com status impr Progress depois ele passou porel status required Action
eu já vou mostrar para vocês o que que isso significa depois ele passou pelo status impr Progress de novo e depois ele passou pelo status completed então ele passou por quatro vezes por todos esses status né em Progress requires Action in Progress E completed então quando ele tá em Progress nesse Switch aqui que a gente faz a validação do status deixa eu até dar um zoom maior aqui que que ele faz né quando ele tá em Progresso ainda quando ele não terminou quando ele não definiu ainda qual vai ser o próximo passo a gente coloca
ele num loop então ele cai aqui para esperar por qu ou 5 segundos mais ou menos e aí a gente pergunta aqui para openi de novo qual que é o status da Run agora então o openi não avisa a gente proativamente nós temos que perguntar para ela o tempo todo tá então sempre vai cair aqui ó Qual que é o Run status Ah o Run status tá em Progresso Beleza então vamos esperar um pouquinho quro segundos aqui e vou perguntar de novo e agora qual que é o status da Run na segunda vez que a
gente passou por aqui ele falou que a gente precisava de uma ação ele precisava executar uma ação ele caiu nesse requires Action aqui em cima Esse requires Action quer dizer deixa até e olha só esse no no output no no dois aqui ele caiu no requires Action tá esse requires Action a openi ela avisa pra gente que a gente precisa que ele tem esse esse esse objeto required Action aqui o tipo submit to outputs ele tem esses Tool C aqui tá ele pode chamar mais de uma function ao mesmo tempo ou ele pode chamar várias
functions em sequência então por exemplo pegar os livros salvar os livros salvar dados do usuário ele pode chamar tudo isso em sequência ou em paralelo tá no nosso caso que ele chamou só uma Ele chamou a function get books com categoria ficção científica que é uma das das possibilidades que ele tem de chamar essa função quando a gente sabe como a gente sabe agora que ele requer uma ação a gente vai subir aqui para onde a mágica acontece aí o que que a gente faz a gente vê aqui nesse captura Tool CS Quais são as
ferramentas que ele quer chamar se você lembra bem Eu até vou entrar aqui para mostrar rapidamente isso aqui é um vetor tá é um Array que que é um array bem basicamente mesmo bem simplesmente Imagine que é uma lista de objetos que ele precisa chamar então aqui ele tem vários objetos que tem um um ID eh o tipo que ele quer chamar e as functions que ele quer chamar que nesse caso ele quer chamar só a get books com os argumentos category ficção científica É só isso que ele quer chamar mas poderia ser que esse
Tool C aqui Viesse com mais de uma função a gente separaria a gente pegaria essas functions aqui e a gente separaria elas aqui no então o split out nada mais é do que pegar aquelas funções que estão no nó anterior que a gente separou e colocar elas ó beleza nós vamos mandar essa primeira função depois nós vamos mandar essa outra função depois nós vamos mandar essa outra função tá a gente está basicamente separando elas de objetos separados óbvio né separando em objetos separados a gente tá caindo nesse loop aqui E esse loop Aqui é onde
ele vai fazer o loop por todas as funções que precisam ser chamadas é pela openi nesse caso ela mandou chamar só uma ele falou para nós pra gente chamar só a get books porque eu pedi para ele né se você lembra bem eu pedi que ele me mandasse os livros de ficção científica então ele ele separou os argumentos aqui então isso aqui ó ele basicamente pegou Qual é a Quais são os argumentos aqui ó eu peguei a categoria ficção científica Então esse aqui é o nosso argumento eu precisi separar ele aqui aí a gente tá
jogando aqui no escolha tu que deve ser o utilizada nesse Switch ele vai analisar Qual que é a Tool que tá aqui no split out ou aqui no separa arguments Tá qual que é o nome dela se for para chamar o get books ele vai ele vai subir para cá se for para pegar o get user data ele vai para cá e se for para salvar os dados do usuário ele vai para baixo no nosso caso ele só fez o get books então ele escolheu aqui ó beleza aqui agora é a function que a gente
vai que a gente vai efetivamente chamar no nosso n8n que que essa function faz ela busca os produtos lá no no no base Roll se você for ver aqui ele tá buscando a categoria ficção científica aqui embaixo Ó category contains daí eu tô pegando esses argumentos de categoria aqui tá E ele tá me retornando seis itens que se a gente voltar aqui na nossa tabela de livros na nossa tabela book você vai ver que tem seis livros de ficção científica tá são esses aqui aqui que eu pedi eh Então aqui tem alguns tratamentos de dados
tá eu tô fazendo uma sumarização deles aqui também não vem não vou entrar em detalhes como que funciona não é necessário né pro escopo desse vídeo E aí eu tô eu tô eh de novo manipulando Os dados aqui para colocar tudo num lugar só para avisar o openi e quando esses dados saem daqui a gente vai voltar pro loop aí o loop vai falar Tem mais alguma function que eu preciso rodar não não tem ele só pediu para rodar uma Então agora ele vai pra nossa Dan eu vou agregar todos os resultados de todas as
functions que eu chamar aqui no no loop em o lugar só eu vou organizar eles para que a Open entenda basicamente esse Edit Fields aqui é para você deixar eles bonitinhos de uma forma que a openi vai entender por quê Porque eu preciso colocar o resultado dessas functions aqui na openi eu preciso avisar para ela ó tá aqui ó eu executei a ação que você queria que eu tivesse executado né que nesse caso aqui era só get books e e esse aqui foi o resultado agora faz o que você quiser com esse resultado Então agora
que nós já inserimos o output aqui ele vai voltar aqui pra baixo e ele vai de novo no get Run status aí se você lembra bem ele vai cair de novo no impr Progress né então ele vai voltar para cá aí por último ele vai no completed porque agora ele não precisa chamar mais nenhuma ação ele só precisa responder o que ele tem para responder pro usuário da a gente manda aqui PR para openi se eu não me engano deixa eu ver o que que é esse nó aqui porque eu não me lembro [Música] e
isso a gente pega a última mensagem que a Open mandou para nós e essa última mensagem é essa aqui ó eu vou entrar no no nosso n do envia WhatsApp você vai ver que a mensagem aqui quer dizer que a Instância Tá desconectada mas o que importa para nós aqui são esses valores ó olha só ele trouxe aqui para nós deixa eu dar um zoom aqui que vai ficar melhor para você ver aqui estão alguns livros de ficção científica disponíveis Fundação autorizar queim preço 55 Fundação império aor is que móvel preço 55 e se você
for ver tá tudo aqui ó Fundação 55 Fundação Império 55 duna 70 duna Frank Herbert 70 e assim vai tá então nota que a gente pegou os dados lá do banco de dados e mandou para openi e ela é que criou esse texto aqui tá Não fui eu não foi ninguém que criou esse texto foi a openi que criou esse texto aqui eh e ele ainda perguntou ele ainda pergunta você possui algum título específico em mente eu gostaria mais detalhes sobre algum desses livros então ele tá continuando a conversa tá Então olha só que legal
né Deixa Eu Voltar ao zoom aqui eu vou falar vou falar para ele eu vou trocar aqui no nosso web Hook tá então Ó a nossa trade agora existe a nossa trade tem essas informações e eu vou pedir para ele vou falar para ele aqui ó quero comprar o fundação do da MOV se você lembra bem ele vai eu vou rodar aqui e vamos ver vamos ver que que ele vai que que ele vai fazer tá olha só ele não vai precisar passar aqui por baixo mais porque o usuário já existe então ele vai cadastrar
o usuário uma vez só ele não vai precisar passar aqui por baixo porque a trad já existe então a mesma trad que nós usamos na última na última rodada ele vai usar aqui novamente e ele só vai precisar criar mensagem e rodar o assistant tá aí de novo ele caiu no impr Progress daí ele foi pro requires Action esse requires Action aqui tá aqui na dois se eu não me engano Olha só requires Action agora ele chamou outra function ele chamou a get user data por quê Porque nós falamos para ele lá no nosso no
nosso promt que quando o cliente escolher um livro você deve verificar se ele já possui endereço e nome cadastrados usando a function get user data então ele sabe qual function chamar Se você olhar aqui em cima ele foi agora a aqui embaixo ele pegou a function get user data ele pegou os dados do usuário ele manipulou Os dados aqui para de uma forma que a que a openi vai entender e ele foi aqui para cima e mandou resposta para openi tá aí a openi veio aqui viu que eh rodou um pouquinho mais a Run aí
ela completou e mandou a resposta para nós qual foi a resposta Olha só para concluir a compra do livro fundação de Isaac imov precisamos dos seus dados de endereço seu nome é André Prado e já temos o seu número de WhatsApp por favor poderia fornecer seu endereço para entrega legal né Eh agora eu vou vir aqui só para finalizar ele vai chamar o última function vamos vir aqui vamos lá vou inventar o endereço aqui Claro meu endereço é Rua dos pregos Curitiba Paraná por exemplo tá então a mensagem mudou né meu endereço é ruo dos
pregos Curitiba do Paraná óbvio que talvez num produto que você vai num bot que você vai colocar em produção Você vai precisar colocar mais algumas informações né você vai pedi o o o CEP você vai pedir o CPF Talvez mas isso aqui é só para demonstração e pequenos detalhes que a gente precisa alterar para que essa automação eh vá de boa em produção tá Então olha só beleza ele passou aqui de novo né a gente já conhece toda essa parte aqui ele vai chamar ele vai chamar function agora Olha só Ah beleza ele chamou function
Às vezes o N8 Ainda demora um pouquinho para atualizar e qual foi a function que ele chamou salvar os dados do usuário então se eu entrar aqui agora no meu banco de dados no user ele vai salvar o meu endereço aqui inclusive ele corrigiu né Eu coloquei tudo minúsculo ele colocou em maiúsculo aqui também os nomes próprios né e ele salvou os dados do usuário ele sumaris aqui manipulou os dados ele mandou a resposta para Open Open voltou aqui para baixo e respondeu para nós o o quê respondeu para nós seu endereço foi cadastrado com
sucesso confirmando os dados para seu pedido nome André Prado endereço rodos preggos livro selecionado Fundação R 55 gostaria de finalizar se pedido agora e tá pronto tá que que falta aqui agora né Óbvio você pode colocar por exemplo do lado de cada livro um link paraa pessoa comprar no stripe no Pag Seguro no Mercado Livre no mercado pago você que sabe tá E e até gerenciar teu stoque né você pode começar a gerenciar teu stoque mas esse bot aqui isso aqui ó ele parece complexo mas não é tá porque imagina que você tem acesso a
essa essa esse workflow O que que você vai precisar fazer toda essa parte aqui de baixo é padrão tá tudo isso aqui é padrão então daqui aqui até aqui é padrão a única coisa que você vai mudar tá aqui ó você vai falar para ele Beleza agora eu quero fechar pedido eu vou vou criar uma nova function aqui que vai se chamar Close Order alguma coisa assim mas você vai colocar uma função de fechar pedido aqui pegar criar Talvez um um novo campo ou uma nova tabela de pedido colocar o id do usuário e o
livro que ele comprou e tirar o livro do estoque por exemplo tá livro carro qualquer coisa que você quiser você pode colocar aqui tá e você vai precisar só mudar as functions Então você vai mudar o que basicamente você vai mudar aqui as instruções você vai mudar o modelo né talvez se você quiser você vai mudar essas functions aqui e vai mudar as instruções aí aqui no n8n tudo que você precisa fazer é mudar isso aqui é mudar essas functions que você quer mudar tá E talvez também acabar colocando para salvar mais dados do usuário
né salvar CPF salvar o CP com o c Você já consegue descobrir o endereço da pessoa você pode talvez colocar também a na hora de pedir o endereço se o usuário mandar sem o número você pedir o número do da casa do apartamento né alguma coisa assim mas esse bot aqui pode vender qualquer coisa que você quiser tá o ele serve de blueprint aí de de rascunho para qualquer coisa que você quiser Imagine só o poder né se você quiser ter acesso a esse workflow aqui e toda a explicação dele passo a passo a gente
tá com vagas abertas hoje mesmo Pro nosso curso tanto eu quanto Felipe raitan a gente tá trabalhando junto nessa eu vou deixar também o link do canal dele aqui embaixo caso você se interesse tá com as inscrições abertas para esse curso tá é só até dia 12 de Abril nesse caso aqui talvez quando você estiver vendo esse curso esteja aberta outra turma também mas o link aqui embaixo vai ser o mesmo e é um ano de acesso a esse esse curso há outros workflows também nós temos várias automações nós temos vários encontros ao vivo também
se vocês interessa entender é cara como que eu posso usar isso aqui pro meu negócio Como que eu posso usar isso aqui para criar o micras e vender e criar uma renda extra alguma coisa assim o curso é para você tá você precisa saber a programação não é legal saber é mas você não precisa saber eu preciso ter experiência com n8n não eu preciso ter experiência com api da Open ey não a gente a gente tem dentro do curso todas as ferramentas a gente ensina é todas elas o base Roll o n8n apis integração com
WhatsApp tudo para que você consiga sair do zero até criar teu primeiro produto o usando n8n ia e automações tá E até Bots do WhatsApp né a gente tem também um acordo legal com com o pessoal da zst que é uma API de de WhatsApp que tem um acordo legal só para os alunos do nosso curso para que você consiga usar gratuitamente ela de uma forma eh para testar suas ideias O que é bem legal e é isso eu espero que você tenham gostado Espero que você tenha se animado aí com as possibilidades disso aqui
eh esse workflow aqui vai est lá no nosso curso disponível para baixar e espero você lá tá se você não quiser agora fazer um curso também a gente tá com inscrições pra nossa comunidade aberta aqui que se chama e Builders é lá a gente vive trocando ideias sobre isso aqui tá Então é isso aí se você ficou com qualquer dúvida se você tem alguma ideia do que é possível fazer com com essa automação se você ficou se você tem alguma ideia de micras que você pode fazer com essa automação comenta aqui embaixo deixa seu comentário
aí que eu vou ler todos eles e é isso aí muito obrigado e a PR