Omnissa クラウドデスクトップ用の Amazon Connect 音声を最適化する - Amazon Connect

Omnissa クラウドデスクトップ用の Amazon Connect 音声を最適化する

Amazon Connect を使用すると、エージェントが Omnissa 仮想デスクトップインフラストラクチャ (VDI) 環境を使用する際に、高品質の音声エクスペリエンスを簡単に提供できます。エージェントは、Omnissa Horizon Client などの Omnissa リモートデスクトップアプリケーションを活用し、音声処理をエージェントのローカルデバイスにオフロードして、音声を Amazon Connect に自動的にリダイレクトできます。これにより、課題が多いネットワークで音声品質が向上します。

開始するには、Amazon Connect オープンソースライブラリを使用して、カスタムコンタクトコントロールパネル (CCP) などのエージェントユーザーインターフェイスを新規作成することも、既存のエージェントユーザーインターフェイスを更新することもできます。

システム要件

このセクションでは、Amazon Connect で Omnissa Horizon SDK を使用するためのシステム要件について説明します。

  • Omnissa Horizon Client のバージョン

    • 必要な最小バージョン: エージェントとクライアントのどちらも 8.15.0 (Horizon 2503)

    • Omnissa は現在この機能について、Windows を実行しているエージェントワークステーションのみをサポートしています。

    • 最新の Omnissa クライアントをダウンロードすること

      重要
      • ICE 再起動機能をサポートした最初のバージョンは 2503 リリースです。それ以前のバージョンでは、この機能はサポートされていません。

      • Omnissa Horizon Client バージョン 2503 は Omnissa Customer Connect から入手できます。Customer Connect で最新バージョンを確認してください。

  • Omnissa の拡張機能と SDK の要件

    • Horizon WebRTC ウェブアプリは、拡張機能と SDK 8.15.0 以降をサポートします。

    • このブラウザ拡張機能により、Horizon Agent 内のウェブアプリで WebRTC SDK のサポートが有効になります。拡張機能は、こちらの Chrome Store からダウンロードできます。

  • ブラウザのサポート (最新の 3 バージョン)

    • Google Chrome

    • Microsoft Edge (Chromium)

  • Omnissa サーバーの設定: Omnissa Horizon SDK はデフォルトでは有効になっていません。システム管理者が、Omnissa Horizon Agent 仮想マシン内で (できればレジストリエディタ (regedit) を使って) 次のレジストリ設定を構成する必要があります。

    • レジストリエディタを開きます

      • Windows の場合:

        • Windows + R キーを押します。

        • regedit」 と入力し、Enter キーを押します。

    • 以下のレジストリパスを作成するか、レジストリパスに移動します。

      Key Path: Computer\HKLM\SOFTWARE\Policies\Omnissa\Horizon\WebRTCRedirSDKWebApp Key Names and Values: chrome_enabled (REG_DWORD) = 1 edge_chrome_enabled (REG_DWORD) = 1 enabled (REG_DWORD) = 1
      Key Path: Computer\HKLM\SOFTWARE\Policies\Omnissa\Horizon\WebRTCRedirSDKWebApp\UrlAllowList Key Name: https://*.connect.aws/* Key Name: https://*.connect.aws.a2z.com/* Key Type: REG_SZ

    Omnissa エージェントのインストール後、SDK の有効/無効ステータスに関係なく、html5server.exe および wsnm.exe のプロセスが常にタスクマネージャーで実行されます。次の図は、タスクマネージャーで実行されている html5server.exe プロセスを示しています。

    html5server.exe プロセスが実行されているタスクマネージャー。

    次の図は、タスクマネージャーで実行されている wsnm.exe プロセスを示しています。

    wsnm.exe プロセスが実行されているタスクマネージャー。
  • トラブルシューティング:

    • Omnissa ログファイルは次の場所にあります。

      %tmp%\omnissa-{username}\horizon-html5Client-{pid}.log

      注記

      {pid} は、タスクマネージャーにある Horizon クライアントの「horizon-protocol.exe」のプロセス ID を指します。

    • 拡張ログ記録のレジストリ設定

      トラブルシューティングの詳細なログ記録を有効にするには、次のレジストリエントリを追加します。

      HKEY_LOCAL_MACHINE\SOFTWARE\Omnissa\Horizon\Html5mmr: - "html5mmr.log.noThrottle" = dword:00000001
      HKEY_LOCAL_MACHINE\SOFTWARE\Omnissa\Horizon\Html5mmr\WebrtcRedir: - "html5mmr.log.webrtc.allowFullText" = dword:00000001 - "html5mmr.log.webrtc.allowThrottle" = dword:00000000 - "html5mmr.log.webrtc.sharedlib.internal" = dword:00000001 - "html5mmr.log.webrtc.sharedlib.network" = dword:00000001 - "html5mmr.log.webrtc.sharedlib.media" = dword:00000001 - "html5mmr.log.webrtc.shim.logToConsole" = dword:00000001 - "html5mmr.log.webrtc.sharedlib.signal" = dword:00000001 - "html5mmr.log.noThrottle" = dword:00000001 - "html5mmr.log.webrtc.tracelevel" = dword:00000001

      これらのレジストリ設定により、詳細なログ記録が可能になり、Omnissa VDI 統合の問題を診断するときに役立ちます。

  • ネットワークとファイアウォールの設定

    • Omnissa VDI の設定

      管理者は、Omnissa サーバーが次の図に示されているドメインへの Amazon Connect TCP/443 トラフィックにアクセスすることを許可する必要があります。この設定については「ネットワークをセットアップする」のトピックを参照してください。

    • エージェントワークステーションの設定

      このソリューションには、エージェントのシンクライアントと Amazon Connect の間のメディア接続が必要です。エージェントのマシンと Amazon Connect のソフトフォンメディア UDP ポート 3478 の間のトラフィックを許可するには、「ネットワークをセットアップする」の手順に従います。

      次の図は、UDP ポート 3478 の使用を示しています。

      UDP ポート 3478 の使用を示す図。

