[Resolvido] Validar resposta dentro do tipo que você pediu


#1

Sugiro ao Blip um meio nativo de validar a resposta do usuário restritamente dentro do tipo que foi apresentada a pergunta.

Por exemplo:
Apresentei um Carrossel e quero limitar a resposta do usuário a qualquer item deste carrossel, nada além disso, independente da plataforma.

Hoje tem duas formas de fazer isso na mão, mas são incompletas e falhas.

Uma é fazer a validação da entrada do usuário, que não tem o tipo “Resposta de item de carrossel”
Outra é fazer uma condição de saída colocando toda a coleção de opções do carrossel invertida e direcionando para um fluxo de exceção feito a mão.


#2

Olá @Jhoni_Desb,

é totalmente possível fazer o que você está querendo. :wink:
Basta adicionar payloads nos botões do seu carrossel com um tipo específico definido por você.

Dessa forma é possível validar através do tipo da mensagem se o usuário clicou em algum dos botões. Vamos a um exemplo muito simples:

Adicione um payload do tipo application/json e faça a validação por esse tipo.

Na validação, use o tipo application/json


#3

Grato! Vou testar.
Assim fica bem mais controlado.


#4

Testei aqui, a validação funcionou, mas o caminho normal complicou.
Cada opção do carrossel agora ficou complexa nas condições de saída. Veja só.
O caminho feliz não funciona agora.


#5

Resolvi colocando apenas o conteúdo do payload.
Mas a sugestão da lista do builder incita o erro.
Inclusive foi difícil fugir da sugestão do builder, pois mesmo digitando somente o conteúdo, ele assumia a sugestão. Pra resolver tive que usar a vírgula!!

blip_cond_out2


#6

@rafaelpa eu vejo um problema sério neste tipo de validação.
Embora funcione e dê mais controle pro desenvolvedor, o usuário fica preso!
Eu tenho um menu persistente com a opção do usuário “Cancelar” a qualquer momento.
Poderia ser também uma instrução “Digite ‘cancelar’ a qualquer momento que precisar”.
Mas esta validação de tipo prende o usuário em todas estas perguntas!

E agora josé?

Liberdade pro usuário e validação meia boca?
OU
Controle do usuário e prisão no fluxo?


#7

@Jhoni_Desb,

não existe resposta certa ou errada neste caso. Tudo depende de contexto.
Eu, particularmente, não gosto de prender o usuário. Se o usuário sair do fluxo esperado, basta tratar e fazer com que o mesmo retorne ao ponto esperado :wink:


#8

Só acho que se existe um Menu persistente, o usuário deveria poder acessá-lo de qualquer ponto do fluxo.
Validação de input é uma coisa.
Intenção do usuário é outra.
A validação do input não poderia ter prioridade sobre o menu principal e pra piorar, deveria ser entendida quando acessada pelo bloco de exceções que sugerem fazer.

Fica a sugestão de usabilidade.

Encontrarei caminhos alternativos por aqui.
Obrigado