Abilitare le chiamate multiutente in-app, web e video - Amazon Connect

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Abilitare le chiamate multiutente in-app, web e video

Amazon Connect supporta l'aggiunta di altri utenti per partecipare alla chiamata in-app, web e videochiamata in una chiamata esistente. Puoi aggiungere fino a quattro utenti aggiuntivi a una chiamata web, in-app o video in corso o programmata, per un totale di sei partecipanti: l’agente, il primo utente e altri quattro partecipanti (utenti o agenti).

Come aggiungere partecipanti a una chiamata multiutente

  1. Per abilitare le chiamate multiutente, è necessario abilitare il monitoraggio avanzato dei contatti multipartitici dalla console. Amazon Connect

  2. Al termine, puoi sfruttare l' Amazon Connect StartWebRTCContactAPI esistente per creare un contatto e indirizzarlo a un agente.

  3. Per aggiungere un altro partecipante, crea innanzitutto un partecipante che passi ContactId dalla risposta StartWebRTCContactAPI all'API. CreateParticipant CreateParticipantnon avrà successo finché il chiamante originale non si sarà connesso all'agente. Le funzionalità di condivisione del video e dello schermo per il partecipante possono essere impostate nel campo ParticipantDetails.ParticipantCapabilities.

  4. Una volta CreateParticipantcompletato con successo, restituisce un token partecipante. Questo token può essere utilizzato in una richiesta a CreateParticipantConnectioncon Type set to. WEBRTC_CONNECTION La risposta include ConnectionDatache può essere utilizzata per partecipare alla riunione utilizzando le librerie client SDK di Amazon Chime per il partecipante aggiuntivo creato. Segui le istruzioni di integrazione per consentire all’utente finale dell’applicazione di partecipare alla riunione.

    Nota

    CreateParticipantrestituisce un errore Bad Request se l'agente non è ancora connesso al contatto. Per le applicazioni aziendali in cui gli utenti possono tentare di partecipare prima che l’agente sia connesso, consulta Gestione degli accessi simultanei degli utenti.

  5. I clienti aggiuntivi possono connettersi in qualsiasi momento dopo la CreateParticipantConnectionrestituzione. Una volta che i partecipanti sono entrati nella chiamata, tutti i comportamenti di voce e registrazione aggiuntivi sono simili alla funzionalità multiparte. I nuovi partecipanti possono abilitare la condivisione di video e schermate, se le loro funzionalità sono state abilitate nella CreateParticipantrichiesta.

    Nota

    Solo sei partecipanti (clienti e agenti) in totale possono partecipare a una chiamata attiva in qualsiasi momento. Le librerie client dell’SDK di Amazon Chime restituiscono un codice di stato che indica che la chiamata ha il numero massimo di partecipanti quando viene intrapresa un’azione per aggiungere altri partecipanti oltre il limite durante l’accesso alla riunione.

  6. Una volta eseguita la connessione alla chiamata e quindi la disconnessione (in modo regolare o non regolare) per un periodo di tempo preconfigurato, le credenziali dei partecipanti non sono più valide per la chiamata. Se l'onAudioVideoDidStoposservatore della libreria clienti riceve un codice di stato che indica che il partecipante non è più valido, le applicazioni possono attivare una nuova chiamata CreateParticipantConnectionda CreateParticipante verso il backend aziendale per partecipare nuovamente alla chiamata.

  7. Per ogni connessione utente aggiuntiva, Amazon Connect crea un nuovo contatto e un nuovo record di contatto. Tutti i contatti aggiuntivi sono PreviousContactId impostati su InitialContactId (ovvero quello creato dall'StartWebRTCContactAPI) per ricondurlo al contatto originale. Ogni record di contatto:

    • Ha un "InitiationMethod«: «WEBRTC_API»

    • Ha i seguenti attributi di segmento:

      "SegmentAttributes": { "connect:Subtype": { "ValueString": "connect:WebRTC" } },

    Inoltre, ogni record di contatto ha il nome visualizzato fornito in CreateParticipant. Le informazioni dell’agente non vengono compilate per nessun contatto utente aggiuntivo. Questo serve a evitare la duplicazione delle informazioni dell’agente.

    Il diagramma seguente illustra come IDs vengono mappati i contatti precedenti e successivi in uno scenario in cui vengono aggiunti più partecipanti e agenti in una chiamata Web, in-app o videochiamata.

    Diagramma che mostra come IDs vengono mappati i contatti per le chiamate WebRTC multipartitiche

Gestione degli accessi simultanei degli utenti

Le aziende potrebbero voler creare applicazioni a cui gli utenti possano accedere in qualsiasi ordine e in qualsiasi momento. Ad esempio, l’applicazione può inviare tramite e-mail a più utenti un link con l’ID di un appuntamento esterno da utilizzare per partecipare a una chiamata a un orario prestabilito. Per ottenere questo comportamento, i backend aziendali devono garantire quanto segue:

  • Il primo utente che si unisce attiva una richiesta. StartWeb RTCContact

  • Tutti gli utenti aggiuntivi utilizzano CreateParticipant e CreateParticipantConnection, ma solo dopo che il primo utente si è connesso a un agente.

Questa sezione descrive una possibile implementazione, supponendo che il backend aziendale contenga un archivio (come DynamoDB) in grado di contenere metadati sugli appuntamenti programmati. Tieni presente che gli appuntamenti pianificati non sono una funzionalità Amazon Connect, ma dell'implementazione di esempio.

Quando l’utente apre la pagina, deve inviare una richiesta al backend. Il backend controlla quanto segue:

  • Se l’utente è in grado di iniziare l’appuntamento e se è l’ora corretta.

  • Se il Amazon Connect contatto è già stato creato StartWebRTCContactchiamando.

Se il contatto non è già stato creato, il cliente deve chiamare l'StartWebRTCContactAPI con un flusso personalizzato e un attributo che indichi la coda degli agenti dell'agente corrispondente che avrebbe dovuto partecipare alla chiamata. Il flusso deve includere un blocco Imposta coda di lavoro configurato per utilizzare la coda dell’agente specificata negli attributi. Il flusso deve quindi terminare con un blocco Trasferisci alla coda. Prima che l’API venga chiamata, il backend deve aggiornare atomicamente l’archivio per spostare la chiamata dallo stato “Nessuno” allo stato “Creazione” e gestire eventuali eccezioni di modifica simultanee.

Le credenziali di StartWebRTCContactdevono essere restituite al cliente e quest'ultimo deve partecipare immediatamente alla chiamata. Il contatto deve essere contrassegnato come “Creato” nell’archivio aziendale, insieme all’ID di contatto. L’API aziendale deve essere sincronizzata tra tutti i possibili partecipanti. Questo può essere fatto utilizzando le operazioni atomiche fornite da un database.

Se il contatto è in stato di creazione, l’utente aggiuntivo deve ricevere questo stato, visualizzare le informazioni pertinenti e riprovare dopo una breve attesa.

Se il contatto viene creato: devono recuperare l'ID del contatto e chiamare l'DescribeContactAPI. Il backend aziendale deve cercare il campo Contact.AgentInfo.ConnectedToAgentTimestamp. Se il campo non esiste, significa che il primo utente non si è connesso all’agente e l’utente aggiuntivo deve visualizzare le informazioni pertinenti e riprovare dopo una breve attesa.

Se il campo esiste, il backend dovrebbe chiamare CreateParticipante poi ottenere CreateParticipantConnectionConnectionData, come descritto nelle sezioni precedenti.

Il flusso di backend deve essere simile al seguente.

Diagramma di flusso del backend per la gestione degli accessi utente simultanei

Puoi fare riferimento agli esempi di chiamate in-app di Amazon Connect GitHub per l'implementazione.

L’agente non effettuerà l’accesso utilizzando lo stesso sito web. L’agente deve impostare il proprio stato nel Contact Control Panel su Disponibile. Quando il primo cliente effettua l’accesso, l’agente viene chiamato automaticamente.

Fatturazione

La fatturazione per i partecipanti aggiuntivi avviene nello stesso modo della fatturazione esistente per il cliente iniziale e per gli eventuali agenti che partecipano alla chiamata. Tutti i processi di condivisione dell’audio, del video e dello schermo prevedono costi specifici per ogni partecipante.

Comportamento durante l’attesa

Durante una chiamata video o una sessione di condivisione dello schermo, gli agenti possono vedere il video o lo schermo condiviso dal partecipante anche quando quest’ultimo è in attesa. È responsabilità del partecipante gestire le PII di conseguenza. Se si utilizza l’applicazione CCP nativa, il video dell’agente viene disabilitato se un partecipante che non è un agente è in attesa. Se desideri modificare questo comportamento, puoi creare un CCP e un widget di comunicazione personalizzati.

Per ulteriori informazioni, consulta Integrare le chiamate in-app, web e video e la condivisione dello schermo in modo nativo in un’applicazione.

Limitazione

La seguente limitazione esiste quando si creano partecipanti aggiuntivi per le chiamate in-app, web e video e la condivisione dello schermo:

  • I partecipanti aggiuntivi non possono avere le funzionalità video impostate su Invia se il contatto originale è stato creato con le funzionalità video del cliente impostate su Nessuno.