Filtrar mensagem utilizando SDK


Reputação 2

Bom dia, estou fazendo um BOT para atender nossos clientes, entretanto, num certo momento preciso fazer uma consulta no banco a partir do CPF dele, até então não sei qual a melhor forma de fazer isso mas o que pensei é pegar o que o cliente digitou(o que ainda não sei como fazer) e jogar em algum algoritmo de validação de CPF, caso seja válido, eu consulto.

O que é melhor a se fazer? Passar todos os meus receivers por um validador de CPF, caso seja CPF passo pela regra de fazer a consulta e etc ou existe uma forma de eu pegar a resposta após aquela pergunta que eu enviei, por exemplo, Digite seu CPF: ____________ e obrigatóriamente aceito esse meu receiver?


Obrigado !


4 comentários

faz via API, dai vc pega o nome na response, por exemplo eu envio via GET o cpf do usuário e defino no http…?nome={{nome}}, no retorno da minha API eu pego o nome pelo response@nome, por exemplo

Olá @Victor_Hugo_Goncalve, você está utilizando o Builder ou os SDKs do BLiP?


A partir dessa informação consigo te ajudar com as outras dúvidas.

Reputação 2

Olá @rafaelpa

Estou usando o SDK


Legal @Victor_Hugo_Goncalve,


dado que você está utilizando o SDK, a forma de pegar as entradas do usuário é através dos receivers.

Os receivers são funções do seu código que serão chamadas caso alguma mensagem seja enviada para o seu bot.


Específicamente para o seu caso você tem 2 opções:




  1. Ter apenas um receiver para todas as mensagens e utilizar algo que identifique o estado da conversa do usuário, por exemplo uma máquina de estados (momento em que o usuário deve enviar o CPF), ou então utilizar o validador como você mesmo mencionou.




  2. Criar um receiver que receba apenas CPF, a partir de um filtro do receiver utilizando um regex de CPF:

    Veja esse exemplo no SDK Javascript:


    function cpfFilter(m) => {


     if(cpfValidate(m.content.toString())) 
    return true;

    return false;

    }


    client.addMessageReceiver(cpfFilter, (m) => {

    //apenas mensagens de texto validadas como CPF

    });




A partir do momento que você possuir todas as informações necessárias para ir no seu banco de dados, basta utilizar a forma que você achar mais conveniente, seja através de uma API (como mencionado pelo @Igor_Noriaqui_da_Cu1) ou através de alguma biblioteca de acesso a dados.


Veja estes links com exemplos de códigos feitos utilizando os SDKs C# e Javascript

Comente