Hyperflow
Studio
  • 👋Bem-vindo(a) ao Help Hyperflow!
  • Sobre a Hyperflow
    • 💡O que fazemos?
    • ✨Nossos recursos
    • 🙌Comunidade Hyperflow
  • Primeiros passos
    • ✏️Criando sua conta
    • 🔐Acessando a plataforma
    • ▶️Verificando o BM Meta
    • 🤖Criando o primeiro fluxo
  • Canais de atendimento
    • 🟢WhatsApp
      • 🤖Como conectar seu bot Hyperflow no WhatsApp
      • 🧵Passo a passo: criação de conta no WhatsApp Business API
      • 💬O que você precisa saber sobre conversas do WhatsApp Business API
      • 🛑Limites de mensagem: regras e boas práticas do WhatsApp Business API
      • 🧪Número de teste para WhatsApp
      • 📰Utilizando catálogo no WhatsApp
      • 📈Otimizar mensagens de marketing
    • 💟Instagram
      • 🤖Como conectar seu bot Hyperflow no Instagram
      • Vinculado o chatbot ao Instagram
    • 🔵Telegram
      • Conectando o Telegram
    • 🗃️WebSDK
      • Como conectar seu bot no WebSDK
      • Configurações da WebSDK
      • Como incluir o WebSDK em um aplicativo
    • ☑️Facebook Messenger
    • 📳SMS
  • Builder de chatbots
    • 🎲Conheça os Módulos
    • ℹ️Ação
      • 📤Executar código (run code)
      • ⏳Iniciar Inatividade (start inactivity)
      • ⌛Finalizar Inatividade (end inactivity)
      • ⛳Tag de usuário (user tag)
      • 🍃Variável de fluxo (flow variable)
      • 🙋Variável de usuário (user variable)
      • ⏸️Esperar
      • ⏰Enviar alerta (send alert)
    • 🛎️Atendimento
      • ✨Iniciar/atualizar atendimento (Init/Update attendance)
      • 🗃️Adicionar uma classificação no atendimento (Classification attendance)
      • 📟Adicionar um rótulo no atendimento
      • 🔚Encerrar atendimento (Finish attendance)
      • ⏱️Tamanho da fila (Queue size)
      • 🟢Agente online (online agent)
      • 🧑Transferir para atendente (Transfer human)
    • 🎮Controle de fluxo
      • 🔢Condicional (conditional)
      • 🛑Fim do fluxo (end flow)
      • ⏲️Intervalo de tempo (time interval)
      • 🐇Pular para fluxo (jump)
      • 🧪Teste A/B (split A/B)
    • ⚡Gatilho
      • Referência de mensagem (Ads)
      • Agendamento
      • Ativar usuário
      • Intenção
    • 💎Integração
      • AWS - Dynamo DB
      • AWS - S3
      • AWS - Secrets Manager
      • AWS - SES
      • AWS - SQS
      • Consulta em banco de dados
      • Enviar e-mail
      • Firebird
      • Google Analytics
      • Google Calendars
      • Google Sheets
      • HTML to PDF
      • JWT
      • Oracle DB
      • Requisição GraphQL
      • Requisição REST
      • Requisição SOAP
      • Send Grid
      • XML to JSON
    • 🎧Resposta
      • Enviar mensagem
      • JSON
  • Builder Hyperflow
    • 📄Gerenciamento de conta
      • 🏠Início
      • 🚀Aplicativos
      • 👥Membros
      • 💳Métodos de pagamento
      • 💵Gerenciar créditos Meta
      • 💰Faturas
      • 🗃️Dados cadastrais
    • 🤖Gerenciamento de bots e integrações
      • 🏡Início aplicativos
      • 🪄Fluxos
      • 💬Canais
      • 📣Transmissões
      • ⛓️Integrações
        • ✴️Hubspot App
          • 🔵Ação 1 - Iniciar Fluxo
          • 🟡Ação 2 - Iniciar Atendimento
          • 🔴Ação 3 - Verificar propriedade de um fluxo
      • 👾Variáveis de ambiente
      • 🧠Processamento de Linguagem Natural (NLP)
        • 💬Conectando o Dialogflow
      • 👩‍💻Atendimento
      • ☁️API Gateway
        • Criando seu primeiro método
      • 📈Tempo real
      • 👤Contatos
      • 🏬Faturas
      • ⚙️Configurações
  • Desk Hyperflow
    • 🔔Visão geral de atendimento
      • Início
      • Dashboard
      • Atendimentos
      • Histórico de Chats
      • Figurinhas
      • Rótulos
    • 👩‍💻Gerenciamento de atendimento e time
      • Classificações
      • Contatos
      • Agentes
      • Departamentos
      • Times
    • 🛠️Relatórios, mensagens e configurações
      • Relatórios
      • Atalhos
      • HSMs
      • Configurações
        • Parâmetros
        • Usuários
  • Guias
    • ⛑️Boas práticas para desenvolvimento de bots na Hyperflow
    • 🏦Domínios e IPs Hyperflow
    • 🤖Criando um Bot
    • 📱Enviar um ativo baseado em uma planilha do Google Sheets
  • 💚5 boas práticas para evitar bloqueio e suspensão de conta no WhatsApp Business API
  • 💡Assistente GPT
  • ⚡Executar automação durante atendimento humano (Gatilhos)
  • 🔎Criar Pesquisa de Satisfação
  • 🔒Autenticação de 2 fatores (Segurança)
  • 🔔Novidades (Release notes)
    • Release 15/05/25
    • Release 29/04/25
    • Release 16/04/25
    • Release 20/03/25
    • Release 23/02/25
    • Release 30/01/25
    • Release 13/12/24
    • Release 20/11/24
    • Release 25/10/24
    • Release 07/10/24
    • Release 25/09/24
    • Release 22/09/24
    • Release 04/09/24
    • Release 17/07/24
    • Release 28/06/24
    • Release 10/06/24
    • Release 03/06/24
    • Release 30/04/24
    • Release 15/04/24
    • Release 02/04/24
    • Release 19/03/24
    • Release 05/03/24
    • Release 20/02/24
    • Release 06/02/24
    • Release 23/01/24
    • Release 03/01/24
    • Release 19/12/23
    • Release 28/11/23
    • Release 06/11/23
    • Release 11/10/23
    • Release 12/06/23
    • Release 29/05/23
    • Release 14/05/23
  • FAQ
    • ❓FAQ - Hyperflow
      • 🚀A Plataforma
      • ✅WhatsApp Business API
      • 👩‍💻Atendimento
      • ⚡Integrações
      • ☁️iPaaS
      • 💬CPaaS
