Como usar regex no Talk
O que é Regex (Expressões regulares)
Em algumas situações, você pode precisar que o chatbot reconheça quando o cliente menciona uma palavra ou expressão específica. Isso é útil para direcionar automaticamente o atendimento conforme a necessidade do cliente, garantindo respostas mais rápidas e eficazes.
No Talk, isso pode ser feito com Expressões Regulares (Regex), que permitem criar regras para identificar padrões na resposta do cliente. Esse recurso é usado no bloco "Pedir para digitar", onde o chatbot analisa a mensagem recebida e decide o próximo passo no fluxo de atendimento.
A seguir, vamos ver algumas maneiras de aplicar Regex, desde padrões simples até mais flexíveis e avançados.
Tipos e usos comuns
Regex Simples (Detectando uma única palavra):
A expressão regular mais simples que você pode usar é para detectar palavras específicas dentro da resposta do cliente. Por exemplo, se você quiser que o fluxo siga para um caminho diferente sempre que o cliente mencionar "boleto", você pode usar uma regex simples como:
boletoEssa regex detectará apenas a palavra "boleto" em qualquer parte da resposta do cliente.
Regex com múltiplas palavras
Se você deseja expandir a busca para várias palavras, como "boleto", "fatura" ou "pagamento", você pode usar a seguinte regex:
(boleto|fatura|pagamento)
Essa regex irá capturar qualquer uma dessas palavras. Ou seja, se o cliente disser "Eu preciso pagar minha fatura" ou "Tenho um boleto para pagar", o fluxo será automaticamente direcionado para o setor financeiro.
Regex mais flexível (Permitindo variações na frase):
Em alguns casos, você pode querer que a regex funcione independentemente do que vem antes ou depois das palavras-chave. Isso é útil quando as respostas do cliente podem variar muito, como em:
- "Gostaria de pagar o boleto."
- "Tenho uma fatura para resolver."
- "Eu preciso de ajuda com o pagamento."
.*(boleto|fatura|pagamento).*O que acontece aqui:
.*: Permite qualquer caractere (como palavras extras) antes ou depois das palavras-chave.(boleto|fatura|pagamento): Procura por qualquer uma dessas palavras-chave..*: Permite que haja mais qualquer coisa após a palavra-chave.
Regex mais avançada com modificadores e quebras de linha
Se você precisa ser mais específico e lidar com mensagens que começam com um termo fixo ou que tenham quebras de linha, pode usar modificadores como (?ms).
1) Capturando frases no início do texto:
Essa regex captura mensagens que começam com "Preciso de ajuda", ignorando espaços no início e aceitando qualquer coisa depois:
(?ms)^\s*Preciso de ajuda.*$O que acontece aqui?
^→ Indica que a correspondência deve ocorrer no início da linha ou mensagem.\s*→ Permite qualquer número de espaços em branco antes da frase (incluindo nenhum).Preciso de ajuda→ A frase exata que o chatbot buscará..*→ Aceita qualquer caractere depois da frase.$→ Indica que a correspondência deve ocorrer até o final da linha ou mensagem.
Para tornar a regex case-insensitive (ou seja, ignorar a diferenciação entre maiúsculas e minúsculas), você pode adicionar (?i) no início da regex:
(?ms)(?i)^\s*preciso de ajuda.*$Agora, a regex reconhecerá "Preciso de ajuda", "preciso de ajuda", "PRECISO DE AJUDA", etc.
2) Capturando frases com padrões específicos:
Muitas vezes, os clientes iniciam a mensagem com uma saudação antes de descreverem seu problema. Portanto, se você deseja que a regex identifique o termo "preciso de ajuda", mesmo que venha depois de uma saudação como "Olá", essa expressão regular fará isso, considerando também espaços extras ou quebras de linha.
Exemplo: Se o cliente disser "Olá, aqui é o Luiz, eu preciso de ajuda com o meu pedido", a regex ainda será capaz de capturar a solicitação corretamente.
(?i)^Olá.*,?\s*preciso de ajuda.*O que acontece aqui?
(?i)→ Ignora maiúsculas e minúsculas ("Olá", "olá", "OLÁ" serão aceitos).^Olá→ Obriga a mensagem a começar com "Olá"..*,?→ O.*permite qualquer texto após "Olá", e,?faz com que a vírgula seja opcional. Isso cobre mensagens como "Olá, preciso de ajuda" e "Olá preciso de ajuda".\s*→ Permite ou ignora espaços extras antes de "preciso de ajuda".preciso de ajuda.*→ Garante que "preciso de ajuda" esteja em algum lugar depois do "Olá".
Exemplo de uso
Veja como fica em um exemplo simples onde foi questionado ao cliente o motivo do contato e caso o cliente faça referência na resposta a boleto, fatura ou pagamento, o mesmo é transferido automaticamente para o setor financeiro. Essa regex irá capturar qualquer uma dessas palavras. Ou seja, se o cliente disser "Eu preciso pagar minha fatura" ou "Tenho um boleto para pagar", o fluxo será automaticamente direcionado para o setor financeiro.
Para isso, basta definir no campo customizado os termos que devem ser reconhecidos, como por exemplo: "boleto" ou "fatura". Em seguida, configure o gatilho para que o chatbot utilize a mensagem anterior do cliente como referência para a validação da regex, deixando selecionada a opção "Tentar utilizar a última mensagem ao invés de perguntar".
Dessa forma, se o cliente enviar algo como "Fatura atrasada" ou "Boleto para pagar", o chatbot não exibirá nenhuma mensagem inicial. Em vez disso, ele irá diretamente identificar o termo na mensagem recebida e seguir automaticamente com o fluxo correspondente ao campo customizado.
Em resumo:
- O cliente envia a primeira mensagem, ex.: "Fatura";
- O chatbot analisa imediatamente o conteúdo da mensagem;
- Reconhece o termo configurado no campo customizado;
- Inicia o fluxo correto automaticamente, neste exemplo, o fluxo de Fatura/Boleto.
Esse modelo garante uma experiência mais fluida, pois o cliente é direcionado de forma inteligente logo no primeiro contato, sem receber mensagens não solicitadas.
Como testar
Você pode testar o funcionamento diretamente no bloco, clicando em "Testar Opções". Isso permite verificar, em tempo real, se a expressão regular está reconhecendo corretamente as palavras ou padrões desejados antes de ativar o fluxo para os clientes.
Esperamos que este tutorial tenha te ajudado a entender como usar Expressões Regulares (Regex) no Talk. Teste e explore diferentes expressões para adaptar o fluxo às necessidades do seu negócio, proporcionando um atendimento mais otimizado e inteligente.