カスタム CCP で必要なコード変更

Omnissa VDI 環境で音声最適化を有効にするには、次の変更を加えてカスタム CCP を設定する必要があります。

  1. CCP の初期化前に、次のコードスニペットを追加します。これは、エージェントが複数のウィンドウを開いている場合に特に重要な、CCP のウィンドウ識別を管理するのに役立ちます。タイムスタンプと「Active Softphone Tab」マーカーを追加して、アクティブな CCP ウィンドウを識別できるようにします。

    const ACTIVE_SOFTPHONE_TAB = "Active Softphone Tab"; window.addEventListener('message', (event) => { if (event.data.type === 'get_horizon_window_title') { let title = document.title; const currentTime = new Date(); if (!title.endsWith(ACTIVE_SOFTPHONE_TAB)) { title += ` ${currentTime.getHours()}${currentTime.getMinutes()}${currentTime.getSeconds()} ` + ACTIVE_SOFTPHONE_TAB; document.title += ` ${currentTime.getHours()}${currentTime.getMinutes()}${currentTime.getSeconds()} ` + ACTIVE_SOFTPHONE_TAB; } event.source.postMessage( { type: 'horizon_window_title_response', title: title, source: 'parent' }, event.origin ); } });
  2. initCCP 設定に VDI プラットフォームのパラメータを追加します。これは、音声リダイレクトを有効にするためです。

    softphone: { allowFramedSoftphone: true, VDIPlatform: "OMNISSA" }
    重要

    VDIPlatform: "OMNISSA" を設定すると、Omnissa の音声最適化が失敗しても、CCP が標準のウェブブラウザの音声にフォールバックすることはありません。つまり、次のようになります。

    • エージェントが Omnissa VM の外部で CCP にアクセスすると、通話は失敗します。

    • CCP 開発者は、このパラメータを設定する前に、CCP が Omnissa VM 内で実行されているかどうかを判断する必要があります。

    実装オプション

    1. Omnissa でのアクセスと Omnissa 以外でのアクセスに個別の URL パスを使用します。

    2. URL パラメータを使用して環境を決定します。

    3. API を実装して、ユーザーコンテキストに基づいて正しい設定を決定します。

