Como criar um chatbot com um sistema de reservas no Google Planilhas

Disponível com uma assinatura paga, bem como durante a avaliação gratuita de 7 dias

O serviço Integromat mudou seu endereço de site, design e nome para Make. As opções de integração continuam as mesmas, mas o design pode ser diferente das screenshots mostradas nesse artigo.

Você pode integrar chatbots SendPulse com outros serviços para solicitar informações via Make. Neste artigo, veremos como criar um sistema de reserva usando um chatbot para uma estação de serviço de automóveis. Você pode cadastrar um cliente para atender o carro por um horário específico se a célula desejada estiver vazia ou sugerir um horário e dia diferentes se estiver reservado.

Você será capaz de automatizar e otimizar o processo de reserva e usar esse esquema para registrar usuários em um posto de gasolina, marcar uma consulta com um médico, reservar mesas em um restaurante e assim por diante.

Como começar

Faça login em sua conta Make e clique no botão + Criar um novo cenário para começar a criar um cenário.

Você pode escolher quais serviços conectar - neste caso, queremos Webhooks e Google Planilhas — usando a pesquisa ou localize e adicione-os diretamente no construtor. Clique no botão Continuar no canto superior direito.

Como criar um webhook

Clique no bloco com o ponto de interrogação no centro da tela e selecione o bloco Webhooks — este bloco inicia o fluxo.

Você precisa criar um webhook que envie dados do fluxo do seu chatbot. Selecione o bloco "Webhook personalizado" na lista suspensa.

Clique no botão Adicionar para criar um novo webhook.

Insira um nome de webhook e clique no botão Salvar.

Seu webhook foi criado. Copie o link — você precisa colocá-lo no fluxo do chatbot.

Agora, o Make espera receber o primeiro webhook para determinar a estrutura de dados necessária para funcionar.

Faça login em sua conta SendPulse. Selecione o bot que você precisa e abra o fluxo no criador de fluxo do chatbot.

Crie um fluxo de chatbot para inserir dados para verificação e registro, como nome, detalhes de contato, dia da semana e hora.

Adicione e coloque o elemento Solicitação de API logo após o elemento que deseja enviar ao webhook. Selecione o tipo de solicitação "POST" e insira a URL copiada do Make.

Insira os dados passados ​​no corpo da solicitação. Aqui, você pode usar as variáveis ​​do seu chatbot com os dados solicitados ao usuário no elemento anterior do cenário.

Clique no botão Solicitação de teste para enviar a solicitação ao Make para que o sistema possa reconhecer a estrutura de dados recebida.

Quando o Make receber o webhook, você verá uma mensagem “Determinado com sucesso” no bloco “Webhooks”.

Como enviar e receber informações do Google Planilhas

Este artigo aborda a integração com o Google Planilhas usando o Make (Integromat). Ainda assim, você também pode obter dados do Google Planilhas diretamente apenas com a API do Google Planilhas e as ferramentas SendPulse. Leia mais: "Como transferir dados do Google Sheets para chatbots."

Agora, no Integromat, precisamos construir um cenário que verifique em nossas Google Planilhas a data e hora solicitadas para a solicitação de reserva de um cliente. Se a célula solicitada estiver disponível, escreveremos o usuário nela. Se a célula estiver ocupada, retornaremos a resposta que o horário está reservado e o cliente precisa escolher um horário diferente.

Usaremos os seguintes blocos no cenário:

"Roteador" — ajuda a ramificar o cenário; cada rota terá seu próprio "Filtro" aplicado (por dias: "segunda-feira", "terça-feira" e assim por diante, depois pelo horário de reserva: "10", "11" e assim por diante, depois pelo status da célula - disponível ou reservado).

"Google Planilhas" — usaremos a ação "Obter uma célula" para obter informações da célula para a data e hora selecionadas e "Atualizar uma célula" para gravar dados na célula selecionada se ela estiver vazia.

"Webhook" — usaremos a ação "Resposta do webhook" para enviar uma mensagem de resposta ao chatbot.

Adicionando um roteador para divisão por dia

Usando um roteador, você pode ramificar seu cenário em várias rotas, processar os dados de maneiras diferentes e filtrar os dados que passam ao longo da rota.

Para adicionar um roteador, clique em "Adicionar outro módulo" ao lado do bloco de gatilho "Webhook".

Digite "Roteador" e selecione "Controle de fluxo".

É assim que adicionamos o primeiro roteador que dividirá o cenário em dias.

Adicionando um roteador para divisão de horas

Você precisa adicionar mais roteadores para cada hora desejada de cada dia da semana para adicionar divisão de horas.

Configurando um filtro por dia

