Il componente predefinito di autenticazione per la vendita al dettaglio raccoglie informazioni dall'utente per autenticarlo al livello di autenticazione richiesto. Questo componente copre 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
I diversi componenti predefiniti richiedono più livelli di autenticazione, 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 dei livelli di autenticazione.
| Livello di autenticazione | Requisiti |
|---|---|
| Livello 0: corrispondenza ANI | L'utente viene autenticato chiamando da un numero di telefono o fornendo un numero di telefono che corrisponde a un account registrato. Un utente può essere autenticato al Livello 0 utilizzando il componente predefinito Saluto. |
| Livello 1: Base | L'utente viene autenticato verificando un codice di password monouso (OTP) 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, verranno utilizzate domande di sicurezza per autenticare il chiamante.
- Questo componente non cripta i dati.
Esempi di dialoghi
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 telefonia, il che attiva l'intent di benvenuto predefinito 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 su un account esistente, conferma il proprio account e viene autenticato correttamente al Livello 0.
| Input utente | Risposta dell'agente |
|---|---|
| Ciao, il numero che hai composto è collegato all'account di Giovanni. Stai richiedendo informazioni sull'ordine di un'altra persona? Rispondi "Sì" se è così, altrimenti rispondi "No". | |
| No | |
| Grazie, John. La tua identità è stata verificata. |
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 valido e viene autenticato correttamente al Livello 1.
| Input utente | Risposta dell'agente |
|---|---|
| Non siamo riusciti a trovare questo numero di telefono associato a noi. Ti invitiamo a fornirci il numero di telefono registrato. | |
| L'agente raccoglie il numero di telefono utilizzando il componente predefinito Raccolta del numero 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 conferma, vuoi ricevere la OTP sul tuo smartphone? Rispondi "Sì" o "No". | |
| sì | |
| 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 verificata. |
Convenzioni di denominazione
Questo componente predefinito utilizza le seguenti convenzioni di denominazione:
| Funzionalità | Formato | Esempio |
|---|---|---|
| Flow | [Component Name] | Autenticazione per la vendita al dettaglio |
| Component Specific Intent | 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 vengono 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 con ambito di flusso devono essere impostati nella pagina iniziale del componente, come descritto di seguito. I parametri con ambito sessione possono essere impostati da un flusso chiamante o nella pagina di avvio 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 con 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 nuovi 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 per 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.
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Build.
- Fai clic sul componente importato nella sezione Flussi.
- Fai clic sulla pagina iniziale nella sezione Pagine.
- Fai clic sul percorso true nella pagina iniziale.
- Nella finestra Route (Percorso), modifica i valori di Parameter Presets (Preset dei parametri) in base alle tue esigenze.
- 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 i valori per i seguenti parametri di output:
| Nome parametro | Descrizione | Formato di output |
|---|---|---|
| auth_level | Indica il livello di autenticazione attuale dell'utente finale. | integer |
| all_recent_order_id | Questo parametro elenca gli ID ordine associati all'utente autenticato, ordinati in base alla data di invio dell'ordine in ordine decrescente. 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 prefisso internazionale, utilizzato per identificare l'utente. | string |
| L'indirizzo email registrato con l'account. | string | |
| user_first_name | Nome dell'utente, utilizzato per salutare e confermare la proprietà dell'account. | string |
| transfer_reason | Questo parametro indica il motivo per cui il flusso è stato chiuso, se non è andato a buon fine. Il valore restituito è uno dei seguenti:agent: l'utente finale ha richiesto un agente umano in un momento della 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 nuovi tentativi per gli eventi di assenza di input. Consulta gli eventi integrati di assenza di input.max_no_match: la conversazione ha raggiunto il numero massimo di nuovi tentativi per gli eventi di mancata corrispondenza. Consulta gli eventi integrati no-match.webhook_error: si è verificato un errore del webhook. Consulta l'evento integrato webhook.error. webhook_not_found: un URL webhook non era raggiungibile. Consulta l'evento integrato webhook.error.not-found. |
string |
Impostazione di base
Per configurare questo componente predefinito:
- Importa il componente predefinito.
- Configura i webhook flessibili forniti con la configurazione che descrive i tuoi servizi esterni. Consulta la sezione Configurazione dei webhook di seguito.
Configurazione del webhook
Per utilizzare questo componente, devi 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 per la richiesta API.
| Nome parametro | Descrizione | Formato di input |
|---|---|---|
| $session.params.phone_number | Il numero di telefono locale dell'utente, senza il prefisso internazionale, utilizzato per identificare l'utente. | 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 |
|---|---|---|
| L'indirizzo email registrato con l'account. | string | |
| all_recent_order_id | Elenco degli ID ordine associati all'utente autenticato, ordinati in base alla data di invio dell'ordine in ordine decrescente. 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 | Nome dell'utente, utilizzato per salutare e confermare la proprietà dell'account. | string |
Per configurare il webhook Verifica i dettagli dell'utente per questo componente, espandi per visualizzare le istruzioni.
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Webhook.
- Seleziona il webhook prebuilt_components_retail_authentication:verify_user_details.
- Sostituisci l'URL nel campo URL webhook di Dialogflow CX con l'endpoint del servizio con cui vuoi eseguire l'integrazione. Seleziona il metodo appropriato nel menu a discesa.
- Esamina e aggiorna il corpo della richiesta per formare il formato di richiesta appropriato per il webhook.
- Esamina e aggiorna la configurazione della risposta per estrarre campi specifici dalla risposta del webhook. Non modificare i nomi dei parametri, poiché sono richiesti dal componente per accedere ai valori dei campi restituiti.
- Esamina e aggiorna le impostazioni di autenticazione in base alle esigenze.
- 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 per la richiesta API.
| Nome parametro | Descrizione | Formato di input |
|---|---|---|
| $session.params.phone_number | Il numero di telefono locale dell'utente, senza il prefisso internazionale, utilizzato per identificare l'utente. | string |
| $flow.channel | Il canale selezionato dall'utente per ricevere la 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 della OTP generata e inviata all'utente tramite il canale selezionato. | string |
Per configurare il webhook Invia OTP per questo componente, espandi le istruzioni.
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Webhook.
- Seleziona il webhook prebuilt_components_retail_authentication:send_otp.
- Sostituisci l'URL nel campo URL webhook di Dialogflow CX con l'endpoint del servizio con cui vuoi eseguire l'integrazione. Seleziona il metodo appropriato nel menu a discesa.
- Esamina e aggiorna il corpo della richiesta per formare il formato di richiesta appropriato per il webhook.
- Esamina e aggiorna la configurazione della risposta per estrarre campi specifici dalla risposta del webhook. Non modificare i nomi dei parametri, poiché sono richiesti dal componente per accedere ai valori dei campi restituiti.
- Esamina e aggiorna le impostazioni di autenticazione in base alle esigenze.
- Fai clic su Salva.
Completa
Ora l'agente e i relativi webhook dovrebbero essere configurati e pronti per essere testati.