啟用多使用者應用程式內、Web 和視訊通話 - Amazon Connect

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

啟用多使用者應用程式內、Web 和視訊通話

Amazon Connect 支援新增其他使用者,以在現有呼叫中加入應用程式內、Web 和視訊通話。您最多可以將四個額外的使用者新增至進行中或排定的應用程式內、Web 或視訊通話,總共有六個參與者:客服人員、第一個使用者,以及四個其他參與者 (使用者或客服人員)。

如何將參與者新增至多使用者呼叫

  1. 若要啟用多使用者呼叫,您需要從 Amazon Connect 主控台啟用增強型多方聯絡監控

  2. 完成後,您可以利用現有的 Amazon Connect StartWebRTCContact API 來建立聯絡人,並將此聯絡人轉接給客服人員。

  3. 若要新增其他參與者,請先建立參與者ContactId,從 StartWebRTCContact API 回應傳入 CreateParticipant API。CreateParticipant 在原始發起人連線至客服人員之前不會成功。參與者的影片和螢幕共用功能可在 ParticipantDetails.ParticipantCapabilities 欄位中設定。

  4. CreateParticipant 成功完成時,它會傳回參與者字符。此字符可用於 CreateParticipantConnection 的請求,並將 Type設定為 WEBRTC_CONNECTION。回應包含 ConnectionData,可用於使用為建立的其他參與者建立的 Amazon Chime SDK 用戶端程式庫加入會議。遵循整合指示,以允許您的應用程式最終使用者加入會議。

    注意

    如果客服人員尚未連線至聯絡人,CreateParticipant 會傳回錯誤的請求錯誤。如需使用者在連接代理程式之前可能嘗試加入的商業應用程式,請參閱 處理並行使用者聯結

  5. 其他客戶可以在 CreateParticipantConnection 傳回後隨時連線。參與者加入後,所有其他語音和錄音行為都與多方功能類似。如果新參與者的功能已在 CreateParticipant 請求中啟用,則可以啟用其視訊和螢幕共用。

    注意

    總計只有 6 名參與者 (客戶和客服人員) 可以隨時加入作用中的通話。Amazon Chime SDK 用戶端程式庫會傳回狀態碼,指出在會議聯結期間執行新增超出限制之參與者的動作時,呼叫處於容量狀態。

  6. 在參與者連線至通話後,然後正常中斷連線,或在預先設定的時間非正常中斷連線後,其參與者登入資料將不再有效。如果用戶端程式庫onAudioVideoDidStop觀察者收到狀態碼,指出出席者不再有效,應用程式可以從您的企業後端觸發對 CreateParticipantCreateParticipantConnection 的新呼叫,以重新加入通話。

  7. 對於每個額外的使用者連線, 會 Amazon Connect 建立新的聯絡人和聯絡人記錄。所有其他聯絡人都已將 PreviousContactId 設定為 InitialContactId (即 StartWebRTCContact API 建立的聯絡人),以便將其追蹤至原始聯絡人。每個聯絡記錄:

    • 具有「InitiationMethod」:「WEBRTC_API」

    • 具有下列區段屬性:

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

    此外,每個聯絡人記錄都有在 中提供的顯示名稱CreateParticipant。不會為任何其他使用者聯絡人填入客服人員資訊。這是為了避免代理程式資訊的重複。

    下圖說明在 Web、應用程式內或視訊通話中新增多個參與者和客服人員的情況下,上一個和下一個聯絡人 IDs 的映射方式。

    顯示如何對應多方 WebRTC 呼叫聯絡人 IDs 的圖表

處理並行使用者聯結

企業可能想要建立使用者可以隨時以任何順序加入的應用程式。例如,您的應用程式可能會將包含外部預約 ID 的連結透過電子郵件傳送給多個使用者,這些使用者應該用來在排程時間加入通話。若要達成此行為,企業後端必須確保:

  • 第一個加入 的使用者會觸發 StartWebRTCContact 請求。

  • 所有其他使用者都會使用 CreateParticipant 和 CreateParticipantConnection,但僅限於第一個使用者連線到客服人員之後

本節說明可能的實作,假設您的企業後端包含一個存放區 (例如 DynamoDB),該存放區可保存有關排程預約的中繼資料。請注意,排程預約不是 的功能 Amazon Connect,而是範例實作的功能。

當使用者導覽至頁面時,他們應該將請求傳送至後端。後端檢查:

  • 使用者是否能夠開始預約,以及是否為正確的時間。

  • 聯絡案例 Amazon Connect 是否已透過呼叫 StartWebRTCContact 建立。

如果尚未建立聯絡人,客戶應該使用自訂流程呼叫 StartWebRTCContact API,以及表示應加入呼叫之對應客服人員的客服人員佇列的 屬性。流程應包含設定工作佇列區塊,其設定為使用屬性中提供的客服人員佇列。然後,流程應以 Transfer to queue 區塊終止。在呼叫 API 之前,後端應以原子方式更新存放區,將呼叫從「無」移至「建立」狀態,並處理任何並行修改例外狀況。

StartWebRTCContact 的登入資料應傳回給客戶,他們應該立即加入通話。聯絡人應與聯絡人 ID 一起標示為 'Created'。此商業 API 需要在所有可能加入的出席者之間同步。這可以透過使用資料庫提供的原子操作來完成。

如果聯絡人處於建立狀態,則應傳回其他使用者此狀態、顯示相關資訊,並在短暫等待後重試。

如果已建立聯絡人:他們應該擷取聯絡人 ID,並呼叫 DescribeContact API。企業後端應該尋找 Contact.AgentInfo.ConnectedToAgentTimestamp 欄位。如果不存在,則第一個使用者尚未連線到代理程式,而其他使用者應顯示相關資訊,並在短暫等待後重試。

如果 欄位存在,後端應呼叫 CreateParticipant,然後呼叫 CreateParticipantConnection 以取得 ConnectionData,如前幾節所述。

後端流程看起來應該如下所示。

用於處理並行使用者聯結的後端流程圖

您可以參考 GitHub 上的 Amazon Connect 應用程式內呼叫範例進行實作。

代理程式不會使用相同的網站加入。客服人員應該在聯絡控制面板中將其狀態設定為可用。當第一個客戶加入時,會自動呼叫客服人員。

帳單

其他參與者的帳單相當於通話中初始客戶和任何客服人員的現有帳單。音訊、視訊和螢幕共用都會產生自己的參與者特定費用。

保留行為

在視訊通話或螢幕共用工作階段期間,即使參與者處於保留狀態,客服人員也能查看參與者的影片或螢幕共用。參與者有責任相應地處理 PII。如果使用原生 CCP 應用程式,則會在保留任何非客服人員參與者時停用客服人員視訊。如果您想要變更此行為,您可以建置自訂 CCP 和通訊小工具。

如需詳細資訊,請參閱將應用程式內、Web、視訊通話和螢幕共用原生整合到您的應用程式

限制

建立其他應用程式內、Web、視訊通話和螢幕共用參與者時,存在下列限制:

  • 如果原始聯絡人建立時客戶視訊功能設為,則其他參與者無法將視訊功能設為傳送