Questa integrazione vocale utilizza un connettore Five9 Classic e Five9 MediaStream (precedentemente chiamato Voicestream) per fornire suggerimenti di Assistente agente agli agenti in Five9 Agent Desktop Plus.

Prima di iniziare
Per integrare i moduli dell'interfaccia utente di Agent Assist con Five9, devi accedere alle seguenti risorse.
Dipendenze di sistema richieste
- Google Cloud CLI
- Installa Google Cloud CLI come indicato.
- Esegui l'autenticazione utilizzando
gcloud auth login.
- Deployment del backend di integrazione di Agent Assist
- Segui le istruzioni per configurare l'integrazione.
- Oltre alla normale configurazione e prima di eseguire lo script di deployment, configura le seguenti variabili di ambiente in
aa-integration-backend/.env:AUTH_OPTION: imposta questo valore suFive9.FIVE9_TRUST_TOKEN: genera questo valore eseguendo il seguente comando:cd platforms/five9cp .env.sample .envmake generate-trust-token
- Profilo di conversazione di Agent Assist: per informazioni dettagliate, consulta Creare un profilo di conversazione.
- Accesso amministratore Five9: è necessario per configurare l'abbonamento a Mediastream e Classic Connector.
- Make: utilizzato per l'esecuzione degli script di deployment.
Dipendenze di sistema facoltative
- Podman (facoltativo): per la creazione di container e i test locali.
- grpcurl (facoltativo): per verificare la qualità dello stream gRPC.
Panoramica dell'architettura di integrazione
La soluzione utilizza un'architettura di servizio suddiviso per gestire i requisiti distinti del protocollo di Five9: streaming audio bidirezionale in tempo reale (gRPC) e gestione asincrona degli eventi (HTTP). Questi due servizi Cloud Run collegano Five9 MediaStream con Google Cloud Agent Assist, consentendo la trascrizione in tempo reale e i suggerimenti dell'AI generativa:
- mediastream-grpc-service: gestisce lo stream audio gRPC bidirezionale da Five9 MediaStream.
- mediastream-http-service: presenta i moduli della UI di Agent Assist e gestisce gli eventi CTI e MediaStream.
Flusso di dati di alto livello
- Avvio della chiamata: Five9 attiva un evento CTI per il servizio HTTP, avviando la sessione.
- Streaming audio: Five9 apre una connessione gRPC sicura al servizio gRPC per lo scambio audio in tempo reale.
- Elaborazione: il servizio gRPC inoltra l'audio ad Google Cloud Agent Assist.
- Suggerimenti: Agent Assist restituisce suggerimenti per la trascrizione e il coaching degli agenti tramite Pub/Sub, che vengono inoltrati ai moduli UI tramite una connessione Socket.IO (WebSockets) con il servizio Cloud Run UI Connector. Questi suggerimenti vengono visualizzati in un iframe di Five9 Classic Connector in Five9 Agent Desktop Plus durante le chiamate.
Servizio gRPC (mediastream-grpc)
- Ruolo: gestisce lo streaming audio bidirezionale in tempo reale ad alte prestazioni.
- Implementazione: server gRPC Python che utilizza
grpcio. - Concurrency: utilizza
grpc.aio(AsyncIO) per I/O non bloccanti ad alte prestazioni. - Protocollo: definisce il contratto di servizio utilizzando
mediastream-grpc/proto/voice.proto. - Modulo principale: l'implementazione di
VoiceServicerinservices/get_suggestions.pyorchestra la gestione dello stream audio e le chiamate API Agent Assist.
Servizio HTTP (mediastream-http)
- Ruolo: gestisce gli eventi del control plane, la convalida dei token e la pubblicazione degli asset statici della UI.
- Implementazione: server web Flask.
- Endpoint:
GET /: un endpoint di controllo di integrità per il server.GET /agent-assist-ui-modules: Fornisce i moduli dell'interfaccia utente di Agent Assist per il connettore classico Five9.GET /cti-call-event-destination/: convalidaFIVE9_TRUST_TOKEN(restituisce l'hash SHA256).POST /cti-call-event-destination/: riceve eventi CTI di chiamata e metadati.POST /mediastream-event-destination/subscriptions/<id>: riceve errori asincroni o aggiornamenti di stato dallo stream multimediale.
Sicurezza
- Token di attendibilità: l'integrazione implementa un modello di sicurezza con segreto condiviso. Viene generato e configurato un
FIVE9_TRUST_TOKENsia in Five9 che nel servizio Cloud Run. Il servizio HTTP fornisce un endpoint di convalida (GET /cti-call-event-destination/) che restituisce l'hash SHA256 del token configurato per la verifica. - Questo trust token viene riutilizzato anche come secret condiviso per autenticare le richieste dal servizio HTTP MediaStream al connettore UI.
Guida al deployment
Le sezioni seguenti descrivono come eseguire il deployment di questa integrazione di Agent Assist Five9 e testarla in Five9 Agent Desktop Plus.
Configura le variabili di ambiente
- Innanzitutto, esegui
cd aa-integration-backend/platforms/five9per cambiare directory. Verifica di avere un file
.envche hai copiato da.env.samplenella sezione Dipendenze di sistema richieste. L'ultima riga deve contenere ilFIVE9_TRUST_TOKENche hai generato in quel momento.Variabili di ambiente: compila il file
.envcon i seguenti dettagli.Variabile Descrizione PROJECT_IDIl tuo Google Cloud ID progetto REGIONLa regione in cui verranno implementati i tuoi servizi Cloud Run. CONVERSATION_PROFILE_NAMEL'ID risorsa del profilo di conversazione di Agent Assist. FEATURESLe funzionalità da attivare per Agent Assist. Consulta la documentazione Proprietà del contenitore dei moduli UI V2. FIVE9_API_KEYImposta questo valore sulla chiave API Five9 che hai ottenuto durante la configurazione dell'abbonamento a MediaStream. FIVE9_TRUST_TOKENIl segreto condiviso che hai generato in Prima di iniziare, che consente a mediastream-http-servicedi autenticarsi con il servizio Cloud Runui-connector.
Esegui il deployment in Google Cloud Run
Esegui il deployment dei servizi gRPC e HTTP su Cloud Run utilizzando l'automazione fornita:
make deploy
Questo script:
- Crea le immagini container.
- Esegui il push in Google Container Registry (GCR) o Artifact Registry.
- Esegui il deployment di due servizi Cloud Run: uno per gRPC (Voice) e uno per HTTP (Events).
- Restituisci gli URL del servizio al termine.
Configurazione di Five9
Dopo il deployment, configura Five9 per inviare stream al tuo servizio. Per i passaggi dettagliati, consulta la guida tecnica di Five9 MediaStream.
Configurazione iniziale di Five9
Segui questi passaggi per configurare la console di amministrazione Five9 per l'integrazione di Agent Assist.
- Crea una nuova competenza, ad esempio Integrazione di Agent Assist.
- Assegna utenti alla skill.
- Configura un connettore classico Five9 per la tua campagna, incorporando l'URL del servizio Cloud Run MediaStream che hai implementato in un passaggio precedente:
- URL:
{mediastream-http-service-url}/agent-assist-ui-modules/ - Metodo:
GET - Parametri:
call_id - Modalità di esecuzione:
In Browser- Agent Application:
Use embedded tab for Web Agent - Servizi web CTI:
Current browser window
- Agent Application:
- Trigger (scheda successiva):
On Call Accepted
- URL:
- Crea uno script IVR per definire il comportamento quando ricevi chiamate tramite il tuo numero DNIS Five9.
- Crea una campagna inbound
- Associare lo script IVR alla campagna
- Se vuoi, crea una campagna in uscita per attivare Assistente agente per le chiamate in uscita. Ciò comporta quanto segue:
- Associa una competenza alla campagna in uscita.
- Crea una copia del connettore classico e associala alla campagna in uscita. Modifica l'attivatore della copia del connettore classico in Al contatto selezionato.
- Avvia la campagna. Per eseguire il test, effettua una chiamata in uscita in Agent Desktop Plus, selezionando la campagna in uscita dal menu a discesa.

