O componente pré-criado de autenticação de retalho recolhe informações do utilizador para o autenticar ao nível de autenticação necessário. Este componente abrange os requisitos de autenticação que são comuns, mas não exclusivos, à indústria de retalho. Este componente usa o componente predefinido Recolha de números de telefone para recolher e validar os detalhes do utilizador.
Níveis de autenticação
Existem vários níveis de autenticação exigidos por diferentes componentes pré-criados, com níveis mais elevados que requerem mais informações do utilizador para autenticar o utilizador. O componente de autenticação de retalho permite que os utilizadores se autentiquem no nível 0 (correspondência do ANI) ou no nível 1 (básico), conforme descrito na tabela de nível de autenticação.
Nível de autenticação | Requisitos |
---|---|
Nível 0: correspondência do ANI | O utilizador é autenticado através de uma chamada ou da indicação de um número de telefone que corresponde a uma conta registada. É possível autenticar um utilizador no nível 0 através do componente pré-criado Greeting. |
Nível 1: básico | O utilizador é autenticado através da validação de um código de palavra-passe de utilização única (CSUU) enviado para o respetivo email ou número de telefone. |
Tipos de utilizadores suportados
O componente de autenticação de retalho oferece apoio técnico aos utilizadores com um número de telefone e um email registados.
Limitações
Além das limitações comuns dos componentes pré-criados, este componente pré-criado tem as seguintes limitações:
- As PUUs só são enviadas para um número de telemóvel ou um endereço de email previamente registado para o utilizador. O componente não usa a PUU para autenticar clientes que ligam a partir de um número de telefone alternativo que não está registado na respetiva conta. Quando um utilizador liga a partir de um número de telefone alternativo, as perguntas de segurança são usadas para autenticar o autor da chamada.
- Este componente não encripta dados.
Exemplos de caixas de diálogo
Os exemplos de caixas de diálogo seguintes demonstram cenários comuns processados por este componente pré-criado. Os diálogos de exemplo demonstram o comportamento quando o componente é chamado através da telefonia, o que aciona a intenção de boas-vindas predefinida e a primeira resposta do agente no início da conversa.
Autenticação de nível 0 bem-sucedida: ANI correspondente
O utilizador liga a partir de um número de telefone registado numa conta existente, confirma a respetiva conta e é autenticado com êxito no Nível 0.
Introdução do utilizador | Resposta do agente |
---|---|
Olá, o número que ligou está associado à conta de João. Tem dúvidas sobre a encomenda de outra pessoa? Diga sim se for o caso, caso contrário, diga não. | |
Não | |
Obrigado, João. A sua identidade foi validada com êxito. |
Êxito da autenticação de nível 1: PUU
O utilizador liga a partir de um número de telefone não reconhecido. O componente recolhe o número de telefone registado do utilizador e, em seguida, envia e pede ao utilizador para confirmar uma PUU enviada para o canal à escolha do utilizador. O utilizador consegue fornecer uma PUU válida e é autenticado com êxito no nível 1.
Introdução do utilizador | Resposta do agente |
---|---|
Não foi possível encontrar este número de telefone associado a nós. Indique-nos o número de telefone registado. | |
O agente recolhe o número de telefone através do componente pré-criado Recolha do número de telefone | |
Ótimo, terminámos de recolher o número de telefone. Por motivos de segurança, temos de validar a sua identidade, pelo que lhe vamos enviar um código. Prefere receber o código por telefone ou por email? |
|
telemóvel | |
Só para confirmar, quer receber a PUU no seu telemóvel? Diga sim ou não. | |
sim | |
Enviámos um código para o seu número de telefone registado que termina em 0000. Pode demorar alguns segundos. Pode confirmar o código? | |
123457 | |
Obrigado, João. A sua identidade foi validada com êxito. |
Convenções de nomenclatura
Este componente pré-criado usa as seguintes convenções de nomenclatura:
Funcionalidade | Formato | Exemplo |
---|---|---|
Flow | [Component Name] | Autenticação de retalho |
Intenção específica do componente | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_retail_authentication_incorrect_phone_number |
Tipo de 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 parâmetros usados para configurar determinados comportamentos do componente. Os parâmetros vão ser usados por uma ou mais condições no fluxo para determinar o comportamento do componente. Os parâmetros ao nível do fluxo têm de ser definidos na página inicial do componente, conforme descrito abaixo. Os parâmetros ao nível da sessão podem ser definidos por um fluxo de chamadas ou na página de início deste componente.
Este componente pré-criado aceita os seguintes parâmetros de entrada:
Nome do parâmetro | Descrição | Formato de entrada |
---|---|---|
$session.params.auth_level_req | Define o nível de autenticação para o qual o utilizador final vai ser autenticado. Os valores válidos são 0 ou 1 . |
número inteiro |
$session.params.auth_level | (Opcional) Indica o nível de autenticação atual do utilizador final. | número inteiro |
$session.params.phone_number | (opcional) Número de telefone do utilizador final. Se este parâmetro não for fornecido, o componente recolhe o número de telefone do utilizador final. | de string |
$flow.max_retry_phone_number | Especifica o número de novas tentativas permitidas ao recolher o número de telefone do utilizador. O valor predefinido é 3 . |
número inteiro |
$flow.max_retry_otp | Especifica o número de tentativas permitidas ao recolher a palavra-passe de utilização única (PUU). O valor predefinido é 3 . |
número inteiro |
$flow.max_retry_otp_not_received | Especifica o número de novas tentativas permitidas quando a palavra-passe de utilização única (PUU) não é recebida. O valor predefinido é 1 . |
número inteiro |
$flow.max_retry_otp_confirm_channel | Especifica o número de novas tentativas permitidas ao recolher o canal para receber a palavra-passe de utilização única (PUU). O valor predefinido é 3 . |
número inteiro |
Para configurar os parâmetros de entrada deste componente, expanda para ver as instruções.
- Abra a consola do Dialogflow CX.
- Escolha o seu projeto do Google Cloud.
- Selecione o seu agente.
- Selecione o separador Criar.
- Clique no componente importado na secção Fluxos.
- Clique na página inicial na secção Páginas.
- Clique no percurso verdadeiro na página inicial.
- Na janela Route, edite os valores de Predefinições de parâmetros conforme necessário.
- Clique em Guardar.
Parâmetros de saída
Os parâmetros de saída são parâmetros de sessão que permanecem ativos após sair do componente. Estes parâmetros contêm informações importantes recolhidas pelo componente. Este componente pré-criado fornece valores para os seguintes parâmetros de saída:
Nome do parâmetro | Descrição | Formato de saída |
---|---|---|
auth_level | Indica o nível de autenticação atual do utilizador final. | número inteiro |
all_recent_order_id | Este parâmetro apresenta os IDs de encomendas associados ao utilizador autenticado, ordenados pela data de colocação da encomenda por ordem descendente. O primeiro elemento da matriz representa a encomenda mais recente. Se um utilizador não tiver encomendas, o valor deste parâmetro é null . |
Lista (string) |
phone_number | Número de telefone local do utilizador, sem o indicativo do país, usado para identificar o utilizador. | de string |
O email registado na conta. | de string | |
user_first_name | Nome próprio do utilizador, usado para cumprimentar e confirmar a propriedade da conta. | de string |
transfer_reason | Este parâmetro indica o motivo pelo qual o fluxo foi terminado, se não tiver sido bem-sucedido. O valor devolvido é um dos seguintes:agent : o utilizador final pediu um agente humano em algum momento durante a conversa.denial_of_information : o utilizador final recusou-se a partilhar informações pedidas pelo componente.max_no_input : a conversa atingiu o número máximo de novas tentativas para eventos sem introdução. Consulte os eventos incorporados sem entrada.max_no_match : a conversa atingiu o número máximo de novas tentativas para eventos sem correspondência. Consulte os eventos incorporados sem correspondência.webhook_error : ocorreu um erro de webhook. Veja o evento incorporado webhook.error. webhook_not_found : não foi possível aceder a um URL de webhook. Veja o evento incorporado webhook.error.not-found. |
de string |
Configuração básica
Para configurar este componente pré-criado:
- Importe o componente pré-criado.
- Configure os webhooks flexíveis fornecidos com a configuração que descreve os seus serviços externos. Consulte a configuração do webhook abaixo.
Configuração do webhook
Para usar este componente, tem de configurar os webhooks flexíveis incluídos para obter as informações necessárias dos seus serviços externos.
Valide os detalhes do utilizador
O webhook prebuilt_components_retail_authentication:verify_user_details
é usado pelo componente para obter detalhes da conta do utilizador com base no número de telefone fornecido.
Parâmetros de pedidos de API
Os seguintes parâmetros são fornecidos pelo componente como entradas para o pedido da API.
Nome do parâmetro | Descrição | Formato de entrada |
---|---|---|
$session.params.phone_number | Número de telefone local do utilizador, sem o indicativo do país, usado para identificar o utilizador. | de string |
Parâmetros de resposta da API
Os seguintes parâmetros são extraídos da resposta da API para serem usados pelo componente.
Nome do parâmetro | Descrição | Formato de saída |
---|---|---|
O email registado na conta. | de string | |
all_recent_order_id | Lista de IDs de encomendas associados ao utilizador autenticado, ordenada por data de colocação da encomenda por ordem descendente. O primeiro elemento da matriz representa a encomenda mais recente. Se um utilizador não tiver encomendas, o valor deste parâmetro é null . |
Lista (string) |
user_first_name | Nome próprio do utilizador, usado para cumprimentar e confirmar a propriedade da conta. | de string |
Para configurar o webhook Verify user details (Validar detalhes do utilizador) para este componente, expanda para ver as instruções.
- Abra a consola do Dialogflow CX.
- Escolha o seu projeto do Google Cloud.
- Selecione o seu agente.
- Selecione o separador Gerir.
- Clique em Webhooks.
- Selecione o webhook prebuilt_components_retail_authentication:verify_user_details.
- Substitua o URL no campo URL do webhook dos agentes conversacionais (Dialogflow CX) pelo ponto final do serviço com o qual quer fazer a integração. Selecione o Método adequado no menu pendente.
- Reveja e atualize o corpo do pedido para formar o formato de pedido adequado para o seu webhook.
- Reveja e atualize a configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, uma vez que são necessários para que o componente aceda aos valores dos campos devolvidos.
- Reveja e atualize as definições de autenticação, conforme necessário.
- Clique em Guardar.
Enviar PUU
O webhook prebuilt_components_retail_authentication:send_otp
é usado
pelo componente para enviar uma palavra-passe de utilização única (PUU) para um canal registado
selecionado pelo utilizador final.
Parâmetros de pedidos de API
Os seguintes parâmetros são fornecidos pelo componente como entradas para o pedido da API.
Nome do parâmetro | Descrição | Formato de entrada |
---|---|---|
$session.params.phone_number | Número de telefone local do utilizador, sem o indicativo do país, usado para identificar o utilizador. | de string |
$flow.channel | O canal que o utilizador selecionou para receber o OTP. Os valores válidos são definidos pela entidade personalizada prebuilt_components_channel_email_phone . Por predefinição, são suportados os formatos email e phone . |
de string |
Parâmetros de resposta da API
Os seguintes parâmetros são extraídos da resposta da API para serem usados pelo componente.
Nome do parâmetro | Descrição | Formato de saída |
---|---|---|
generated_otp | O valor do OTP gerado e enviado ao utilizador através do canal selecionado. | de string |
Para configurar o webhook Enviar OTP para este componente, expanda para ver as instruções.
- Abra a consola do Dialogflow CX.
- Escolha o seu projeto do Google Cloud.
- Selecione o seu agente.
- Selecione o separador Gerir.
- Clique em Webhooks.
- Selecione o webhook prebuilt_components_retail_authentication:send_otp.
- Substitua o URL no campo URL do webhook dos agentes conversacionais (Dialogflow CX) pelo ponto final do serviço com o qual quer fazer a integração. Selecione o Método adequado no menu pendente.
- Reveja e atualize o corpo do pedido para formar o formato de pedido adequado para o seu webhook.
- Reveja e atualize a configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, uma vez que são necessários para que o componente aceda aos valores dos campos devolvidos.
- Reveja e atualize as definições de autenticação, conforme necessário.
- Clique em Guardar.
Concluído
O seu agente e os respetivos webhooks já devem estar configurados e prontos para teste.