Componente predefinito di autenticazione per la vendita al dettaglio

Il componente predefinito di autenticazione per la vendita al dettaglio raccoglie le informazioni dell'utente per autenticarlo al livello di autenticazione richiesto. Questo componente riguarda i requisiti di autenticazione comuni, ma non esclusivi, del settore della vendita al dettaglio. Questo componente utilizza il componente predefinito Raccolta di numeri di telefono per raccogliere e convalidare i dettagli dell'utente.

Livelli di autenticazione

Esistono più livelli di autenticazione richiesti da diversi componenti predefiniti, con livelli più elevati che richiedono più informazioni sull'utente per autenticarlo. Il componente di autenticazione per la vendita al dettaglio consente agli utenti di autenticarsi al livello 0 (corrispondenza ANI) o al livello 1 (di base) come descritto nella tabella Livello di autenticazione.

Livello di autenticazione Requisiti
Livello 0: corrispondenza ANI L'utente viene autenticato chiamando da o fornendo un numero di telefono corrispondente a un account registrato.

Un utente può essere autenticato al livello 0 utilizzando il componente predefinito di saluto.
Livello 1: di base L'utente viene autenticato verificando un codice OTP (password monouso) inviato al suo indirizzo email o numero di telefono.

Tipi di utenti supportati

Il componente di autenticazione per la vendita al dettaglio fornisce assistenza agli utenti con un numero di telefono e un indirizzo email registrati.

Limitazioni

Oltre alle limitazioni comuni dei componenti predefiniti, questo componente predefinito presenta le seguenti limitazioni:

  • Le OTP verranno inviate solo a un numero di cellulare o a un indirizzo email precedentemente registrato per l'utente. Il componente non utilizzerà l'OTP per autenticare i clienti che chiamano da un numero di telefono alternativo non registrato nel loro account. Quando un utente chiama da un numero di telefono alternativo, per autenticare il chiamante vengono utilizzate domande di sicurezza.
  • Questo componente non cripta alcun dato.

Dialoghi di esempio

Le seguenti finestre di dialogo di esempio mostrano scenari comuni gestiti da questo componente predefinito. Le finestre di dialogo di esempio mostrano il comportamento quando il componente viene chiamato tramite la telefonia, il che attiva l'intenzione di benvenuto predefinita e la prima risposta dell'agente all'inizio della conversazione.

Autenticazione di livello 0 riuscita: corrispondenza ANI

L'utente chiama da un numero di telefono registrato a un account esistente, conferma il suo account e viene autenticato correttamente al livello 0.

Input utente Risposta dell'agente
Ciao. Il numero che hai chiamato è collegato all\'account di Giovanni. Stai chiedendo informazioni sull'ordine di un'altra persona? Di' sì se è così, altrimenti di' no.
No
Grazie John. La tua identità è stata identificata.

Autenticazione di livello 1 riuscita: OTP

L'utente chiama da un numero di telefono non riconosciuto. Il componente raccoglie il numero di telefono registrato dell'utente, quindi invia e chiede all'utente di confermare una OTP inviata al canale scelto dall'utente. L'utente è in grado di fornire un'OTP valida e si è autenticato correttamente al livello 1.

Input utente Risposta dell'agente
Non siamo riusciti a trovare questo numero di telefono associato a noi. Fornisci il numero di telefono registrato.
L'agente raccoglie il numero di telefono utilizzando il componente predefinito Raccolta numeri di telefono
Ottimo, abbiamo finito di raccogliere il numero di telefono.

Per motivi di sicurezza, dobbiamo convalidare la tua identità, quindi ti invieremo un codice. Preferisci ricevere il codice via telefono o via email?
telefono
Giusto per confermare, vuoi ricevere l\'OTP sul tuo smartphone? Di' sì o no.
Abbiamo inviato un codice al tuo numero di telefono registrato che termina con 0000. L'operazione potrebbe richiedere alcuni secondi. Puoi confermare il codice?
123457
Grazie John. La tua identità è stata identificata.

Convenzioni di denominazione

Questo componente predefinito utilizza le seguenti convenzioni di denominazione:

Funzionalità Formato Esempio
Flusso [Component Name] Autenticazione per la vendita al dettaglio
Intent specifico per componente prebuilt_components_[component_name]_[intent_name] prebuilt_components_retail_authentication_incorrect_phone_number
Tipo di entità 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

Parametri di input

I parametri di input sono utilizzati per configurare determinati comportamenti del componente. I parametri verranno utilizzati da una o più condizioni all'interno del flusso per determinare il comportamento del componente. I parametri basati sul flusso devono essere impostati nella pagina iniziale del componente come descritto di seguito. I parametri basati sulla sessione possono essere impostati da un flusso di chiamate o nella pagina iniziale di questo componente.

Questo componente predefinito accetta i seguenti parametri di input:

Nome parametro Descrizione Formato di input
$session.params.auth_level_req Definisce il livello di autenticazione a cui verrà autenticato l'utente finale. I valori validi sono 0 o 1. integer
$session.params.auth_level (Facoltativo) Indica il livello di autenticazione corrente dell'utente finale. integer
$session.params.phone_number (Facoltativo) Numero di telefono dell'utente finale. Se questo parametro non viene fornito, il componente raccoglierà il numero di telefono dall'utente finale. string
$flow.max_retry_phone_number Specifica il numero di tentativi consentiti per la raccolta del numero di telefono dell'utente. Il valore predefinito è 3. integer
$flow.max_retry_otp Specifica il numero di tentativi consentiti per la raccolta della password monouso (OTP). Il valore predefinito è 3. integer
$flow.max_retry_otp_not_received Specifica il numero di tentativi consentiti quando la password monouso (OTP) non viene ricevuta. Il valore predefinito è 1. integer
$flow.max_retry_otp_confirm_channel Specifica il numero di tentativi consentiti durante la raccolta del canale per ricevere la password monouso (OTP). Il valore predefinito è 3. integer

Per configurare i parametri di input per questo componente, espandi la sezione per visualizzare le istruzioni.

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Crea.
  5. Fai clic sul componente importato nella sezione Fluidi.
  6. Fai clic sulla home page nella sezione Pagine.
  7. Fai clic su true nella pagina iniziale.
  8. Nella finestra Percorso, modifica i valori di Preimpostazioni dei parametri in base alle esigenze.
  9. Fai clic su Salva.

Parametri di output

I parametri di output sono parametri di sessione che rimarranno attivi dopo l'uscita dal componente. Questi parametri contengono informazioni importanti raccolte dal componente. Questo componente predefinito fornisce valori per i seguenti parametri di output:

Nome parametro Descrizione Formato di output
auth_level Indica il livello di autenticazione corrente dell'utente finale. integer
all_recent_order_id Questo parametro elenca gli ID ordine associati all'utente autenticato, ordinati in ordine decrescente in base alla data di inserimento dell'ordine. Il primo elemento dell'array rappresenta l'ordine più recente. Se un utente non ha ordini, il valore di questo parametro è null. Elenco (stringa)
phone_number Il numero di telefono locale dell'utente, senza il codice paese, utilizzato per identificarlo. string
email L'indirizzo email registrato con l'account. string
user_first_name Il nome dell'utente, utilizzato per salutare e confermare la proprietà dell'account. string
transfer_reason Questo parametro indica il motivo dell'uscita dal flusso, se non è andato a buon fine. Il valore restituito è uno dei seguenti:

agent: l'utente finale ha richiesto un agente umano in un determinato momento durante la conversazione.

denial_of_information: l'utente finale ha rifiutato di condividere le informazioni richieste dal componente.

max_no_input: la conversazione ha raggiunto il numero massimo di tentativi per gli eventi senza input. Consulta gli eventi integrati senza input.

max_no_match: la conversazione ha raggiunto il numero massimo di tentativi per gli eventi senza corrispondenza. Consulta gli eventi integrati senza corrispondenza.

webhook_error: si è verificato un errore relativo all'webhook. Consulta l'evento integrato webhook.error.

webhook_not_found: un URL webhook non era raggiungibile. Vedi l'evento integrato webhook.error.not-found.
string

Impostazione di base

Per configurare questo componente predefinito:

  1. Importa il componente predefinito.
  2. Configura i webhook flessibili forniti con la configurazione che descrive i tuoi servizi esterni. Consulta la sezione Configurazione dei webhook di seguito.