Creare un abbonamento MediaStream
- Nome abbonamento: flusso multimediale di integrazione di Agent Assist
- Tipo di streaming: streaming vocale
- Destinazione di streaming: Altro (self-service)
- Protocollo di streaming: gRPC
- Destinazione di streaming principale:
<five9-mediastream-grpc-deployment-url-without-protocol>:443- Ad esempio:
five9-mediastream-grpc-123412341234.us-central1.run.app:443
- CTI Call Event Destination:
https://<five9-mediastream-http-deployment-url>/cti-call-event-destination/- Ad esempio:
https://five9-mediastream-http-123412341234-uc.a.run.app/cti-call-event-destination/
- Destinazione eventi Mediastream:
https://<five9-mediastream-http-deployment-url>/mediastream-event-destination/- Ad esempio:
https://five9-mediastream-http-123412341234-uc.a.run.app/mediastream-event-destination/
- Trust Token: il
FIVE9_TRUST_TOKENche hai generato in un passaggio precedente. - Chiave API: questo campo verrà generato dopo aver salvato l'abbonamento a Mediastream. Copia il
FIVE9_API_KEYche ricevi inplatforms/five9/.env. Ti servirà nel passaggio successivo. - Filtro di streaming:
- Filtro personalizzato: selezionato
- Tipo di filtro: Campagne
- Cerca le campagne aggiunte: cerca la tua campagna e aggiungila.
Esegui nuovamente il deployment in Google Cloud Run
- Importante: dopo aver creato l'abbonamento a MediaStream, devi aggiungere
FIVE9_API_KEYche hai ricevuto al fileplatforms/five9/.env, quindi rieseguire il deployment eseguendomake deploy.
Verifica del deployment
Verifica che i servizi di cui hai eseguito il deployment siano raggiungibili su Cloud Run:
make test-http-reachable
make test-grpc-reachable
Simula una chiamata riproducendo in streaming un file .wav su mediastream-grpc-service:
make test-grpc-stream
Ora puoi testare la trascrizione e i suggerimenti di Agent Assist mentre rispondi alle chiamate in Five9 Agent Desktop Plus.

Test locale (facoltativo)
Per la risoluzione dei problemi o i test senza deployment, puoi eseguire i servizi localmente utilizzando Docker/Podman. Arresta i container, crea ed esegui localmente con Podman Compose.
make all
Esegui tutti i test (integrità, unità), tranne lo stream
make test
Simulare una chiamata riproducendo in streaming un file .wav
make test-grpc-stream LOCAL=true