將應用程式內、Web、視訊通話和螢幕共用原生整合到您的行動應用程式 - Amazon Connect

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

將應用程式內、Web、視訊通話和螢幕共用原生整合到您的行動應用程式

若要將應用程式 Amazon Connect 內、Web、視訊通話和螢幕共用與您的行動應用程式原生整合,請使用 Amazon Connect StartWebRTCContact API 建立聯絡人,然後使用 API 呼叫傳回的詳細資訊,使用 iOS Android Amazon Chime 用戶端程式庫來加入通話。

用戶端裝置如何啟動應用程式內或網路通話

下圖顯示用戶端裝置 (行動應用程式或瀏覽器) 啟動應用程式內或網路通話的事件順序。

顯示用戶端裝置如何啟動通話的概念圖表。
  1. 您的客戶使用用戶端應用程式 (網站或應用程式) 來啟動應用程式內或網路通話。

  2. 客戶端應用程式 (網站或行動應用程式) 或 網路伺服器使用 Amazon Connect StartWebRtcContact API 以啟動傳遞任何屬性或背景到 Amazon Connect的聯絡人。

  3. 用戶端應用程式會使用步驟 1 的 StartWebRTCContact 傳回的詳細資訊,加入通話。

  4. (可選) 用戶端使用 CreateParticipantConnection API 以接收用來透過 SendMessage API 傳送 DTMF 的 ConnectionToken

  5. 聯絡人到達流程,並根據流程進行轉接,並放置在佇列中。

  6. 客服人員接受聯絡案例。

  7. (可選) 如果客戶和客服人員已啟用視訊,他們就可以開始視訊。

開始使用

以下是要開始使用的高等級步驟:

  1. 使用 StartWebRTCContact API 以建立聯絡人。API 會傳回 Amazon Chime 用戶端 SDK 加入呼叫所需的詳細資訊。

  2. 使用 StartWebRTCContact 傳回的組態來實例化 Amazon Chime SDK 用戶端MeetingSessionConfiguration物件。

  3. DefaultMeetingSession 使用 在步驟 2 中建立的 來實例化 Amazon Chime SDK 用戶端MeetingSessionConfiguration,以建立用戶端會議工作階段。

    • iOS (Swift)

      let logger = ConsoleLogger(name: "logger") let meetingSession = DefaultMeetingSession(configuration: meetingSessionConfig, logger: logger)
    • Android (Kotlin)

      val logger = ConsoleLogger() val meetingSession = DefaultMeetingSession( configuration = meetingSessionConfig, logger = logger, context = applicationContext )
  4. 使用 meetingSession.audioVideo.start() 方法透過音訊加入 WebRTC 聯絡人。

  5. 使用 meetingSession.audioVideo.stop() 方法掛斷 WebRTC 聯絡人。

  6. 選項步驟

    1. 若要將 DTMF 傳送至呼叫,需要兩個 Amazon Connect 參與者服務 APIs:CreateParticipantConnectionSendMessage

      注意

      SendMessage API 的 contentType 必須是 audio/dtmf

      1. 調用 CreateParticipantConnection 以擷取 ConnectionToken。(需要 ParticipantToken 呼叫此 API。您可以在 StartWebRTCContact 回應中找到。)

      2. 使用 ConnectionToken,呼叫 SendMessage 以傳送 DT以傳送 DTMF 數字。

    2. 若要靜音和取消靜音,請使用 meetingSession.audioVideo.realtimeLocalMute()meetingSession.audioVideo.realtimeLocalUnmute()

    3. 若要在行動應用程式上啟動自拍視訊,請使用 meetingSession.audioVideo.startLocalVideo()

    4. 若要停止行動應用程式上的自拍視訊,請使用 meetingSession.audioVideo.stopLocalVideo()

    5. 若要允許在行動應用程式內接收和載入客服人員的視訊,請使用 meetingSession.audioVideo.startRemoteVideo()

    6. 若要禁止在行動應用程式內接收和載入客服人員的視訊,請使用 meetingSession.audioVideo.stopRemoteVideo()

    7. 若要選取音訊輸入/輸出裝置,您可以從適用於 Android 和 iOS 的 Amazon Chime SDK 用戶端或適用於 iOS 的原生 iOS 功能使用方法。

    8. 如果您需要將任何狀態從代理程式端傳送到最終使用者,您可以使用資料訊息。例如,當客戶處於保留狀態時,您可以將資料訊息傳送至客戶的應用程式,以顯示訊息,讓他們知道他們處於保留狀態,而且他們的影片/螢幕共享仍在傳送中,或者您可以關閉影片/螢幕共享。