Configurazione webhook

Per utilizzare questo componente, dovrai configurare i webhook flessibili inclusi per recuperare le informazioni necessarie dai tuoi servizi esterni.

Verifica i dettagli dell'utente

Il webhook prebuilt_components_retail_authentication:verify_user_details viene utilizzato dal componente per recuperare i dettagli dell'account utente in base al numero di telefono fornito.

Parametri di richiesta API

I seguenti parametri vengono forniti dal componente come input alla richiesta dell'API.

Nome parametro Descrizione Formato di input
$session.params.phone_number Il numero di telefono locale dell'utente, senza il codice paese, utilizzato per identificarlo. string

Parametri di risposta dell'API

I seguenti parametri vengono estratti dalla risposta dell'API per essere utilizzati dal componente.

Nome parametro Descrizione Formato di output
email L'indirizzo email registrato con l'account. string
all_recent_order_id Elenco degli ID ordine associati all'utente autenticato, ordinati in ordine decrescente in base alla data di inserimento dell'ordine. Il primo elemento dell'array rappresenta l'ordine più recente. Se un utente non ha ordini, il valore di questo parametro è null. Elenco (stringa)
user_first_name Il nome dell'utente, utilizzato per salutare e confermare la proprietà dell'account. string

Per configurare l'webhook Verifica i dettagli utente per questo componente, espandi la sezione per visualizzare le istruzioni.

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Webhook.
  6. Seleziona l'webhook prebuilt_components_retail_authentication:verify_user_details.
  7. Sostituisci l'URL nel campo URL webhook di Conversational Agents (Dialogflow CX) con l'endpoint del servizio con cui vuoi eseguire l'integrazione. Seleziona il Metodo appropriato nel menu a discesa.
  8. Esamina e aggiorna il corpo della richiesta per creare il formato di richiesta corretto per l'webhook.
  9. Controlla e aggiorna la configurazione della risposta per estrarre campi specifici dalla risposta dell'webhook. Non modificare i nomi dei parametri, poiché sono richiesti dal componente per accedere ai valori dei campi restituiti.
  10. Esamina e aggiorna le impostazioni di Autenticazione in base alle esigenze.
  11. Fai clic su Salva.

Invia OTP

Il webhook prebuilt_components_retail_authentication:send_otp viene utilizzato dal componente per inviare una password monouso (OTP) a un canale registrato selezionato dall'utente finale.

Parametri di richiesta API

I seguenti parametri vengono forniti dal componente come input alla richiesta dell'API.

Nome parametro Descrizione Formato di input
$session.params.phone_number Il numero di telefono locale dell'utente, senza il codice paese, utilizzato per identificarlo. string
$flow.channel Il canale su cui l'utente ha selezionato di ricevere l'OTP. I valori validi sono definiti dall'entità personalizzata prebuilt_components_channel_email_phone. Per impostazione predefinita, sono supportati email e phone. string

Parametri di risposta dell'API

I seguenti parametri vengono estratti dalla risposta dell'API per essere utilizzati dal componente.

Nome parametro Descrizione Formato di output
generated_otp Il valore dell'OTP generato e inviato all'utente utilizzando il canale selezionato. string

Per configurare l'webhook Invia OTP per questo componente, espandi la sezione per visualizzare le istruzioni.

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Webhook.
  6. Seleziona l'webhook prebuilt_components_retail_authentication:send_otp.
  7. Sostituisci l'URL nel campo URL webhook di Conversational Agents (Dialogflow CX) con l'endpoint del servizio con cui vuoi eseguire l'integrazione. Seleziona il Metodo appropriato nel menu a discesa.
  8. Esamina e aggiorna il corpo della richiesta per creare il formato di richiesta corretto per l'webhook.
  9. Controlla e aggiorna la configurazione della risposta per estrarre campi specifici dalla risposta dell'webhook. Non modificare i nomi dei parametri, poiché sono richiesti dal componente per accedere ai valori dei campi restituiti.
  10. Esamina e aggiorna le impostazioni di Autenticazione in base alle esigenze.
  11. Fai clic su Salva.

Completa

L'agente e i relativi webhook dovrebbero essere configurati e pronti per il test.