Powered by GitBook
On this page
  • Objetivo
  • Plano de ação
  • 1 - Criar uma rota na Hyperflow para receber os dados
  • 2 - Criando fluxo que realiza o envio ativo
  • 3 - Criar uma rota de API que irá ativar o fluxo criado
  • 4 - Google Sheets - Criando coluna de controle
  • 5 - Criando o seu Apps Script
  • 6 - Criar o gatilho para que o script seja executado
  • Verificando a execução e logs

Was this helpful?

  1. Guias

Enviar um ativo baseado em uma planilha do Google Sheets

Use o Google Sheets para enviar dados para o Hyperflow, e notificar os seus clientes

PreviousCriando um BotNext5 boas práticas para evitar bloqueio e suspensão de conta no WhatsApp Business API

Last updated 1 year ago

Was this helpful?

Objetivo

Neste artigo, você irá construir uma automação, onde ao criar uma nova linha em uma planilha do Google Sheets, um fluxo da Hyperflow será ativado. Com isso, você pode criar qualquer automação dentro da Hyperflow, fazendo com que o fluxo envie uma mensagem ativa de WhatsApp por exemplo, ou envie informação para algum outro sistema seu.

Neste exemplo, iremos demonstrar como criar essa automação, e enviar um ativo de WhatsApp com os dados da planilha ao criar uma nova linha.

Plano de ação

Para criar a integração, será necessário concluir 6 passos 👇

  1. Criar um fluxo na Hyperflow, que irá receber os dados de nova linha do Google Sheets;

  2. Criar um fluxo para enviar a mensagem ativa de WhatsApp. Este fluxo será chamado pelo fluxo criado no item 1;

  3. Criar uma rota de API na Hyperflow para ativar o fluxo criado no item 1;

  4. Criar uma nova coluna na planilha, para controle de qual linha já foi enviada para o Hyperflow;

  5. Criar um Apps Script dentro do Google Sheets, que irá pegar o dado de uma linha e enviar para o Hyperflow;

  6. Criar um gatilho dentro do Google Sheets, para escutar novas edições e executar o script criado no item 3.

1 - Criar uma rota na Hyperflow para receber os dados

