APRENDA HOJE O N8N E AUTOMATIZE "QUASE" TUDO!

00:23:38
https://www.youtube.com/watch?v=UDWEAMwS7rg

Summary

TLDRO vídeo apresenta um tutorial sobre como criar automações utilizando a ferramenta open source N8N. O apresentador explica como instalar e configurar o N8N em um VPS da Hostinger e demonstra a criação de um workflow que verifica o status de sites, enviando notificações via Telegram caso algum site esteja fora do ar. O N8N permite a personalização com JavaScript e Python e é acessível para desenvolvedores que desejam automatizar tarefas repetitivas de forma visual e escalável. O vídeo também destaca a facilidade de uso da ferramenta e a importância de ter as credenciais corretas antes de iniciar o processo de automação.

Takeaways

  • 🎨 A automação é uma arte para desenvolvedores.
  • 🔧 O N8N permite criar workflows de forma visual.
  • 📦 Instalação fácil com Docker ou VPS.
  • 📡 Integração com APIs e serviços.
  • 📊 Personalização com JavaScript e Python.
  • 🔄 Configuração de triggers para iniciar workflows.
  • 📩 Envio de notificações via Telegram.
  • 🛠️ Suporte a múltiplas credenciais e serviços.
  • 💡 Importância de ter as credenciais corretas.
  • 🚀 N8N é uma ferramenta poderosa e gratuita.

Timeline

  • 00:00:00 - 00:05:00

    Neste vídeo, o apresentador fala sobre a importância de criar automações para tarefas repetitivas e apresenta a ferramenta open source Nain, que permite criar workflows de forma visual e escalável. O tutorial irá ensinar como instalar e configurar a ferramenta para monitorar o status de sites e enviar notificações caso algum esteja fora do ar.

  • 00:05:00 - 00:10:00

    O apresentador explica como usar o Nain localmente com Docker e em um VPS da Hostinger. Ele destaca as vantagens do VPS, como hardware de qualidade e suporte, e mostra como configurar o ambiente Docker para facilitar a automação. O vídeo também menciona a criação de um arquivo Docker Compose e a configuração de variáveis de ambiente.

  • 00:10:00 - 00:15:00

    O apresentador demonstra como instalar o Nain e configurar um workflow para verificar o status de sites. Ele explica a importância de configurar corretamente as credenciais e como usar a interface intuitiva do Nain para criar triggers e nós no workflow. O vídeo também aborda a leitura de arquivos e a conversão de dados para facilitar a verificação dos sites.

  • 00:15:00 - 00:23:38

    Por fim, o apresentador mostra como enviar mensagens via Telegram quando um site está fora do ar. Ele destaca a simplicidade do processo e a importância de ter as credenciais corretas. O vídeo termina com um convite para que os espectadores deixem sugestões de automações que gostariam de ver em futuros tutoriais.

Show more

Mind Map

Video Q&A

  • O que é N8N?

    N8N é uma ferramenta open source que permite criar fluxos de trabalho com no-code e low-code, conectando APIs, serviços e bancos de dados.

  • Como posso instalar o N8N?

    O N8N pode ser instalado localmente usando Docker ou em um VPS, como o da Hostinger, que já vem com um template pré-instalado.

  • Quais linguagens posso usar para personalizar o N8N?

    Você pode usar JavaScript e Python para personalizar os fluxos de trabalho no N8N.

  • O que é um workflow no N8N?

    Um workflow é uma sequência de ações automatizadas que podem ser configuradas para realizar tarefas específicas.

  • Como o N8N lida com erros em workflows?

    O N8N permite configurar caminhos diferentes para sucesso e erro, possibilitando ações específicas dependendo do resultado.

  • É possível usar o N8N gratuitamente?

    Sim, o N8N é uma ferramenta open source e pode ser utilizada gratuitamente, embora algumas funcionalidades possam exigir um plano pago.

  • O que é um trigger no N8N?

    Um trigger é um evento que inicia a execução de um workflow no N8N.

  • Como posso enviar mensagens via Telegram usando o N8N?

    Você pode configurar uma credencial do Telegram no N8N e usar um nó específico para enviar mensagens.

  • O que é um VPS?

    Um VPS (Servidor Privado Virtual) é um tipo de hospedagem que simula um servidor dedicado dentro de um servidor físico.

  • Quais são as vantagens de usar um VPS da Hostinger?

    A Hostinger oferece excelente hardware, suporte, backups automáticos e um plano especial para o N8N.

View more video summaries