O primeiro roteador ramifica o cenário por dias — isso significa que entre o primeiro e os subsequentes roteadores, você precisa configurar filtros com a condição de que os valores correspondam aos dias.

Para configurar o filtro, clique na chave inglesa próximo ao bloco do roteador.

No primeiro campo, selecione a variável de dia obtida no webhook. No segundo campo, escreva o dia da semana ("Segunda-feira" para o primeiro filtro). Após inserir a condição, clique no OK botão.

Se você não tiver uma variável no formulário 1.day (onde 1 é o número do bloco no Make, no qual você recebeu essa variável do chatbot), clique no botão Executar uma vez no canto inferior esquerdo e inicie o fluxo no chatbot para o qual você configurou o webhook. 

Você precisa duplicar o primeiro roteador, indicando seus dias úteis no segundo campo: "terça-feira", "quarta-feira" e assim por diante.

Configurando um Filtro por Horas

Para instalar este filtro, você deve primeiro adicionar o bloco "Google Planilhas".

O segundo roteador (o segundo, se você observar a conexão linear do primeiro bloco de gatilho "Webhook") ramifica o cenário por hora. Isso significa que, para o segundo roteador e o bloco subsequente do "Google Planilhas", você precisa definir filtros com a condição de hora.

Para configurar o filtro, clique no ícone de chave inglesa próximo ao bloco do roteador.

No primeiro campo, selecione a variável de tempo obtida do webhook.

No segundo campo, insira a hora. No primeiro filtro, temos "10". Após inserir a condição de filtragem, clique no OK botão.

Se você não tiver uma variável no formulário 1.time (onde 1 é o número do bloco no Make, no qual você recebeu essa variável do chatbot), clique no botão Executar uma vez no canto inferior esquerdo e inicie o fluxo no chatbot onde você configurou o webhook. 

Você precisa duplicar o segundo roteador, indicando seu horário de trabalho no segundo campo: "10", "11" e assim por diante.

Adicionando a visualização de células ao Google Planilhas

O próximo bloco após dois roteadores com filtros por dia e hora será "Google Planilhas". Cada bloco "Google Planilhas" será responsável por uma célula específica em seu documento do Google Planilhas .

Clique no ponto de interrogação ou "Adicionar outro módulo" ao lado do bloco atual e selecione "Google Planilhas" com a ação "Obter uma célula".

Conecte sua Conta do Google, selecione uma planilha e uma página e clique no OK botão.

Antes de fechar a página, verifique todo o seu script para que cada dia da semana e hora tenham sua célula exclusiva — eles não devem ser repetidos.

Nossa primeira célula será B2 — a interseção de "Segunda-feira" e "10:00".

Um exemplo de célula que irá validar um registro (e gravar dados se a célula estiver vazia) no Google Planilhas:

Adicionar um roteador para resultados da verificação da célula

Agora precisamos dividir o cenário em ramos: com base no fato de a célula está vazia ou não.

Clique em "Adicionar outro módulo" ao lado do bloco "Planilhas do Google" com a ação "Obter uma célula" e selecione "Roteador".

Adicionando um filtro de ocupação de célula

Para poder ajustar o filtro, primeiro adicione os seguintes blocos.

Para verificar se a célula está vazia, compare o valor (igual a) obtido no elemento "Obter uma célula" com um valor em branco nos parâmetros do filtro.

Clique na linha entre "Roteador" e "Google Planilhas" com a ação "Atualizar uma célula" e defina a condição. No primeiro campo, selecione a variável 5.Valor — o valor recebido da célula solicitada no bloco "Google Planilhas" com a ação "Obter uma Célula".

Observação: se você não tiver uma variável no formato 5.Valor (onde 5 é o número do bloco no Make, no qual você recebeu essa variável do chatbot), clique no bloco obrigatório “Google Planilhas” com a ação “Obter uma célula” e selecione “Executar apenas esse módulo”.

Adicionando um roteador para uma célula vazia

Esta ramificação com os blocos de atualização de dados no Google Planilhas e a resposta sobre a reserva bem-sucedida será executada se o Make receber uma resposta de que a célula está vazia após o filtro.

Clique em "Adicionar outro módulo" próximo a "Roteador" e selecione "Google Planilhas" com a ação "Atualizar uma célula".

No campo "Célula", insira a mesma célula que você inseriu para este branch no bloco "Google Planilhas" com a ação "Obter uma célula".

No campo "Valor", digite o texto que deseja escrever na célula. Pode ser um nome, detalhes de contato ou qualquer outra informação útil ao fazer uma reserva. Você também pode adicionar seu texto ou formatar o atual.

Em seguida, após o bloco "Google Planilhas" com a ação "Atualizar uma célula", adicione "Webhook — Resposta do webhook".