Para iniciar, vamos criar uma rota de API, que irá ativar um fluxo, sempre que uma nova linha for inserida em nossa planilha. Se preferir, importe o fluxo de exemplo que está no final deste item.

O fluxo criado, será responsável por receber os dados, verificar se possui os dados necessários para realizar o ativo, e em seguida, chamar o usuário. Segue abaixo um exemplo do fluxo.

Este fluxo, ao receber uma linha do Google Sheets, realiza uma verificação, para apenas enviar a mensagem, caso tenha todos os dados necessários. As colunas do Google Sheets, serão recebidas na variável {{input}}. Dessa forma, se você quiser pegar o valor da coluna "nome" do seu Google Sheets, basta usar a variável {{input.nome}}.

O fluxo descrito acima, estará disponível para download clicando no arquivo abaixo. Dessa forma, basta importar este fluxo em seu ambiente, e alterar as variáveis desejadas.

Para publicar o fluxo informado, será necessário preencher a caixinha "Ativar usuário" com o número que será utilizado, o fluxo que será executado de forma ativa. Este fluxo, será criado no item 2.

2 - Criando fluxo que realiza o envio ativo

Para isso, crie um novo fluxo, igual foi feito no passo 1. Neste fluxo, configure para que ao iniciar, seja enviado um "Chat", com uma mensagem do tipo "HSM" (para abrir conversas ativas).

Segue abaixo um exemplo de como você pode construir este fluxo que faz o envio ativo. Após este envio, você pode aplicar qualquer regra que deseja. Você pode construir uma automação para que na resposta, seja enviado para o atendimento humano, ou para que seja processado um outro fluxo de atendimento por exemplo.

Com o fluxo criado, basta voltar no fluxo do item 1, e selecionar para que este fluxo seja executado no módulo "Ativar usuário".

Insira os dados para ativar o usuário. Para isso, basta configurar a caixinha conforme o exemplo. Você precisará informar estes 5 campos 👇

  1. O número que será utilizado para fazer o disparo;

  2. O fluxo que acabou de ser criado neste item para realizar o envio da mensagem ativa;

  3. Escolha enviar para "Usuário único";

  4. Insira o telefone dele de acordo com o cabeçalho da usa planilha. Na nossa planilha de exemplo, usamos o telefone na coluna "telefone", por isso foi inserido a variável {{input.telefone}};

  5. Envie para o fluxo que realiza o disparo, dados adicionais que são recebidos da sua planilha. No exemplo da imagem, estamos enviando o parâmetro nome, para utilizar a variável {{input.nome}} no próximo fluxo.

3 - Criar uma rota de API que irá ativar o fluxo criado

Com os fluxos criados, agora precisamos criar uma rota de API para acionar o fluxo "Sheets - Envio planilha" criado no item 1.

Clique no botão para adicionar uma nova rota, e configure a sua rota, para ser um POST. Você pode customizar o nome final da sua rota, neste exemplo, chamamos de "teste-sheets". Selecione o fluxo criado no item 1. Após isso, clique no botão confirmar.

Por razões de segurança, após criar a sua API, desabilite a opção "Acesso público" caso ela venha marcada, e clique em salvar. Nesta tela, você também conseguirá visualizar o endereço de API que vamos utilizar no passo 5.

Para realizar a chamada desta API de forma segura, será necessário criar um "cliente". O cliente é uma entidade (Neste caso o Google Sheets), que possui uma chave de acesso para poder executar este serviço.

Para isso, basta ir na aba "Clientes" e adicionar um novo cliente. Após isso, copie o ID do cliente. Ele será necessário no passo 5, junto com o endereço da API criada.

Sucesso 🎉

Com este passo, você concluiu as configurações necessárias na Hyperflow. Agora vamos para os ajustes necessários no Google Sheets.

4 - Google Sheets - Criando coluna de controle

Dentro da sua planilha, crie uma coluna com o cabeçalho "Envio hyperflow". Ela será uma coluna que irá ser preenchida automaticamente pelo script, e será utilizada de controle, para não processar a mesma linha em duplicidade.

Caso você não queira que a automação processe registros já existentes na sua planilha, preencha todas as linhas já existentes com o valor "ok".

5 - Criando o seu Apps Script

Agora vamos criar um script, que será responsável por processar novos registros em sua planilha, e enviar para a Hyperflow.

Para isso, acesse o menu de "Extensões" e escolha a opção "Apps Script"

Agora será necessário criar o script que irá notificar o Hyperflow sempre que tiver uma nova linha. Para isso, você pode usar o código abaixo como template. Basta trocar o seu client_id da linha 35, e a URL criada no API gateway na linha 39.