Get instant access to free YouTube video summaries powered by AI!
Subtitles
pt
Auto Scroll:
  • 00:00:00
    Saber criar automações chega a ser uma
  • 00:00:02
    arte aos olhos de um dev, né? Agora,
  • 00:00:04
    conseguir criar um fluxo de trabalho bem
  • 00:00:06
    completinho que resolva aquelas tarefas
  • 00:00:09
    repetitivas é um verdadeiro sonho. Ainda
  • 00:00:11
    mais quando a gente consegue fazer isso
  • 00:00:13
    usando uma ferramenta open source
  • 00:00:15
    gratuita. E é isso que nós vamos te
  • 00:00:17
    ensinar nesse mão no código. Você deve
  • 00:00:19
    ter visto aí no título, né? Ao usar o
  • 00:00:21
    inen. Já conhece? Você cria workflows
  • 00:00:24
    com no e low code, podendo conectar API,
  • 00:00:27
    serviços e bancos de dados de forma
  • 00:00:29
    visual e escalável. Nós vamos criar um
  • 00:00:31
    workflow para verificar o status de
  • 00:00:33
    alguns sites e caso algum deles esteja
  • 00:00:35
    fora do ar, que ele mande uma mensagem
  • 00:00:37
    pra gente. E é claro que vamos te
  • 00:00:39
    mostrar como instalar, configurar e
  • 00:00:40
    utilizar essa ferramenta nesse tutorial.
  • 00:00:43
    É agora.
  • 00:00:49
    E seja muito bem-vindo a mais esse vídeo
  • 00:00:51
    aqui no Código Fonte TV, onde nós vamos
  • 00:00:52
    explorar o NAin, que é low code no code
  • 00:00:55
    e permite fazer personalizações com
  • 00:00:57
    JavaScript e Python e pode ser executado
  • 00:01:00
    de forma local ou em servidores
  • 00:01:02
    próprios. Nós vamos te mostrar como usar
  • 00:01:03
    local com o Docker e também através da
  • 00:01:06
    instalação em um VPS com o Docploy.
  • 00:01:08
    Nesse caso, vamos utilizar o nosso VPS
  • 00:01:10
    da Hostinger, que por sinal já tem um
  • 00:01:12
    plano especial pro Way Nhan. Com um
  • 00:01:14
    clique você já instala a ferramenta.
  • 00:01:16
    Isso porque o VPS já vem pré-instalado
  • 00:01:18
    com um template com um buntu e o NHN.
  • 00:01:20
    Dentro de um ambiente Docker, você
  • 00:01:22
    implanta de forma muito fácil e rápida
  • 00:01:25
    os fluxos de automação. E você ainda
  • 00:01:26
    pode usar um template para configurar o
  • 00:01:28
    Nin modo de fila para melhorar a
  • 00:01:31
    escalabilidade. Nós te indicamos
  • 00:01:33
    justamente porque além do NAin, você
  • 00:01:35
    ainda conta com todas as outras
  • 00:01:37
    vantagens de utilizar um VPS da
  • 00:01:38
    Hostinger. Só para citar algumas, eles
  • 00:01:40
    possuem excelente hardware, suporte,
  • 00:01:43
    backup semanais grátis e automáticos e
  • 00:01:46
    detector de malware. Você ainda tem até
  • 00:01:48
    30 dias para pedir reembolso e os
  • 00:01:50
    servidores você pode escolher no Brasil.
  • 00:01:52
    É, mas sobre o reembolso eu duvido muito
  • 00:01:54
    que isso aconteça, viu? Porque nós
  • 00:01:56
    estamos usando há anos as soluções da
  • 00:01:58
    Holdger e tem sido uma experiência
  • 00:02:00
    excelente com um preço muito bom. Então
  • 00:02:02
    corre aqui no link do VPS com o Nchain
  • 00:02:05
    para você conhecer aqui na descrição,
  • 00:02:06
    tá? E usando o nosso cupom código fonte
  • 00:02:09
    você ainda ganha um desconto extra. Bora
  • 00:02:11
    ver então como é que fica para instalar
  • 00:02:13
    o Nate local. Eu criei aqui um arquivo
  • 00:02:16
    Docker Compose. Vou usar a imagem
  • 00:02:19
    original deles, tá? Não vou fazer
  • 00:02:21
    nenhuma modificação na imagem. Fica
  • 00:02:23
    tranquilo que o link desse repositório
  • 00:02:25
    com essas configurações no GitHub a
  • 00:02:28
    gente vai deixar na descrição também,
  • 00:02:29
    mas na documentação do N também tem as
  • 00:02:31
    instruções para você usar via Docker. Tá
  • 00:02:33
    um pouquinho diferente dessas aqui, mas
  • 00:02:35
    tá valendo também. E vale lembrar que a
  • 00:02:37
    gente tá usando o Docker aqui através do
  • 00:02:38
    próprio VS Code, que tá muito fácil, né,
  • 00:02:40
    de utilizar. Tá? Não, se você já tem a
  • 00:02:42
    extensão dele aqui, fica moleza. Aí eu
  • 00:02:45
    configurei as variáveis de ambiente que
  • 00:02:48
    já vem na imagem do NHN, que é o NHN
  • 00:02:51
    host, o protocolo. Nesse caso aqui, a
  • 00:02:54
    porta eu vou manter padrão, tá? E a
  • 00:02:55
    gente pode configurar também o host, tá?
  • 00:02:57
    Aqui no meu arquivo ENV, eu já coloquei
  • 00:02:59
    aqui qual é o domínio, qual é o
  • 00:03:00
    subdomínio. Nesse caso aqui a gente vai
  • 00:03:02
    rodar local, tá? O importante, como a
  • 00:03:04
    gente trabalha também com datas e tudo,
  • 00:03:06
    é muito importante a gente configurar a
  • 00:03:09
    time zone, tá? Isso aqui não deixa de
  • 00:03:11
    configurar para não dar problema, tá? E
  • 00:03:13
    aí, nesse caso, a gente usa as variáveis
  • 00:03:14
    aqui no nosso Docker Compose, tá? Aqui
  • 00:03:17
    com as portas. Uma coisa que eu fiz
  • 00:03:19
    diferente aqui é que eu criei uma pasta
  • 00:03:22
    data justamente com os meus dados, tá?
  • 00:03:24
    Nesse caso aqui vai ser uma lista de
  • 00:03:26
    links que vai estar aqui, ó. Lista de
  • 00:03:28
    links que eu coloquei aqui. Bem simples,
  • 00:03:30
    num txt puro, né? É, essa pasta deita
  • 00:03:33
    também vai para dentro do docker, tá?
  • 00:03:35
    pra gente ter acesso a ela. E aí acabou,
  • 00:03:38
    a gente criou um volume também, ou seja,
  • 00:03:40
    se eu é reiniciar esse docker tudo, ele
  • 00:03:43
    vai manter todas as minhas configurações
  • 00:03:44
    lá e não vai perder. Aí para rodar, a
  • 00:03:46
    gente pode rodar no terminal ou vir
  • 00:03:48
    aqui, ó, e rodar todos os serviços. Ó,
  • 00:03:50
    como eu já baixei essa imagem uma vez,
  • 00:03:54
    então ele só startou aqui o contêiner.
  • 00:03:57
    Eu posso vir aqui, ó, ver aqui quais são
  • 00:03:58
    os contêiners que eu tenho, tá aqui, tá
  • 00:04:00
    vendo? Se eu quiser navegar, isso aqui
  • 00:04:02
    também é legal, né, dessa extensão. Se
  • 00:04:03
    eu quiser navegar nas pastas, vamos ver
  • 00:04:05
    se lá no home data, aqui, ó, já tá lá o
  • 00:04:08
    meu arquivo lá, o meu arquivo txt. Mas a
  • 00:04:11
    ideia é a gente rodar isso através do
  • 00:04:13
    nosso VPS lá na Hostinger, né? Pois é.
  • 00:04:16
    Aqui a gente usa o Doc Ploy, que é tipo
  • 00:04:18
    a Versel, tá? Ele cria tudo através de
  • 00:04:20
    contêiners Docker, então fica muito
  • 00:04:22
    simples. Eu já trouxe aqui o NHN aqui,
  • 00:04:26
    já tá criado, mas olha só que legal, ó.
  • 00:04:28
    Se eu quiser criar um outro tipo de
  • 00:04:29
    serviço nesse projeto, ele já tem um
  • 00:04:32
    template para vários tipos. Aqui eu
  • 00:04:34
    posso criar um banco de dados, eu posso
  • 00:04:36
    criar, né, várias coisas e também usar o
  • 00:04:38
    meu próprio Docker Compose para fazer
  • 00:04:40
    isso. E no Docploy, assim como outras
  • 00:04:42
    formas também que tem para você instalar
  • 00:04:44
    as aplicações no VPS da Hosting, você
  • 00:04:46
    pode, ó, Grafana, você tem, ó, o próprio
  • 00:04:50
    NHN, WordPress, vai navegando aqui os
  • 00:04:53
    templates que já estão prontos, né? Você
  • 00:04:54
    pode, obviamente, criar o seu, né? Mas
  • 00:04:57
    isso aqui é muito bom, facilita muito,
  • 00:04:59
    né? Porque a instalação fica ali em um
  • 00:05:01
    clique, né? Clicou, ele já prepara o
  • 00:05:03
    ambiente. Olha que legal. Dá para
  • 00:05:04
    dockerizar aqui o macOS e o Windows
  • 00:05:06
    também. Olha só que louco. Então é muita
  • 00:05:09
    facilidade realmente para você instalar,
  • 00:05:11
    pô, muito rápido para você poder
  • 00:05:13
    configurar as suas aplicações. E isso
  • 00:05:16
    deixa a gente desenvolver coisas bem
  • 00:05:18
    mais rápido, porque você roda local e
  • 00:05:20
    depois você joga isso aí lá pro seu
  • 00:05:24
    servidor para você ter acesso aí via
  • 00:05:25
    web. Uma vez a gente entrando em local
  • 00:05:28
    host na porta, a gente já tem aqui os
  • 00:05:31
    dados pra gente fazer a configuração. Só
  • 00:05:33
    você colocar o seu e-mail, ah, o seu
  • 00:05:36
    nome e a sua senha e rapidamente você
  • 00:05:38
    faz login e já tá pronto para usar. Uma
  • 00:05:41
    vez configurado, você já entra nessa
  • 00:05:43
    página aqui que é uma espécie de um
  • 00:05:44
    welcome, né? E aí, vamos fazer um
  • 00:05:46
    overview aqui. Lembrando que a gente
  • 00:05:47
    usou a imagem padrão do Chen e ele por
  • 00:05:51
    padrão, o banco de dados é um SK Lite,
  • 00:05:53
    mas ele também tem suporte ao post greed
  • 00:05:55
    também, tá? Então se você quiser trocar
  • 00:05:57
    isso, tem que ir nas configurações,
  • 00:05:59
    naquelas variáveis de ambiente e para
  • 00:06:01
    você fazer essa troca, tá? Então algumas
  • 00:06:03
    coisas que a gente tem aqui, por
  • 00:06:04
    exemplo, ó, como variáveis, ele é pago,
  • 00:06:07
    tá? Então é uma ferramenta open source,
  • 00:06:09
    é gratuita, você pode usar, mas tem
  • 00:06:11
    algumas coisas aqui que já são pro plano
  • 00:06:13
    pago. Obviamente se você tá usando
  • 00:06:15
    bastante, você vai sentir a necessidade
  • 00:06:18
    depois até de assinar, né? Mas já dá
  • 00:06:20
    para fazer muita coisa aqui. E ele tem
  • 00:06:21
    também uma parte aqui, ó, de
  • 00:06:23
    templates. Isso aqui ele já pega da web.
  • 00:06:26
    E aí você já tem coisas prontas aqui que
  • 00:06:28
    você pode utilizar. Eu achei muito
  • 00:06:30
    interessante porque você vem aqui, por
  • 00:06:31
    exemplo, em financeiro, ó, aí tem 77
  • 00:06:34
    aqui. Uhum. E aí ele diz, ó, crie o seu
  • 00:06:37
    primeiro chatbot de análise de dados com
  • 00:06:40
    inteligência artificial. E aí quando
  • 00:06:41
    você clica aqui na documentação, ele
  • 00:06:43
    abre o modelo ali, o workflow, mas
  • 00:06:47
    navegável, entendeu? Então você consegue
  • 00:06:50
    ver o workflow, não só em imagem, mas se
  • 00:06:52
    você quiser, poxa, como é que ele esse
  • 00:06:54
    cara configurou isso aqui? Você clica,
  • 00:06:55
    ele abre aqui para você ver realmente
  • 00:06:58
    como tá configurado. Então a
  • 00:07:00
    documentação é sensacional, cara. Dá
  • 00:07:02
    para aprender muito aqui com essa parte
  • 00:07:04
    aqui da documentação. E é legal que fica
  • 00:07:06
    bem prático, né? Porque você acha o
  • 00:07:08
    workflow, você acredita que seja o que
  • 00:07:10
    você necessita, pô, visualizando dessa
  • 00:07:12
    forma você já mata. Não é exatamente
  • 00:07:13
    isso que eu quero. Então é só seguir com
  • 00:07:16
    esse workflow, né? E aí você pode
  • 00:07:17
    baixar, você pode testar ele também, né?
  • 00:07:19
    Fora isso, aqui na configuração, a gente
  • 00:07:21
    vai em settings, você tem muitas
  • 00:07:24
    configurações, algumas realmente você
  • 00:07:26
    precisa desbloquear, né, usando um
  • 00:07:28
    plano, mas aquela coisa de os seus dados
  • 00:07:31
    pessoais, o próprio NHN é um API também,
  • 00:07:34
    você pode ativar uma chave, então tudo
  • 00:07:36
    que você fizer nele, você pode
  • 00:07:38
    automatizar com ele mesmo também, até
  • 00:07:40
    para uso externo, né? Tem aqui os
  • 00:07:42
    secrets, né? Nesse caso aqui tem que ser
  • 00:07:45
    com plano Enterprise também e várias
  • 00:07:47
    outras configurações. Acho que todos
  • 00:07:49
    aqui são pro plano Enterprise, mas o que
  • 00:07:52
    importa pra gente, pra gente poder
  • 00:07:54
    configurar as nossas coisas é o
  • 00:07:56
    workflow, as credenciais e as execuções.
  • 00:08:00
    Isso aqui é o log de todas as execuções
  • 00:08:01
    que foram feitas. Simples assim, não
  • 00:08:05
    tem e essa parte é gratuita. O que seria
  • 00:08:08
    então as credenciais? Quando a gente vai
  • 00:08:11
    usar qualquer coisa, vamos automatizar
  • 00:08:13
    usando o Telegram, vamos usar com o
  • 00:08:15
    Google Sheets, o Slack, o Slack ou sei
  • 00:08:19
    lá, o YouTube, qualquer coisa que você
  • 00:08:21
    pensar que precisa de API, a gente
  • 00:08:23
    precisa ter essa credencial já
  • 00:08:25
    pré-configurada. E isso a gente faz
  • 00:08:27
    justamente aqui. Então, por exemplo, a
  • 00:08:29
    gente vai usar nesse nosso o Telegram,
  • 00:08:32
    tá, para enviar as mensagens. Olha só
  • 00:08:34
    quantos já tem aqui já pré-programados
  • 00:08:37
    pra gente utilizar. Se a gente quisesse,
  • 00:08:39
    por exemplo, o Slack, como a Vanessa
  • 00:08:41
    falou, tem ali, ó. Se a gente quisesse o
  • 00:08:44
    WhatsApp, tem ali também. O próprio
  • 00:08:46
    Google Sheets
  • 00:08:48
    ó, tem ali também. Então, cara, tem
  • 00:08:50
    muita coisa. Nesse caso, a gente vai
  • 00:08:52
    configurar a credencial do Telegram.
  • 00:08:55
    Então, a gente seleciona aqui, já vem o
  • 00:08:58
    token para eu
  • 00:09:00
    preencher e eu vou salvar. Uma vez que
  • 00:09:04
    ele salva, ele já faz o teste, ó,
  • 00:09:06
    dizendo que já tá feito, tá verdinho
  • 00:09:08
    aqui, bonitinho. Vamos combinar, né?
  • 00:09:10
    Essa parte de pegar as credenciais e
  • 00:09:12
    tudo mais, acho que é a parte mais chata
  • 00:09:14
    de tudo isso, né? De todos esses
  • 00:09:16
    serviços. Cada um tem um jeito, né? O
  • 00:09:18
    Telegram, você chama um bote master lá e
  • 00:09:21
    conversa com ele que ele te passa. O
  • 00:09:24
    Google é enjoado que só, né? É, cada um
  • 00:09:27
    tem o seu jeito, né? Então isso vai
  • 00:09:28
    levar mais tempo do que a gente criar o
  • 00:09:30
    próprio workflow, tá? E aqui quando a
  • 00:09:31
    gente cria credencial, a gente tem
  • 00:09:33
    também, ó, uma parte de colaboração
  • 00:09:34
    também é paga e você pode ver outras
  • 00:09:37
    informações aqui, tá vendo? Quando foi
  • 00:09:39
    criado e etc. Então, uma vez que a gente
  • 00:09:41
    tem essa configuração aqui, a gente já
  • 00:09:43
    consegue usar no nosso workflow. Vamos
  • 00:09:45
    criar aqui um workflow. A gente pode
  • 00:09:47
    criar aqui um usando um agente de IA,
  • 00:09:50
    inclusive já tem suporte para MCP,
  • 00:09:52
    inclusive a gente mostrou esses dias
  • 00:09:54
    criando um MCP server, né? Dá para usar
  • 00:09:57
    agora também usando o Champ. Mas a gente
  • 00:09:59
    vai criar aqui um workflow do zero para
  • 00:10:01
    você ver que a tela do workflow também é
  • 00:10:03
    super simples. Os caras conseguiram
  • 00:10:06
    realmente fazer algo, é muito intuitivo,
  • 00:10:08
    né? Então aqui, ó, eu posso colocar o
  • 00:10:10
    nome do meu workflow, nesse caso aqui,
  • 00:10:12
    ó, status
  • 00:10:14
    sites, tá? Do código fonte.
  • 00:10:25
    Lembrando que se você já fez o seu
  • 00:10:28
    workflow ou você quer importar o
  • 00:10:30
    workflow de alguém, nesse menuzinho
  • 00:10:32
    aqui, você pode duplicar, fazer download
  • 00:10:34
    em arquivo Jason, tá? Então esse membro
  • 00:10:36
    que a gente vai criar, a gente vai
  • 00:10:37
    deixar também lá no repositório, tá?
  • 00:10:39
    Você pode importar, você pode importar
  • 00:10:41
    por arquivo, por URL e você tem as
  • 00:10:44
    configurações dele aqui, ó. Então você
  • 00:10:46
    tem o tipo de o motor ali deles, né, que
  • 00:10:48
    vai rodar o workflow. Você pode criar um
  • 00:10:50
    workflow, na verdade, que é o erro.
  • 00:10:52
    Então, se acontecer algum erro, você
  • 00:10:54
    roda um workflow. Olha que louco, né?
  • 00:10:56
    Tem o Time Zone, já tá tudo aqui
  • 00:10:58
    configurado e tem outras configurações
  • 00:11:01
    aqui. Bom, como a ideia é verificar ali
  • 00:11:03
    se o site tá ativo, a gente vai ter que
  • 00:11:04
    criar meio que um Chrome, né, que é
  • 00:11:06
    justamente para de tempos em tempos
  • 00:11:08
    fazer essa verificação. Então, acho que
  • 00:11:09
    esse é o primeiro passo ali do nosso
  • 00:11:11
    workflow, né? Todo workflow, ele precisa
  • 00:11:13
    de um trigger, ou seja, é um gatilho
  • 00:11:15
    para ativar. E tem vários trigger que
  • 00:11:18
    você pode utilizar, tá? Cada passo desse
  • 00:11:22
    desse workflow, ele chamam de nó, tá?
  • 00:11:24
    Então essa nomenclatura é importante pra
  • 00:11:26
    gente saber. Se a gente vai aqui em
  • 00:11:28
    adicionar ou aqui também ele vai dizer,
  • 00:11:30
    ó, adicionar trigger, já que não tem
  • 00:11:33
    nada, né? manualmente a partir de um
  • 00:11:35
    evento de alguma aplicação ou agendado,
  • 00:11:38
    que é esse aqui que é o Chrome, ou seja,
  • 00:11:40
    eu posso dizer de quanto em quanto tempo
  • 00:11:41
    ele vai ser executado a partir de um web
  • 00:11:44
    hook, ou seja, aconteceu algo numa URL,
  • 00:11:47
    ele ativa ali o workflow ao submeter um
  • 00:11:50
    formulário, cara, e muita coisa, ó, a um
  • 00:11:53
    uma mensagem de chat e outras coisas, ó,
  • 00:11:56
    alterações em arquivo, você pode criar o
  • 00:11:59
    seu o trigger que você quiser. Então,
  • 00:12:01
    por exemplo, eu vou criar um desse aqui,
  • 00:12:02
    ó, que é um manual. Ou seja, se eu
  • 00:12:05
    clicar aqui, ele já executa. E eu posso
  • 00:12:07
    criar também ao mesmo tempo, ó, a, como
  • 00:12:10
    já tem um trigger, ele já abriu outras
  • 00:12:11
    opções. Agora, ó, eu quero voltar no
  • 00:12:14
    trigger e aqui eu coloco um trigger de
  • 00:12:17
    Chrome job, né? Então, por exemplo, se
  • 00:12:19
    eu quiser verificar, vamos verificar
  • 00:12:21
    site. Vamos verificar aqui de 10 em 10
  • 00:12:24
    minutos, por exemplo. E aí não precisa
  • 00:12:26
    nem explicar muito, né? Que tá tudo bem
  • 00:12:27
    intuitivo. Colocou ali 10 minutos, você
  • 00:12:29
    adiciona essa regra a configuração desse
  • 00:12:32
    pedaço acho que já tá pronto. Se eu
  • 00:12:34
    quiser adicionar outra regra aqui, ó.
  • 00:12:37
    Ah, mas eu quero também executar uma vez
  • 00:12:39
    por mês, duas vezes por semana. Ele ele
  • 00:12:41
    acrescenta também isso, tá? Você pode
  • 00:12:43
    fazer. Então, colocamos aqui. Olha que
  • 00:12:46
    você ele já tá aqui. São dois triggers
  • 00:12:48
    que nós teremos então no nosso workflow,
  • 00:12:50
    mas a gente vai precisar ler um arquivo,
  • 00:12:52
    não é? Então a gente pode vir agora
  • 00:12:54
    aqui, tá tudo categorizado por várias
  • 00:12:57
    formas diferentes de você executar, né?
  • 00:13:01
    Então, ó, já tem aqui de IA, ó, agente
  • 00:13:04
    de a
  • 00:13:05
    openi. Cara, muita coisa, ó.
  • 00:13:07
    Classificação de texto, tudo. Então,
  • 00:13:08
    você tem que explorar isso aí para você
  • 00:13:11
    ver a quantidade de coisas que dá para
  • 00:13:12
    fazer. É muita coisa, mas como a gente
  • 00:13:14
    quer ler um arquivo, então vou botar
  • 00:13:15
    aqui readr file,
  • 00:13:19
    ó. Então nesse caso aqui eu vou ler um
  • 00:13:21
    arquivo. Lembra o caminho do nosso
  • 00:13:23
    arquivo? Home data? Então é
  • 00:13:28
    meus. Qual é a vantagem disso? Se ele
  • 00:13:31
    não achar o arquivo, ele vai dizer aqui.
  • 00:13:34
    Então eu posso tocar aqui em testar esse
  • 00:13:36
    passo, ó. Olha lá. Ele leu o arquivo e
  • 00:13:39
    ele já mostrou os dados dele aqui, ó.
  • 00:13:41
    Nesse caso você vê que voltou um
  • 00:13:43
    binário. Se eu colocar em Jason, ó, ele
  • 00:13:45
    não volta os dados. Então é um arquivo
  • 00:13:47
    de texto, as informações estão em
  • 00:13:49
    binário, tem que guardar essa
  • 00:13:50
    informação, tá? No caso de tabela, você
  • 00:13:52
    vê, ó. Então você consegue ver um output
  • 00:13:54
    com várias informações. Nesse caso aqui,
  • 00:13:56
    com, por exemplo, quando a gente coloca
  • 00:13:58
    para visualizar o arquivo, aí ele mostra
  • 00:14:01
    aqui o conteúdo que está no arquivo, né?
  • 00:14:04
    Mas senão ele já traz todas as
  • 00:14:05
    informações do arquivo em si. E aí você
  • 00:14:07
    vê aqui, ó, o input dele foi o o
  • 00:14:11
    trigger, tem esse aqui que a gente tá
  • 00:14:13
    configurando e a saída. Tem outras
  • 00:14:15
    opções que a gente pode colocar, como o
  • 00:14:17
    nome do arquivo, nesse caso aqui, né?
  • 00:14:19
    Então, se a gente quiser especificar
  • 00:14:20
    certinho o nome do arquivo, a extensão,
  • 00:14:23
    o mini type, dá pra gente fechar essa
  • 00:14:26
    configuração. Se a gente for aqui em
  • 00:14:28
    settings, praticamente todos têm isso
  • 00:14:29
    também, a gente pode, por exemplo, se o
  • 00:14:32
    arquivo não existir e deu problema,
  • 00:14:34
    então eu posso forçar sempre voltar
  • 00:14:36
    algum tipo de dado. Por exemplo, se der
  • 00:14:38
    um erro, nesse caso aqui, ó, ele para o
  • 00:14:40
    workflow ou ele continua fazendo o erro
  • 00:14:43
    ou o acerto, né? Ele tem essas duas
  • 00:14:46
    opções ou simplesmente continua e que se
  • 00:14:48
    dan esse passo aqui não seria ignora o
  • 00:14:50
    erro que foi retornado. Então você vê
  • 00:14:52
    que ele tá aqui, eu posso colocar ele
  • 00:14:54
    aqui, ó. Se eu quiser testar o workflow,
  • 00:14:56
    eu posso clicar aqui, ó, e ele testa
  • 00:14:59
    aqui, ó. Testa aqui e foi. Uhum. Se eu
  • 00:15:01
    vier por aqui, ele também vai, ó. Tá?
  • 00:15:03
    Então, nesse caso, olha, se a gente vier
  • 00:15:05
    aqui em execução, a gente consegue ver
  • 00:15:07
    aqui já o histórico de vezes que a gente
  • 00:15:09
    executou, ver o que que aconteceu em
  • 00:15:11
    cada execução. Agora, o interessante que
  • 00:15:13
    você pode criar também um nó de
  • 00:15:15
    configuração, que aí justamente ajusta,
  • 00:15:17
    por exemplo, ali a gente colocou o nome
  • 00:15:19
    do arquivo, isso poderia estar numa
  • 00:15:20
    espécie de uma variável. A gente vai
  • 00:15:21
    utilizar também as informações do
  • 00:15:23
    Telegram, que também podem estar nesse
  • 00:15:25
    nó de configuração, né? Até porque se
  • 00:15:27
    você precisar reutilizar ele durante o
  • 00:15:29
    seu fluxo, você só tem ali um lugar onde
  • 00:15:32
    tem as variáveis. Então a gente tem essa
  • 00:15:34
    opção aqui do edit fields. Olha que
  • 00:15:36
    interessante. A gente pode trazer um
  • 00:15:37
    Jason com todas as configurações ou
  • 00:15:40
    criar um mapeamento dos campos
  • 00:15:42
    manualmente. Se eu colocar aqui, por
  • 00:15:44
    exemplo,
  • 00:15:46
    arquivo links e aí eu posso dizer
  • 00:15:49
    justamente onde que ele tá, ó. É o home
  • 00:15:56
    data, então tá aqui, ó. tocar o o teste
  • 00:16:00
    aqui. Tá funcionando. Só que o que
  • 00:16:02
    acontece? Eu preciso desse cara aqui
  • 00:16:05
    antes, ó. Senão não vou conseguir pegar,
  • 00:16:07
    né? Então, se eu colocar ele aqui,
  • 00:16:11
    ó, vou excluir. Coloco ele
  • 00:16:15
    aqui, excluo aqui e ele vai vir
  • 00:16:18
    conectado aqui, ó. Olha só o que
  • 00:16:21
    acontece agora. Quando eu venho aqui
  • 00:16:23
    para ler o nome do arquivo, ao invés de
  • 00:16:25
    colocar fixo, eu posso colocar uma
  • 00:16:29
    expressão. Aí eu vindo aqui, eu venho,
  • 00:16:33
    olha, aqui em edit fields, eu consigo
  • 00:16:37
    pegar justamente o nome desse arquivo,
  • 00:16:39
    ó. Eu arrastei e ele já me dá até o
  • 00:16:42
    resultado, ó. Qual é o nome do meu
  • 00:16:44
    arquivo? Deixa eu só conferir se é isso
  • 00:16:48
    mesmo. É traço, ó, no_ore.
  • 00:16:51
    Então, eu posso vir aqui,
  • 00:16:57
    atualizar e colocar um traço. Agora eu
  • 00:17:00
    posso até testar o meu workflow. Ó lá,
  • 00:17:02
    ele conseguiu ler o arquivo, né? Mas
  • 00:17:04
    lembra que eu falei que o arquivo TXT
  • 00:17:06
    ele tá em binário? Então a gente precisa
  • 00:17:08
    converter esse binário para um tipo de
  • 00:17:10
    dados, nesse caso aqui para um uma
  • 00:17:12
    string. Como é que a gente pode fazer
  • 00:17:13
    isso com código, que eu acho que na
  • 00:17:15
    minha opinião é o melhor, ou dá para
  • 00:17:18
    fazer de alguma forma aqui, eu acho que
  • 00:17:19
    de conversão de dados, mas eu prefiro
  • 00:17:22
    código. Então a gente tem aqui, ó, uma
  • 00:17:24
    área para rodar código. E aí o que eu
  • 00:17:26
    fiz aqui foi bem simples, ó. Deixa eu
  • 00:17:28
    abrir aqui para ver melhor. Eu peguei o
  • 00:17:30
    item zero, ó, ele é binário, tá vendo? E
  • 00:17:32
    aí eu peg o buffer dele e converti ele
  • 00:17:35
    em string. O TF8 tô com os dados aqui.
  • 00:17:38
    Agora eu usei uma expressão regular
  • 00:17:40
    quebra a linha. Pega os dados aqui e
  • 00:17:42
    quebra a linha de cada um e depois faz
  • 00:17:45
    um trim se tiver algum espaço em branco
  • 00:17:47
    para não ter problema com links, né? O
  • 00:17:49
    que importa aqui no fim é que a gente
  • 00:17:51
    retorna um Jason com as URLs, né? faz um
  • 00:17:54
    map aqui dessas URLs e retornam um Jason
  • 00:17:57
    disso. Ou seja, a gente já preparou
  • 00:17:58
    todos os dados que a gente precisa para
  • 00:18:00
    fazer a verificação de cada um dos
  • 00:18:01
    sites, né? E aí você tá vendo que eu
  • 00:18:03
    chamei ele de links aqui, tá vendo? Esse
  • 00:18:06
    aqui é o nome da propriedade. Eu tenho
  • 00:18:08
    que voltar aqui, ó, na leitura do
  • 00:18:11
    arquivo e eu seleciono qual é o campo de
  • 00:18:15
    saída dele, ó. Então, vou colocar link,
  • 00:18:18
    vou testar aqui. Aqui funcionou.
  • 00:18:21
    Posso vir aqui agora e testar
  • 00:18:24
    também. Aí funcionou. Tá vendo a saída,
  • 00:18:27
    ó? Já é aqui o os links. Então, por
  • 00:18:30
    exemplo, aqui a saída eu posso colocar,
  • 00:18:32
    olha, em formato de tabela. Deixa eu
  • 00:18:34
    mexer aqui, ó. Fiz um ajuste aqui na
  • 00:18:36
    minha expressão regular. Agora sim, ó,
  • 00:18:38
    ele tá voltando a tabela, Jason. Tá
  • 00:18:41
    vendo? Então, todas as informações
  • 00:18:43
    certinhas aqui dos links. Bom, agora nós
  • 00:18:45
    já temos ali a lista de sites que a
  • 00:18:47
    gente quer verificar. O próximo passo é
  • 00:18:48
    justamente fazer essa requisição para
  • 00:18:50
    ver se eles estão voltando ali com o
  • 00:18:52
    status 200 ou qualquer outro que a gente
  • 00:18:54
    vai mandar mensagem, né? Então vemos
  • 00:18:56
    aqui http request, a gente vai fazer
  • 00:18:59
    justamente um get e na URL a gente vai
  • 00:19:03
    usar uma expressão. Aqui no código a
  • 00:19:05
    gente tem a URL, ó. Se a gente arrastar
  • 00:19:07
    para cá, ele já vai trazer quais são as
  • 00:19:09
    URLs que a gente vai testar. E aí se a
  • 00:19:10
    gente quiser, olha, testar aqui, ó, a
  • 00:19:12
    gente já pode fazer um teste para ver o
  • 00:19:14
    que que ele vai trazer. E ele vai
  • 00:19:15
    trazer, na verdade, ó, se eu colocar um
  • 00:19:17
    Jason, os dados do site,
  • 00:19:21
    todos, todos, só que só trouxe os dados.
  • 00:19:24
    Na verdade, eu quero todas as
  • 00:19:26
    informações, né? Então, nesse caso, para
  • 00:19:28
    não voltar só os dados, eu preciso
  • 00:19:30
    adicionar uma opção. Eu vou aqui em
  • 00:19:33
    response e nesse caso, eu vou voltar só
  • 00:19:37
    os dados, mas também o status, ó. Uhum.
  • 00:19:39
    Tá? Então eu posso testar
  • 00:19:42
    novamente. E agora a gente tem, ó,
  • 00:19:44
    status code 200. É isso que a gente
  • 00:19:46
    quer. Mas só complementando, se a gente
  • 00:19:48
    fizer uma chamada e voltar algo
  • 00:19:51
    diferente de R200, ela na verdade ele
  • 00:19:53
    vai voltar um erro. Então o que a gente
  • 00:19:54
    precisa configurar aqui é que ao dar o
  • 00:19:57
    erro a gente
  • 00:19:58
    continua. Olha só o que ele vai fazer.
  • 00:20:00
    Ele vai voltar, olha, um caminho pro
  • 00:20:02
    sucesso e um caminho pro erro. Então a
  • 00:20:04
    gente vai precisar configurar justamente
  • 00:20:06
    o erro. A gente vai testar isso daqui a
  • 00:20:07
    pouco. A gente tem a saída desse nó para
  • 00:20:09
    quando as informações tiverem corretas e
  • 00:20:12
    o quando tiver um erro, né? Nesse caso,
  • 00:20:15
    quando a URL ali não for encontrada, eu
  • 00:20:18
    adicionei uma URL que não existe
  • 00:20:20
    justamente pra gente testar esse nó. E
  • 00:20:22
    aí a gente vai precisar utilizar um nó
  • 00:20:23
    de if, justamente para verificar esses
  • 00:20:26
    dados, ó. Então, como eu já tenho aqui
  • 00:20:27
    um nó que não existe, ó, e o que eu
  • 00:20:29
    preciso é justamente o status, eu posso
  • 00:20:32
    colocar ele aqui e verificar, ó, se ele
  • 00:20:35
    não for igual a
  • 00:20:39
    200, eu sei que teve um problema. Ó,
  • 00:20:44
    nesse caso aqui, ó, ele passou, tá
  • 00:20:45
    vendo? Quando eu testei, então,
  • 00:20:47
    realmente, o problema. Aí sim a gente
  • 00:20:49
    envia a mensagem via Telegram.
  • 00:20:51
    Escolhemos o Telegram e vamos enviar uma
  • 00:20:53
    mensagem de
  • 00:20:55
    texto. Agora sim, olha, já pega aqui a
  • 00:20:57
    credencial que a gente testou e vamos
  • 00:21:00
    mandar essa mensagem. Então, pra gente
  • 00:21:02
    configurar, a gente tem o ID que a gente
  • 00:21:06
    vai configurar aqui na parte de config,
  • 00:21:10
    lembra? Então, eu posso criar aqui um um
  • 00:21:12
    campo chamado
  • 00:21:15
    Telegram
  • 00:21:20
    chat aí. Eu preencho aqui com o valor do
  • 00:21:23
    chat ID e aí a gente já consegue
  • 00:21:26
    utilizar no nó. Então, para configurar o
  • 00:21:27
    chat ID, a gente pode justamente vir
  • 00:21:30
    aqui, ó, no nó de edit fields, que é
  • 00:21:35
    justamente onde colocou as variáveis ali
  • 00:21:36
    de configuração. E aí ele já traz aqui o
  • 00:21:40
    o valor. E aqui a gente pode colocar o
  • 00:21:43
    chat, o que que a gente vai escrever na
  • 00:21:44
    tela.
  • 00:21:45
    Bom, aqui é abrir aqui essa essa telinha
  • 00:21:48
    um pouco maior e aí eu escrevo um texto,
  • 00:21:50
    nesse caso, usando aqui as variáveis,
  • 00:21:52
    olha, URL e eu colocando aqui a data,
  • 00:21:55
    né? Interessante que quando a gente
  • 00:21:57
    escreve isso aqui, ele já até mostra
  • 00:22:00
    aqui, olha como vai ficar. Se a gente
  • 00:22:02
    escrever alguma coisa errada que não
  • 00:22:04
    existir, ele já diz aqui que tá
  • 00:22:07
    indefinido. Agora sim, espero que você
  • 00:22:09
    tenha conseguido entender. Vamos fazer
  • 00:22:12
    um
  • 00:22:16
    teste. Viu que ele executou, encontrou
  • 00:22:18
    um erro. Os outros sites aqui estão no
  • 00:22:21
    ar. Ainda bem. Testando aqui no meu
  • 00:22:24
    Telegram. Olha só, já tá o meu bote lá.
  • 00:22:26
    E ele já trouxe a mensagem. Olha, ó.
  • 00:22:28
    Lindo. Só não funciona a quebra de
  • 00:22:30
    linha, né?
  • 00:22:31
    Quebra de linha. A gente vai ter que ver
  • 00:22:32
    o que que a gente fez aqui de errado.
  • 00:22:34
    Agora fala a verdade, é simples de fazer
  • 00:22:36
    esse workflow, não é? Não gostou? Então
  • 00:22:39
    o que que fica de dica? É você ter as
  • 00:22:41
    suas credenciais e saber exatamente o
  • 00:22:44
    que você quer antes de fazer. Dá uma
  • 00:22:45
    navegada, vê quais são as
  • 00:22:46
    possibilidades, tem muita coisa. E se
  • 00:22:48
    você curtiu, pede pra gente mais
  • 00:22:51
    automações que a gente vai criar e vai
  • 00:22:52
    mostrar para vocês. Eu quero muito
  • 00:22:54
    testar MCP, testar com o Open AI. Eu já
  • 00:22:57
    testei, na verdade, tá? Mas se você
  • 00:22:59
    quiser coisas mais complexas, diz aqui
  • 00:23:01
    nos comentários o que que você precisa e
  • 00:23:03
    a gente vai elaborar junto aqui para
  • 00:23:04
    trazer para você também. Espero que você
  • 00:23:05
    tenha curtido aí esse tutorial, né?
  • 00:23:07
    Uhum. Ficou um pouquinho grande, mas
  • 00:23:09
    valeu a pena, viu? E a gente se vê no
  • 00:23:10
    próximo vídeo. Ciao. Ciao.
Tags
  • N8N
  • automação
  • open source
  • low-code
  • no-code
  • Docker
  • VPS
  • Hostinger
  • Telegram
  • fluxo de trabalho