[Exemplo] Recuperando dados do Airtable (GET)

Bots são frequentemente usados para mostrar dados de fontes externas ao seu usuário. Uma maneira fácil de gerenciar esses dados é usando Airtable. Airtable é uma ferramenta que permite criar uma planilha com a qual você pode se comunicar via API.

Neste tutorial configuraremos uma integração com o Airtable. Por causa de todo o código parece bastante técnico, mas na verdade é bem fácil.

Se você é novo no uso de variáveis no Chatlayer.ai, siga este o tutorial primeiro.

Como exemplo, vamos construir um bot que mostra informações sobre encontros de chatbots.

  • A primeira coisa que precisamos fazer é criar alguns dados de encontros. Neste exemplo, usaremos este Airtable. Fique à vontade para reutilizá-lo!

  • Comece construindo um fluxo curto que explique o propósito do bot e que pergunte em que mês o usuário quer saber informações sobre encontros.

  • Para a pergunta sobre o mês, certifique-se de que está usando um validador de entrada que salva a resposta como avariável mês e que continua para o próximo passo: um bloco de Ação.

  • Configure o bloco de Ação que é acionado após a validação de entrada com um plug-in de código. Adicione a variável "month" como argumento, conforme mostrado na captura de tela:

Quer aprender mais sobre as possibilidades do plug-in de Código? Você pode encontrá-lo aqui.

  • Em seguida, adicione este trecho de código:

const { month } = args;

const { records = [] } = await fetch(
  "https://api.airtable.com/v0/(yourAppId)/(yourTableName)",
  {
    method: "GET",
    headers: {
      Authorization: "Bearer (insert token here)",
    },
  }
).then((res) => res.json());

const found = records.filter((rec) => rec.fields.Month === month.toLowerCase());

const builder = ChatlayerResponseBuilder();

if (found.length) {
  builder.addSessionVariable("meetups", found);
} else {
  builder.addSessionVariable("nomeetups", found);
}

builder.send();
  • Este bloco de código procura na tabela um encontro no mês que o usuário informou e, se encontrar, retorna essa informação para o Chatlayer.ai. Se nenhum encontro for encontrado, a nomeetups variável é salva na sessão do usuário.

  • Se você seguir o fluxo até este ponto, ele ficará algo assim:

  • E os seguintes dados são salvos na sessão:

  • Agora tudo o que precisamos fazer é mostrar esses dados! Adicione um Ir Para ao final do bloco de Ação onde você adicionou o bloco de código.

  • Configure este Ir Para da seguinte forma:

  • Dessa maneira, o usuário receberá uma resposta diferente se não houver encontros no mês sobre o qual perguntou.

  • Finalmente, configure as mensagens em "mostrar informações do encontro" para exibir as informações recuperadas da planilha do Airtable.

  • Tudo pronto! Agora você pode testar o fluxo completo.

Atualizado

Isto foi útil?