O componente pré-criado de autenticação de varejo coleta informações do usuário para autenticá-lo no nível de autenticação necessário. Esse componente abrange os requisitos de autenticação comuns, mas não exclusivos, do setor de varejo. Esse componente usa o componente pré-criado Coleção de números de telefone para coletar e validar detalhes do usuário.
Níveis de autenticação
Há vários níveis de autenticação exigidos por diferentes componentes pré-criados. Níveis mais altos exigem mais informações do usuário para autenticá-lo. O componente de autenticação de varejo permite que os usuários se autentiquem no Nível 0 (correspondência de ANI) ou no nível 1 (básico), conforme descrito na tabela "Nível de autenticação".
Nível de autenticação | Requisitos |
---|---|
Nível 0: correspondência ANI | O usuário é autenticado chamando de ou fornecendo um número de telefone que corresponde a uma conta registrada. Um usuário pode ser autenticado no nível 0 usando o componente pré-criado Greeting. |
Nível 1: básico | O usuário é autenticado verificando um código de senha única (OTP) enviado para seu e-mail ou número de telefone. |
Tipos de usuários compatíveis
O componente de autenticação de varejo oferece suporte a usuários com um número de telefone e e-mail registrados.
Limitações
Além das limitações comuns de componentes pré-criados, esse componente pré-criado tem as seguintes limitações:
- As OTPs serão enviadas apenas para um número de celular ou endereço de e-mail previamente registrado para o usuário. O componente não vai usar a OTP para autenticar clientes que estão ligando de um número de telefone alternativo que não está registrado na conta. Quando um usuário ligar de um número de telefone alternativo, as perguntas de segurança serão usadas para autenticar o autor da chamada.
- Este componente não criptografa nenhum dado.
Exemplos de diálogos
As caixas de diálogo de amostra abaixo demonstram cenários comuns processados por esse componente pré-criado. As caixas de diálogo de exemplo demonstram o comportamento quando o componente é chamado usando telefonia, que aciona a intent de boas-vindas padrão e a primeira resposta do agente no início da conversa.
Sucesso da autenticação de nível 0: correspondência de ANI
O usuário faz uma ligação de um número de telefone registrado em uma conta, confirma a conta e é autenticado com sucesso no nível 0.
Entrada do usuário | Resposta do agente |
---|---|
Olá. O número que você discou está vinculado à conta de João. Você está perguntando sobre o pedido de outra pessoa? Diga "sim" se esse for o caso. Caso contrário, diga "não". | |
No | |
Obrigado, John. Você foi identificado. |
Sucesso da autenticação de nível 1: OTP
O usuário faz uma chamada de um número de telefone não reconhecido. O componente coleta o número de telefone registrado do usuário e, em seguida, envia e pede para o usuário confirmar uma OTP enviada ao canal escolhido. O usuário consegue fornecer uma OTP válida e é autenticado com sucesso no Nível 1.
Entrada do usuário | Resposta do agente |
---|---|
Não foi possível encontrar este número de telefone associado a nós. Informe o número de telefone registrado. | |
O agente coleta o número de telefone usando o componente pré-criado coleta de números de telefone | |
Ótimo, terminamos de coletar o número de telefone. Por motivos de segurança, precisamos validar sua identidade, então vamos enviar um código. Prefere receber o código por telefone ou e-mail? |
|
telefone | |
Só para confirmar, você quer receber a OTP no seu smartphone? Diga sim ou não. | |
sim | |
Enviamos um código para seu telefone registrado com final 0000. Isso pode levar alguns segundos. Você pode confirmar o código? | |
123457 | |
Obrigado, John. Você foi identificado. |
Convenções de nomeação
Esse componente pré-criado usa as seguintes convenções de nomenclatura:
Engenharia de | Formato | Exemplo |
---|---|---|
Fluxo | [Nome do componente] | Autenticação de varejo |
Intent específico do componente | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_retail_authentication_incorrect_phone_number |
Tipo da entidade | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_channel_email_phone |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_retail_authentication:verify_user_details |
Parâmetros de entrada
Os parâmetros de entrada são usados para configurar determinados comportamentos do componente. Os parâmetros são usados por uma ou mais condições no fluxo para determinar como o componente vai se comportar. Os parâmetros com escopo de fluxo precisam ser definidos na página inicial do componente, conforme descrito abaixo. Os parâmetros no escopo da sessão podem ser definidos por um fluxo de chamada ou na página inicial desse componente.
Esse componente pré-criado aceita os seguintes parâmetros de entrada:
Nome do parâmetro | Descrição | Formato da entrada |
---|---|---|
$session.params.auth_level_req | Define o nível de autenticação em que o usuário final será autenticado. Os valores válidos são 0 ou 1 . |
integer |
$session.params.auth_level | (Opcional) Indica o nível de autenticação atual do usuário final. | integer |
$session.params.phone_number | (opcional) Número de telefone do usuário final. Se esse parâmetro não for fornecido, o componente coletará o número de telefone do usuário final. | string |
$flow.max_retry_phone_number | Especifica o número de novas tentativas permitidas ao coletar o número de telefone do usuário. O valor padrão é 3 . |
integer |
$flow.max_retry_otp | Especifica o número de novas tentativas permitidas ao coletar a senha única (OTP). O valor padrão é 3 . |
integer |
$flow.max_retry_otp_not_received | Especifica o número de novas tentativas permitidas quando a senha única (OTP) não é recebida. O valor padrão é 1 . |
integer |
$flow.max_retry_otp_confirm_channel | Especifica o número de novas tentativas permitidas ao coletar o canal para receber a senha única (OTP). O valor padrão é 3 . |
integer |
Para configurar os parâmetros de entrada desse componente, expanda para conferir as instruções.
- Abra o Console do Dialogflow CX.
- Escolha seu projeto do Google Cloud.
- Selecione seu agente.
- Selecione a guia Build.
- Clique no componente importado na seção Fluxos.
- Clique na página inicial na seção Páginas.
- Clique na rota true na página inicial.
- Na janela "Rota", edite os valores de Presets de parâmetros conforme necessário.
- Clique em Salvar.
Parâmetros de saída
Os parâmetros de saída são parâmetros de sessão que permanecem ativos após a saída do componente. Esses parâmetros contêm informações importantes coletadas pelo componente. Esse componente pré-criado fornece valores para os seguintes parâmetros de saída:
Nome do parâmetro | Descrição | Formato da saída |
---|---|---|
auth_level | Indica o nível de autenticação atual do usuário final. | integer |
all_recent_order_id | Esse parâmetro lista os IDs de pedido associados ao usuário autenticado, classificados pela data de posicionamento do pedido em ordem decrescente. O primeiro elemento da matriz representa o pedido mais recente. Se um usuário não tiver pedidos, o valor desse parâmetro será null . |
Lista (string) |
phone_number | Número de telefone local do usuário, sem o código do país, utilizado para identificá-lo. | string |
O e-mail registrado na conta. | string | |
user_first_name | Nome do usuário, usado para cumprimentar e confirmar a propriedade da conta. | string |
transfer_reason | Esse parâmetro indica o motivo da saída do fluxo, se não tiver sido bem-sucedido. O valor retornado é um destes:agent : o usuário final solicitou um agente humano em algum momento durante a conversa.denial_of_information : o usuário final se recusou a compartilhar informações solicitadas pelo componente.max_no_input : a conversa atingiu o número máximo de tentativas para eventos sem entrada. Consulte eventos integrados sem entrada.max_no_match : a conversa atingiu o número máximo de tentativas para eventos sem correspondência. Consulte eventos integrados sem correspondência.webhook_error : ocorreu um erro de webhook. Consulte o evento integrado webhook.error. webhook_not_found : não foi possível acessar um URL do webhook. Consulte webhook.error.not-found built-in event. |
string |
Configuração básica
Para configurar esse componente pré-criado:
- Importe o componente pré-criado.
- Defina os webhooks flexíveis fornecidos com uma configuração que descreve os serviços externos do Dialogflow. Consulte "Configuração do webhook" abaixo.
Configuração do webhook
Para usar esse componente, configure os webhooks flexíveis incluídos para recuperar as informações necessárias dos serviços externos.
Verificar detalhes do usuário
O webhook prebuilt_components_retail_authentication:verify_user_details
é
usado pelo componente para buscar detalhes da conta de usuário com base no número de telefone
fornecido.
Parâmetros de solicitação de API
Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.
Nome do parâmetro | Descrição | Formato da entrada |
---|---|---|
$session.params.phone_number | Número de telefone local do usuário, sem o código do país, utilizado para identificá-lo. | string |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.
Nome do parâmetro | Descrição | Formato da saída |
---|---|---|
O e-mail registrado na conta. | string | |
all_recent_order_id | Lista de códigos de pedidos associados ao usuário autenticado, classificados pela data de posicionamento do pedido em ordem decrescente. O primeiro elemento da matriz representa o pedido mais recente. Se um usuário não tiver pedidos, o valor desse parâmetro será null . |
Lista (string) |
user_first_name | Nome do usuário, usado para cumprimentar e confirmar a propriedade da conta. | string |
Para configurar o webhook "Verificar detalhes do usuário" para este componente, expanda para ver instruções.
- Abra o Console do Dialogflow CX.
- Escolha seu projeto do Google Cloud.
- Selecione seu agente.
- Selecione a guia Gerenciar.
- Clique em Webhooks.
- Selecione o webhook pré-build_components_retail_authentication:verify_user_details.
- Substitua o URL no campo URL do webhook do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
- Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
- Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Enviar OTP
O webhook prebuilt_components_retail_authentication:send_otp
é usado
pelo componente para enviar uma senha única (OTP) a um canal registrado
selecionado pelo usuário final.
Parâmetros de solicitação de API
Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.
Nome do parâmetro | Descrição | Formato da entrada |
---|---|---|
$session.params.phone_number | Número de telefone local do usuário, sem o código do país, utilizado para identificá-lo. | string |
$flow.channel | O canal que o usuário selecionou para receber a OTP. Os valores válidos são definidos pela entidade personalizada prebuilt_components_channel_email_phone . Por padrão, email e phone são aceitos. |
string |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.
Nome do parâmetro | Descrição | Formato da saída |
---|---|---|
generated_otp | O valor da OTP gerada e enviada ao usuário pelo canal selecionado. | string |
Para configurar o webhook "Enviar OTP" para este componente, expanda para ver instruções.
- Abra o Console do Dialogflow CX.
- Escolha seu projeto do Google Cloud.
- Selecione seu agente.
- Selecione a guia Gerenciar.
- Clique em Webhooks.
- Selecione o webhook pré-build_components_retail_authentication:send_otp.
- Substitua o URL no campo URL do webhook do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
- Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
- Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Completos
Seu agente e os webhooks dele agora precisam estar configurados e prontos para serem testados.