O component predefinido de autenticação de varejo coleta informações do usuário para autenticar o nível de autenticação necessário. Esse componente cobre requisitos de autenticação que são comuns, mas não exclusivos, para o setor de varejo. Esse componente usa a coleção de números de telefone pré-criada para coletar e validar os detalhes do usuário.
Níveis de autenticação
Diferentes níveis de autenticação exigidos por diferentes interfaces pré-criadas componentes, com níveis mais altos exigindo mais informações do usuário para autenticar o usuário. O componente de autenticação de varejo permite que os usuários façam a autenticação no nível 0 (correspondência ANI) ou 1 (básico), conforme descrito na tabela "Nível de autenticação".
Nível de autenticação | Requisitos |
---|---|
Nível 0: correspondência de ANI | O usuário é autenticado ligando de ou fornecendo um número de telefone que corresponde a uma conta registrada. É possível autenticar um usuário no nível 0 usando o componente predefinido de saudação. |
Nível 1: básico | Para fazer a autenticação, o usuário verifica um código de senha única (OTP) enviado para o e-mail ou número de telefone dele. |
Tipos de usuários aceitos
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 da seção limitações comuns de componentes pré-criados, esse componente pré-criado tem as seguintes limitações:
- As OTPs só serão enviadas para um número de celular ou endereço de e-mail anteriormente registrados para o usuário. O componente não vai usar OTP para autenticar clientes que ligam de um número de telefone alternativo não registrado na conta. Quando um usuário ligar de um número de telefone alternativo, as perguntas de segurança serão usados para autenticar o autor da chamada.
- Esse componente não criptografa dados.
Exemplos de diálogos
As caixas de diálogo de exemplo a seguir 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, o que aciona a intent de boas-vindas padrão e a primeira a resposta do agente no início da conversa.
Autenticação de nível 0 concluída: correspondência de ANI
O usuário liga 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 discado está vinculado à conta de João. Você está perguntando sobre o pedido de outra pessoa? Diga "sim" se for o caso. Caso contrário, diga "não". | |
Não | |
Obrigado, John. Sua identidade foi confirmada. |
Autenticação de nível 1 bem-sucedida: OTP
O usuário liga de um número de telefone não reconhecido. O componente coleta as informações um número de telefone registrado, envia e pede que o usuário confirme uma OTP enviada ao canal de escolha do usuário. O usuário pode fornecer uma OTP válida e tem autenticado 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 predefinido Coletar número de telefone | |
Ótimo, terminamos de coletar o número de telefone. Por motivos de segurança, precisamos validar sua identidade, por isso vamos enviar um código a você. Você 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 número de telefone registrado que termina em 0000. Isso pode levar alguns segundos. Você pode confirmar o código? | |
123457 | |
Agradeço, João. Você foi identificado. |
Convenções de nomenclatura
Esse componente pré-criado usa as seguintes convenções de nomenclatura:
Recurso | Formato | Exemplo |
---|---|---|
Fluxo | [Component Name] | Autenticação de varejo |
Intent específica 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 serão usados por uma ou mais condições dentro do para determinar como o componente deve se comportar. Os parâmetros com escopo de fluxo precisam ser definido na página inicial do componente, conforme descrito abaixo. No escopo da sessão podem ser definidos por um fluxo de chamada ou no início página desse componente.
Esse componente predefinido 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, na sigla em inglês). 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, na sigla em inglês) 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, abra 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 das Predefinições de parâmetro conforme necessário.
- Clique em Salvar.
Parâmetros de saída
Os parâmetros de saída são de sessão que permanecerão ativos depois de sair. do componente. Esses parâmetros contêm informações importantes coletadas pelo componente. Esse componente predefinido 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 códigos de pedido associados ao usuário autenticado, classificados por data de veiculação do pedido em ordem decrescente. O primeiro elemento da matriz representa a ordem 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 identificar o usuário. | string |
O e-mail registrado na conta. | string | |
user_first_name | Nome do usuário, usado para saudar e confirmar a propriedade da conta. | string |
transfer_reason | Esse parâmetro indica o motivo da saída do fluxo, se não foi 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 recusou-se a compartilhar as informações solicitadas pelo componente.max_no_input : a conversa atingiu o número máximo de novas tentativas para eventos sem entrada. Consulte Eventos integrados sem entrada.max_no_match : a conversa atingiu o número máximo de novas 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 : um URL de webhook não pode ser acessado. Consulte Webhook.error.not-found. |
string |
Configuração básica
Para configurar esse componente pré-criado:
- Importe o componente pré-criado.
- Configure os webhooks flexíveis fornecidos com a configuração que descreve seus serviços externos. Consulte a configuração de webhook abaixo.
Configuração do webhook
Para usar esse componente, você precisa configurar os webhooks flexíveis incluídos para extrair as informações necessárias dos seus serviços externos.
Verificar os detalhes do usuário
O webhook prebuilt_components_retail_authentication:verify_user_details
é
usado pelo componente para buscar detalhes da conta do 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, usado para identificar o usuário. | string |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API para serem usados 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 em ordem decrescente pela data de realização do pedido. 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 saudar e confirmar a propriedade da conta. | string |
Para configurar o webhook de verificação de detalhes do usuário para esse componente, abra as 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 prebuilt_components_retail_authentication:verify_user_details.
- Substitua o URL no campo URL do webhook dos agentes de conversação (Dialogflow CX) 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 seu webhook.
- Revise e atualize a Configuração de resposta para extrair campos específicos do objeto. resposta. Não modifique os nomes dos parâmetros, porque eles são necessários para que o componente acesse 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 enviar uma senha única (OTP) a um canal registrado
selecionados 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, usado para identificar o usuário. | string |
$flow.channel | O canal que o usuário selecionou para receber o 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 para serem usados pelo componente.
Nome do parâmetro | Descrição | Formato da saída |
---|---|---|
generated_otp | O valor da OTP gerada e enviada ao usuário por meio do canal selecionado. | string |
Para configurar o webhook de envio de OTP para esse componente, abra as 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 prebuilt_components_retail_authentication:send_otp.
- Substitua o URL no campo Webhook URL dos Agentes de conversa (Dialogflow CX) pelo endpoint do serviço com que você quer fazer a integração. 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 seu webhook.
- Revise e atualize a Configuração de resposta para extrair campos específicos do objeto. resposta. Não modifique os nomes dos parâmetros, porque eles são necessários para que o componente acesse os valores de campo retornados.
- Revise e atualize as configurações de autenticação conforme necessário.
- Clique em Salvar.
Concluído
Seu agente e os respectivos webhooks devem estar configurados e prontos para teste.