Skip to main content

Olá Blip Members tudo bem vocês? :happyblip:

Espero que estejam bem, hoje irei ensinar como usar um sistema de confirmação de e-mail com pin, ele pode ser adaptado para validação do whatsapp também esse tipo de validação pode se incorporado ao bot para garantir que estejamos tratando com o responsável pela conta ou usuário cadastrado no sistema.

Cenário: Nos já conhecemos todos os nosso clientes que acessam ao bot e não precisamos perguntar novamente os dados, para evitar uso indevido iremos enviar um código via e-mail para que ele confirme e autorize aquela sessão.

1° Passo : Na ação de entrada do nosso bloco que cria o pin vamos adicionar o script :


function run() {
let pin = Math.random() * (9999 - 1000) + 1000;
return Math.floor(pin);
}

Salvando a varivel com nome pin :

 

2° Passo : No mesmo bloco vamos adicionar uma ação de entrada como definir contato e inserir o pin no extras do contato :

 

3° Passo : Nesse bloco vamos adicionar um script para formatar o e-mail para o padrão da requisição http essa vai ser uma ação de saída :
variável de entrada = contact.email
variável de saída = emailformatado

 

script :


function run(email) {
let emailformatado= encodeURIComponent(email);
return emailformatado;
}

4° Passo : Continuando nesse mesmo bloco vamos colocar a ação de saída de requisição http para envio do e-mail código da requisição :
referencia : Blip Docs | API Reference

{
"id":"{{random.guid}}",
"to": "{{emailformatado}}@mailgun.gw.msging.net",
"type": "text/plain",
"content": "Pin = {{pin}}"
}

5° Passo : No bloco de validação criei um script na ação de saída com as variáveis de entrada pin e contra pin na variável de saída use o Isvalidpin :

 

 

script:


function run(pin, contrapin) {
if(pin==contrapin){
return true;
}
return false;
}

nas condições de saida deixe dessa forma :

 

Teste do fluxo :
image

Teste do envio do email :
image

Bom dia @Rafael_Figueiredo, kara vc sabe se ao invés de eu mandar por e-mail eu consigo mandar por sms? da pra mandar pela blip ou eu tenho que contratar algum serviço externo tipo twilio pra mandar o sms ?  


Comente