No corpo da resposta do webhook, insira uma mensagem no formato JSON.

Por exemplo:

{"message": "You have successfully made a reservation. We are waiting for you!"}

Esta mensagem será enviada de volta ao chatbot por meio do elemento "solicitação de API", que você pode escrever para uma variável ou enviar diretamente para uma mensagem por meio do registro de caminho JSON.

Você também pode adicionar variáveis ​​à resposta e enviar qualquer outro valor que você escreve para uma variável para o contato, pelo qual você pode filtrar e expandir as respostas.

Adicionando um roteador para uma célula ocupada

Esta ramificação com um bloco de resposta sobre uma célula ocupada será executada se, após o filtro Make, receber uma resposta de que a célula está ocupada.

Clique em "Adicionar outro módulo" próximo a "Roteador" e selecione "Webhook — Resposta do Webhook".

No corpo da resposta do webhook, insira uma mensagem no formato JSON.

Por exemplo:

{"message": "The time you selected is occupied. Please select a different time."}

Esta mensagem será enviada de volta ao chatbot por meio do elemento "solicitação de API", que você pode escrever para uma variável ou enviar diretamente para uma mensagem por meio do registro de caminho JSON.

Você também pode adicionar variáveis ​​à resposta e enviar qualquer outro valor que você escrever para uma variável para o contato, pelo qual você pode filtrar e expandir as respostas.

Como enviar uma mensagem com uma resposta a um usuário

Volte para editar o fluxo do chatbot em sua conta SendPulse.

Você pode salvar o valor resultante em uma variável para usar um filtro e adicioná-lo à mensagem como uma variável. Ou você pode exibir os dados para o usuário uma vez, sem salvar, usando uma expressão como {{$ ['variável']}}. Leia mais: Usando dados como uma expressão de caminho JSON.

Coloque o elemento "Mensagem" logo após o elemento "Solicitação de API" e adicione uma variável ou expressão de caminho JSON.

Recomendamos adicionar um elemento "Filtro" antes do elemento "Mensagem" para verificar sua resposta do Make. E, se o tempo selecionado estiver ocupado, retorne o usuário à seleção de tempo novamente.

Você também pode complicar o fluxo e combiná-lo com outra solução, onde você pode verificar as células - para ver quais estão livres e quais estão ocupadas. Leia "Como solicitar células no Google Planilhas".

Salvar e executar

Antes de salvar e sair, certifique-se de que tudo está funcionando corretamente.

Clique no botão Executar uma vez e execute o fluxo para o qual configurou o webhook. Se você configurou tudo corretamente, marcas de seleção verdes aparecerão sob os blocos de Webhook e Google Planilhas.

Além disso, os filtros ativados serão destacados em azul, e os valores "+1" serão adicionados aos filtros que o contato passou para "Sim".

Você também pode clicar no número acima do bloco para visualizar as informações recebidas e passadas para o próximo bloco.

Várias operações podem ser realizadas após o recebimento de dados. Eles serão realizados quantas vezes o seu plano pago do Make permitir. Cada operação terá dados de contato que você pode rastrear para outros blocos.

Ao clicar no filtro, você pode verificar como foi o contato de uma determinada operação.

Se o contato atender às condições do filtro, uma marca verde será exibida.

Se o contato não atender à condição do filtro, será exibido um sinal de que o contato não passou no filtro.

Para ativar o cenário, mova a chave seletora para a posição "Ligado".

Como visualizar o histórico do cenário

Navegue até o cenário que você precisa. Você terá acesso a um diagrama de todos os blocos com seu histórico de execução. Para cada operação selecionada, você será capaz de rastrear o caminho do usuário através dos blocos destacados.

Clique no bloco desejado para ver as informações sobre ele. Você terá acesso a todas as informações sobre o bloco: quais valores ele recebeu e transmitiu posteriormente.

Caso algum dos blocos não tenha sido executado, ficará destacado em vermelho e, ao ser pressionado,a razão do erro e uma dica de como corrigi-lo será exibida. Observe que todo o cenário pode pausar e não executar até que o erro seja resolvido; as operações serão enfileiradas.

Se você tiver alguma dúvida sobre falhas de configuração ou cenário, pode entrar em contato com o suporte do Make.

    Rate this article about "Como criar um chatbot com um sistema de reservas no Google Planilhas"

    User Rating: 5 / 5

    Anterior

    Como enviar solicitações de API via Integromat e integrar o SendPulse ao seu sistema

    Próximo

    Como passar contatos do Google Planilhas para listas de endereçamento da SendPulse e enviar mensagens para um chatbot

    Popular em nosso blog

    Teste o SendPulse hoje gratuitamente