Questa integrazione vocale utilizza l'integrazione Twilio Open CTI per portare un call center Twilio Flex nella tua istanza Salesforce.
Agent Assist utilizza lo stream multimediale della chiamata Twilio Flex per fornire suggerimenti agli agenti nella console di servizio Salesforce Lightning.
Prima di iniziare
Per integrare i moduli dell'interfaccia utente di Assistente agente con Salesforce, devi accedere alle seguenti risorse:
- Node.js Google ha testato e consiglia Node.js 18.20.4 con questa integrazione. Esistono problemi di compatibilità noti con Node.js 20.18.0. Per istruzioni su come installare versioni specifiche di Node.js, consulta nvm.
- Salesforce CLI. Installa utilizzando il seguente comando del terminale:
(sudo) npm install -g @salesforce/cli
- gcloud CLI
Installa il comando
gcloud
come indicato e autenticati utilizzando il seguente codice:gcloud auth login
- UI Salesforce
- Accedi all'URL dell'istanza o a login.salesforce.com e prendi nota di quanto segue:
- L'URL "Il mio dominio" di Salesforce. Per trovarlo, vai alla barra dei menu > menu Configurazione, quindi fai clic su Configurazione. Inserisci una ricerca Ricerca rapida per "Il mio dominio". Il nome di dominio è nel seguente formato: MY-DOMAIN-NAME.develop.my.salesforce.com.
- Il tuo ID organizzazione Salesforce. Per trovarlo, vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione. Inserisci una ricerca Quick Find per "Informazioni sull'azienda".
- Accedi all'URL dell'istanza o a login.salesforce.com e prendi nota di quanto segue:
- Backend di integrazione di Agent Assist
- Segui le istruzioni per configurare l'integrazione.
- Prima di eseguire lo script di deployment, configura le seguenti variabili di ambiente con
deploy.sh
o in un file.env
nella radice del progetto:AUTH_OPTION
: imposta questo valore suSalesforceLWC
SALESFORCE_DOMAIN
: un nome di dominio come:YOUR_SUBDOMAIN.develop.lightning.force.com
. Hai annotato questo valore nel prerequisito della UI di Salesforce. Tieni presente che non devi includere https://.SALESFORCE_ORGANIZATION_ID
: hai annotato questo valore nel prerequisito dell'interfaccia utente di Salesforce.
Passaggio 1: configura Twilio Flex
Twilio Flex funge da softphone in questa integrazione. Puoi accedere alla console Twilio per configurare un account Flex. Visita la pagina di configurazione di Twilio per istruzioni dettagliate su come creare un account Flex.
Installare il componente aggiuntivo del connettore SIPREC
Il componente aggiuntivo connettore SIPREC consente al tuo account Twilio Flex di creare fork SIPREC dei flussi multimediali delle chiamate vocali per Agent Assist. Segui questi passaggi per installare il componente aggiuntivo del connettore SIPREC.
- Vai a Home di Twilio > Marketplace > Catalogo > Twilio > Siprec Connector.
- Fai clic su Installa > la casella di controllo Accettazione dei termini e delle condizioni > Installa.
- Nella scheda Configura, configura il plug-in nel seguente modo:
- Nome univoco:
SipRec1
- Server di registrazione delle sessioni:
sip:+<GTP-provisioned-phone-number>@216.239.36.145:5672;transport=tls;secure=true;edge=umatilla
- Collabora con il tuo rappresentante di Google per eseguire il provisioning del numero GTP utilizzando la documentazione di panoramica dell'integrazione della telefonia, che fornisce maggiori dettagli sulla procedura. Puoi ignorare i passaggi di configurazione e convalida dell'SBC perché sono già stati completati per Twilio Siprec Connector.
- Nome univoco:
- Vai a Home di Twilio > Funzioni e asset.
- Se Funzioni e asset non è visibile nella barra laterale, bloccalo da Esplora prodotti.
- Fai clic su Crea servizio.
- Assegna al nuovo servizio il nome
ui-connector-auth
. - Nell'editor visualizzato, fai clic su Aggiungi + > Aggiungi funzione.
- Assegna alla funzione il nome
conversation-name
. - Fai clic su e imposta la visibilità della funzione su Pubblico.
- Copia e incolla l'intero contenuto di
ui-connector-auth.js
dal repository GitHub nell'editor. - Fai clic su Salva.
- Fai clic su Esegui il deployment di tutto.
Configurare l'IVR con Flex Studio
La IVR consiste nel configurare un flusso di chiamate programmatico con Studio di Twilio per eseguire il fork SIPREC dello stream multimediale in Agent Assist. Inoltre, esegue un post HTTP per condividere il numero di telefono e l'ID conversazione con Agent Assist. Segui questi passaggi per configurare l'IVR con Flex Studio.
- Vai alla console Twilio.
- Fai clic su Sviluppa > Numeri di telefono > Gestisci > Numeri attivi. Nella tabella deve essere presente una riga con il numero Twilio predefinito di cui è stato eseguito il provisioning per il tuo account Flex.
- Nella sezione Voice - Studio Workflow, fai clic su Voice IVR.
- Trascina un widget Esegui richiesta HTTP nel flusso.
- Scollega Incoming Call dall'input del widget SendCallToAgent.
- Collega Chiamata in arrivo all'input del widget Fai richiesta HTTP.
- Configura il widget Make HTTP Request (Invia richiesta HTTP) con i seguenti dettagli:
- Nome widget:
register_twilio
- Metodo di richiesta:
POST
- URL richiesta:
<your-ui-connector-cloud-run-url>.run.app/register-app
- Tipo di contenuto: Application/JSON
- Corpo della richiesta:
{ "accountSid": "<yourTwilioAccountSid>", "authToken": "<yourTwilioAccountAuthToken>" }
- Nome widget:
- Trascina un widget Esegui funzione nel flusso.
- Collega gli output Success e Fail del widget register_twilio all'input del widget Run Function.
- Crea un widget con i seguenti dettagli:
- Nome widget:
conversation_name
- Servizio:
ui-connector-auth
- Ambiente:
ui
- Funzione:
conversation-name
- Parametri della funzione:
- token:
{{ widgets.register_twilio.parsed.token }}
- endpoint:
<your-ui-connector-cloud-run-url>.run.app/conversation-name
- phone:
{{ trigger.call.From | replace_first:'+','' }}
- conversationName:
projects/<project>/locations/<location>/conversations/TW-{{ trigger.call.From | replace_first:'+','' }}-{{ trigger.call.CallSid }}
- token:
- Nome widget:
- Trascina un widget Fork Stream dalla barra laterale nel flusso.
- Collega gli output Successo e Errore del widget Invia richiesta HTTP all'input del widget Biforca flusso.
- Collega il nodo Avanti del widget Biforca flusso al widget SendCallToAgent.
Configura il widget Biforca flusso nel modo seguente:
- Azione stream: avvia
- Stream Type (Tipo di stream): Siprec
- Nome connettore:
Siprec1
- Tracce: entrambe le tracce
Parametri dello stream:
- Chiave:
conversation
Valore:
projects/<gcp-project-id>/conversations/TW-{{trigger.call.From | replace_first:'+','' }}-{{trigger.call.CallSid}}
- Chiave:
Fai clic su Salva > Pubblica.
Dettagli account
Segui questo passaggio per raccogliere i dettagli del tuo account Twilio Flex. Queste informazioni sono necessarie per configurare Flex CTI in Salesforce in un secondo momento.
- Vai a Twilio Home > Dashboard account e annota le seguenti informazioni:
- SID account
- Il mio numero di telefono Twilio
Passaggio 2: configura il progetto di sviluppo
Per iniziare a integrare i moduli dell'interfaccia utente di Agent Assist, segui questi passaggi.
- Esegui il seguente codice per clonare il repository di integrazione di Agent Assist e aprire il progetto:
git clone https://github.com/GoogleCloudPlatform/agent-assist-integrations cd salesforce/aa-lwc
- Esegui questi comandi per scaricare i file JavaScript dei moduli UI che distribuisci in un secondo momento come risorse statiche. Salesforce richiede il caricamento di JS di terze parti per le risorse statiche.
npm run generate-static-resources npm install
Passaggio 3: configura l'ambiente Salesforce
Puoi integrare i moduli dell'interfaccia utente di Agent Assist in un ambiente specifico, ad esempio produzione o sviluppo. Salesforce chiama questi ambienti organizzazioni (org).
Configurare l'organizzazione con la CLI di Salesforce
Segui questi passaggi per utilizzare la CLI di Salesforce per configurare la tua organizzazione per l'integrazione di Agent Assist.
- Esegui il seguente codice e autentica la CLI utilizzando le credenziali di accesso a Salesforce che utilizzi normalmente.
npm run login
- Esegui il seguente codice per eseguire il deployment del componente LWC nell'organizzazione.
npm run deploy
Passaggio 4: crea un'app connessa
Il componente web Salesforce Lightning utilizza il flusso delle credenziali client OAuth 2.0 per autenticarti. Un'applicazione (app) connessa abilita il flusso delle credenziali client. Utilizza la chiave consumer e il secret consumer dell'app per configurare il componente LWC in modo da autenticare gli utenti con Salesforce.
Configurare le impostazioni di base
- Vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione. Inserisci una ricerca Ricerca rapida per "Gestione app".
- Fai clic su Nuova app connessa > Crea un'app connessa > Continua, poi inserisci le seguenti informazioni.
- Nome dell'app connessa:
lwc auth
- Nome API:
lwc_auth
- Email di contatto:
your_email@example.com
- Attiva le impostazioni OAuth:
checked
- URL di callback:
https://login.salesforce.com/services/oauth2/callback
- Selected OAuth Scopes (Ambiti OAuth selezionati): accedi al servizio URL identità
- Enable Client Credentials Flow (Abilita flusso delle credenziali client):
checked
- Nome dell'app connessa:
- Fai clic su Salva.
Per ulteriori informazioni sulle app connesse, consulta le seguenti risorse Salesforce.
- Configurare le impostazioni di base delle app collegate
- Configurare un'app connessa per il flusso delle credenziali client OAuth 2.0
Imposta l'autorizzazione e le credenziali di esecuzione
- Vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione.
- Inserisci una ricerca Ricerca rapida per "Gestisci le app collegate".
- Fai clic sul nome dell'app collegata > Modifica.
- Vai a Flusso delle credenziali client.
- In Esegui come, fai clic sulla lente d'ingrandimento e seleziona il tuo nome utente.
- Fai clic su Salva.
- Vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione.
- Inserisci una ricerca Ricerca rapida per "Gestione app".
- Trova
lwc auth
e fai clic su .- Fai clic su Visualizza > Gestisci dettagli consumatore.
- Inserisci il codice di verifica inviato al tuo indirizzo email.
- Copia la chiave utente e il secret consumer in un luogo sicuro, in quanto ti serviranno per un passaggio successivo.
Stabilisci criteri CORS e di sicurezza dei contenuti
- Vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione.
- Inserisci una ricerca Ricerca rapida per "CORS", poi fai clic su Modifica.
- Seleziona Attiva CORS per gli endpoint OAuth.
- Fai clic su Salva.
- Vai alla barra dei menu > Menu di configurazione, poi fai clic su Configurazione.
- Inserisci una ricerca Ricerca rapida per "URL attendibili", quindi fai clic su Nuovo URL attendibile.
- Inserisci il nome API:
ui_connector
- Inserisci l'URL dell'endpoint del servizio Cloud Run del connettore UI che hai implementato con il backend di integrazione di Agent Assist. Puoi trovare questo URL nella console Cloud Run. Ad esempio:
https://UI_CONNECTOR_SUBDOMAIN.GCP-REGION.run.app
. - Seleziona tutte le caselle in Direttive CSP.
- Fai clic su Salva e nuovo.
- Inserisci l'URL dell'endpoint del servizio Cloud Run del connettore UI che hai implementato con il backend di integrazione di Agent Assist. Puoi trovare questo URL nella console Cloud Run. Ad esempio:
- Inserisci il nome API:
ui_connector_wss
- Inserisci l'URL dell'endpoint del servizio Cloud Run del connettore UI che hai implementato con il backend di integrazione di Agent Assist. Puoi trovare questo URL nella console Cloud Run. Modifica il protocollo in wss per il traffico WebSocket. Ad esempio:
wss://UI_CONNECTOR_SUBDOMAIN.GCP-REGION.run.app
. - Seleziona tutte le caselle in Direttive CSP.
- Fai clic su Salva e nuovo.
- Inserisci l'URL dell'endpoint del servizio Cloud Run del connettore UI che hai implementato con il backend di integrazione di Agent Assist. Puoi trovare questo URL nella console Cloud Run. Modifica il protocollo in wss per il traffico WebSocket. Ad esempio:
- Inserisci il nome API:
salesforce_domain
- Inserisci l'URL del tuo dominio Salesforce nel seguente formato:
https://YOUR_SUBDOMAIN.my.salesforce.com
. - Seleziona tutte le caselle in Direttive CSP.
- Fai clic su Salva.
- Inserisci l'URL del tuo dominio Salesforce nel seguente formato:
Passaggio 5: installa il plug-in CTI Twilio Flex
Salesforce fornisce Salesforce Open CTI per consentire l'integrazione di softphone di terze parti con la tua istanza Salesforce.
Twilio Flex CTI utilizza Salesforce Open CTI per consentirti di utilizzare Flex direttamente all'interno della tua istanza Salesforce. Segui le istruzioni di Twilio per configurare Twilio Flex CTI nella tua istanza Salesforce.
Passaggio 6: installa il componente web Lightning di Salesforce
Segui questi passaggi per utilizzare l'editor Lightning Experience per aggiungere il componente web Lightning di Salesforce alla pagina dei contatti in cui si apre Twilio Flex CTI quando arriva una nuova chiamata.
- Vai alla console del servizio e seleziona Contatti.
- Seleziona un record di contatto.
- Fai clic sul menu Configurazione > Modifica pagina.
- Fai clic su Modello > Modifica.
- Seleziona Intestazione e Due regioni uguali.
- Fai clic su Avanti.
- Mappa ogni regione su una nuova regione.
- Fai clic su Fine.
- Dalla barra laterale Componenti, sposta
agentAssistContainerModule
nella barra laterale. Nota: questo componente è stato fornito dal comandonpm deploy
. - Fai clic sul componente inserito nel passaggio precedente e compila i campi del modulo come segue per aggiungere i dettagli di configurazione.
- endpoint: l'URL del connettore UI del backend di integrazione. Ad esempio, un URL della console Cloud Run, come:
https://UI-CONNECTOR-ENDPOINT.GCP-REGION.run.app
. - funzionalità: funzionalità di Agent Assist da includere. Queste opzioni devono essere attivate nel tuo profilo di conversazione. Alcune funzionalità disponibili includono
CONVERSATION_SUMMARIZATION
,KNOWLEDGE_ASSIST_V2
eAGENT_COACHING
. Tieni presente che alcune funzionalità, comeSMART_REPLY
, non sono disponibili pervoice-twilio
. - canale: indica che l'integrazione è per la voce.
- channelType: indica che il tipo di integrazione vocale è Twilio.
- conversationProfile: il nome della risorsa del tuo profilo di conversazione di Agent Assist. Ad esempio,
projects/GCP-PROJECT-ID/locations/GCP-REGION/conversationProfiles/CONVERSATION-PROFILE-ID
- consumerKey: la chiave utente dell'app connessa del passaggio 3.
- consumerSecret: il secret consumer dell'app connessa del passaggio 3.
- endpoint: l'URL del connettore UI del backend di integrazione. Ad esempio, un URL della console Cloud Run, come:
Passaggio 7: testa l'integrazione
Puoi testare l'integrazione vocale con una chiamata di prova al call center Salesforce.
- Accedi a Twilio Flex dalla console di servizio Salesforce.
- Chiama il tuo numero Twilio Flex. Hai preso nota di questo nel passaggio 1.
- Nella console di servizio Salesforce, accetta la chiamata. Si dovrebbe aprire una pagina dei contatti nuova o esistente per il numero che ha chiamato.
- Se si tratta di una nuova pagina di contatto, salva il contatto. Quando la pagina Contatto viene caricata, il componente web Lightning di Salesforce dovrebbe essere caricato nella barra laterale.
- Testa entrambi i lati della conversazione, assicurandoti che le funzionalità di Assistente agente funzionino come le hai configurate.