通話中のシンクライアントと Amazon Connect の間のメディアフローを確認する方法

  1. Omnissa Horizon WebRTC ブラウザ拡張機能が有効で、準備完了状態であることを確認します。

  2. ブラウザツールバーの拡張機能アイコンを確認します。

    1. 青いアイコンは、準備完了状態であり適切に機能することを示します。

    2. グレーのアイコンは、準備中状態であり潜在的な問題があることを示します。

    次の図は、Omnissa Horizon WebRTC ブラウザ拡張機能が有効で準備完了状態の場合を示しています。

    Omnissa Horizon WebRTC ブラウザ拡張機能が有効になっている場合。
  3. プロセスのステータスを確認します。

    1. タスクマネージャーを開きます。

    2. html5server.exe および wsnm.exe プロセスが実行されていることを確認します。

    3. これらのプロセスが通話中に実行されたままであることを確認します。いずれかのプロセスがクラッシュすると、VDI 機能は失敗します。

  4. 音声フローをテストします。

    1. テスト通話を行います。

    2. VM のブラウザでマイクへのアクセスを無効にして、音声最適化を検証します。音声がローカルで処理されている間も通話は引き続き機能します。

    3. 音声の遅延や品質の問題がないか確認します。

  5. Wireshark を使用して以下の手順で確認を行います。

    Wireshark は、無料のオープンソースのネットワークパケットアナライザーです。詳細については、Wireshark のウェブサイトを参照してください。

    1. ここから Wireshark をダウンロードします。

    2. Wireshark をインストールしたら、シンクライアントで Wirehark を開き、ローカルネットワークのモニタリングを開始します。

    3. 通話に接続し、上部のフィルターバーに次のフィルターを入力します。

      (udp.srcport == 3478 or udp.dstport == 3478) and ((ip.dst_host = "15.193.6.0/24"))
    4. エージェントのマシンと Amazon Connect の間のメディアパケットフローが表示されていることを確認します。

    5. パケットが表示されない場合は以下を行います。

      • ネットワーク接続とファイアウォールのルールを確認します。

      • 音声の最適化設定を確認します。

    注記

    上記の IP 範囲は、米国東部 (バージニア北部) の AWS リージョン用です。他のリージョンの IP 範囲については、「ネットワークをセットアップする」を参照してください。

    次の図は、IP 範囲を示しています。

    Omnissa Horizon WebRTC ブラウザ拡張機能が有効になっている場合。
  6. コンソールのログ記録

    1. Windows の場合: ブラウザの開発者ツール (F12) を開きます。

    2. Omnissa の初期化を確認する WebRTC 関連のメッセージ、RTC.js is using OmnissaVDIStrategy を探します。

      以下に示しているのは、確認メッセージの一例です。

      { "component": "softphone", "level": "LOG", "text": " RTC.js is using OmnissaVDIStrategy", "time": "2025-04-03T20:47:40.460Z", "exception": null, "objects": [], "line": 64, "agentResourceId": "20c6b5a3-259e-4e18-a8a7-b962d54a6344", "loggerId": "1743713238678-pz6yp1q4n9s", "contextLayer": "CRM" },

制限

以下の CCP 設定はサポートされていません。

  • ネイティブ CCP: ネイティブ CCP での音声最適化はサポートされていません。同じ設定を使用して処理された通話については、引き続きメディアが VM 内のブラウザを介して送信されます。

  • Salesforce CTI Adapter: VDI プラットフォームの検出をサポートしていないため、クライアント側で音声処理を最適化する代わりに、VM のブラウザを介してメディアがルーティングされます。