function editRow(e) {
  const sheet = SpreadsheetApp.getActiveSheet()
  const hyperflowColumn = sheet.getRange('1:1').getValues()[0].indexOf('Envio hyperflow') + 1
  if (hyperflowColumn == 0) {
    Logger.log("Não foi encontrado o cabeçalho 'Envio hyperflow'")
    return
  }
  const data = sheet.getRange(1, hyperflowColumn, sheet.getLastRow(), 1).getValues().join().split(',')
  const headings = sheet.getDataRange().offset(0, 0, 1).getValues()[0]; //get heading
  const totalColumns = sheet.getLastColumn()
  for (var i = 0; i < data.length; i++) {
    if (data[i] == '') {
      var values = sheet.getSheetValues(
        (i + 1), // Linha atual
        1, // Coluna de inicio
        1, // Número de linhas a serem buscadas
        totalColumns // Total de colunas
      );
      Logger.log('Notificando linha: ' + (i + 1))
      Logger.log(values[0])
      var payload = {}
      for (var j = 0; j < headings.length; j++) {
        var name = headings[j];
        var value = values[0][j];
        payload[name] = value;
      }
      payload["linha"] = (i + 1);
      Logger.log('Enviando dados');
      Logger.log(payload)
      var options = {
        'method': 'post',
        'contentType': 'application/json',
        'payload': payload,
        'headers': {
          'client_id': 'SEU_CLIENT_ID'
        }
      };

      const response = UrlFetchApp.fetch('URL_DO_API_GATEWAY_CRIADA', options);
      Logger.log(response)
      sheet.getRange((i + 1), hyperflowColumn).setValue('ok')
    }
  }
}

Com estes dados, crie o seu script, e clique em salvar

6 - Criar o gatilho para que o script seja executado

Com tudo isso configurado, agora basta criar um gatilho, para que o seu script seja executado. Para isso, vá em "Acionadores" e clique em "+ Adicionar acionador"

Faça a configuração abaixo em seu gatilho, para que ele seja executado, toda vez que existir uma mudança na sua planilha

Parabéns 🎉

Você concluiu todas as etapas do tutorial, e agora sempre que adicionar uma nova linha, ou editar algum campo, o script irá buscar essa linha e enviar para a Hyperflow, realizando a ação desejada.

Verificando a execução e logs

Caso após a configuração, você tenha algum problema, você pode conferir os logs e motivos do erro da seguinte forma.

1 - Dentro do Apps Script

Você pode verificar se o script está sendo executado, e qual a sua resposta, acessando o menu de "Execuções" do gatilho criado. Lá você terá uma tabela contendo todas as execuções e respostas recebidas.

2 - Na Hyperflow

Caso a execução esteja sendo realizada, você pode verificar na Hyperflow se você está recebendo as requisições da forma adequada. Para isso, basta ir em "tempo real", e filtrar os logs de API. Dentro dos logs de API, você pode filtrar por um período, e pelo nome da sua rota.

Dessa forma, você pode validar todas as chamadas recebidas, e o processamento realizado em cada uma delas. Basta expandir o processamento para ver possíveis falhas de configuração em seu fluxo.

Pronto, você concluiu este tutorial. Caso tenha qualquer outra dúvida, basta entrar em contato com o nosso suporte!

📱
16KB
Sheets - Envio nova linha.flow
Arquivo 1 - Fluxo de exemplo para envio de nova linha
Imagem 1 - Criando um novo fluxo para receber as linhas da planilha
Imagem 2 - Fluxo para processar os eventos do Google Sheets
Imagem 3 - Configurando o envio ativo
Imagem 4 - Fluxo que faz o envio da mensagem ativa.
Imagem 5 - Configurando o módulo de Ativar usuário no primeiro fluxo
Imagem 6 - Criando uma nova rota de API
Imagem 7 - Criando uma nova rota de API
Imagem 8 - Segurança da API, e endereço da rota criada
Imagem 9 - Criando um novo cliente para consumir a API criada
Imagem 10 - Coluna a ser criada na planilha
Imagem 11 - Acessando o menu de Apps Script
Imagem 12 - Tela de configuração do Apps Script
Imagem 13 - Criando um novo gatilho (Acionador)
Imagem 14 - Configuração do acionador
Imagem 15 - Log de execuções de um gatilho
Imagem 16 - Logs de API da Hyperflow