次の方法で共有


Edge WebView2 Process を使用して Web アプリケーションをホストする

Edge WebView2 プロセス ブラウザー コントロールは、個々の Edge WebView2 Process インスタンス内でコントロールをホストし、それらを Unified Service Desk クライアント アプリケーションのタブに表示します。 ご利用の Web アプリケーションが Microsoft Edge で動作する場合に、Unified Service Desk でも動作することを確認することで、予測可能なページ レンダリングが容易になります。

Edge WebView2 プロセスのホスト方法を使用する利点は次のとおりです:

  • サポートされているバージョンの Windows オペレーティング システムで使用できます
  • 信頼性が高い
  • 簡単に構成でき、Unified Service Desk でアプリケーションをホストできます
  • 組織全体で、1 つのブラウザーから別のブラウザーにシームレスに切り替わります
  • パフォーマンス強化とメモリ最適化

また、管理者は次のことを実行できます。

  • 組織のホスティングの種類として Edge WebView2 Process を選択する。
  • Chrome Process とともに、選択した Web アプリケーションのホスティングの種類として Edge WebView2 Process を選択する。

Edge WebView2 プロセスの設定

アプリケーションをホストするためのホストされたコントロール (既存のホストされたコントロールと新しいホストされたコントロール) で Edge WebView2 Process を設定できます。 これにより、要件に基づいて Edge WebView2 Process を使用するホストされたコントロールを選択することができます。 詳細: ホスティングの種類が Edge WebView2 のホストされたコントロールを作成する

すべての組織においてアプリケーションをホストするための Edge WebView2 Process を設定する場合、GlobalBrowserMode グローバル UII オプションを使用して、Edge WebView2 Process に値を指定します。 詳細: 組織全体で Edge WebView2 を有効にする

組織で一部のエージェントにのみ Edge WebView2 Process を設定する場合、UnifiedServiceDesk.exe.config ファイルで値が Edge WebView2GlobalBrowserMode キーを追加します。 詳細: クライアント デスクトップで Unified Service Desk 用の Edge WebView2 を有効にする

Edge WebView2 プロセスの有効化

次のいずれかの方法で Edge WebView2 Process を有効にできます。

  • ホストの種類が Edge WebView2 Process である個別のホストされたコントロールを作成します。
  • 個々のクライアント デスクトップを有効にします。
  • 組織全体で有効にします。

優先順位

  • GlobalBrowserMode グローバル UII オプションの値を EdgeWebView2 に設定すると、個々にホストされたコントロールの設定より優先されます。

    たとえば、一部のホストされたコントロールでは、ホスティングタイプが EdgeWebView2 に設定されています。 組織レベルでは、GlobalBrowserMode グローバル UII オプションの値を EdgeWebView2 に設定します。 このシナリオでは、グローバル UII オプションが優先され、構成は Edge WebView2 Process を使用してアプリケーションをホストします。

  • 特定のクライアント デスクトップの UnifiedServiceDesk.exe.config ファイルで GlobalBrowserMode キーを EdgeWebView2 に設定すると、個々のホストされたコントロール構成より優先されます。

    たとえば、一部のホストされたコントロールでは、ホスティングタイプが EdgeWebView2 に設定されています。 いくつかのエージェントについては、クライアント デスクトップの UnifiedServiceDesk.exe.config ファイルで GlobalBrowserMode モード キーを EdgeWebView2 に設定しました。 UnifiedServiceDesk.exe.config ファイルで設定された値が優先され、構成は Edge WebView2 Process を使用してアプリケーションをホストします。

  • 特定のクライアント デスクトップの UnifiedServiceDesk.exe.config ファイルで GlobalBrowserMode キーを EdgeWebView2 に設定すると、他の設定より優先されます。

ホスティングの種類が Edge WebView2 のホストされたコントロールを作成する

  1. Dynamics 365 にサインインします。

  2. 設定>Unified Service Desk に移動します。

  3. ホストされたコントロール を選択します。 使用可能なホストされたコントロールがページに表示されます。

  4. 新規をクリックします。

  5. 新しいホストされたコントロール ページで、詳細を指定し、ホスティングの種類 ドロップダウン リストから Edge WebView2 Process を選択します。

    Edge WebView2 Process のホストされたコントロール。

  6. 保存 を選びます。

クライアント デスクトップで Unified Service Desk 用の Edge WebView2 を有効にする

  1. Unified Service Desk がインストールされたディレクトリに移動し、ダブルクリックして UnifiedServiceDesk.exe.config ファイルを開きます。
    パスの例 : C:\Program Files\Microsoft Dynamics CRM USD\USD

  2. <appSettings> セクションで、新しいキーを追加します。
    <add key="GlobalBrowserMode" value="EdgeWebView2"/>

  3. ファイルを保存します。

組織全体で Edge WebView2 を有効にする

  1. Dynamics 365 にサインインします。

  2. 設定>Unified Service Desk>オプション に移動します。

  3. アクティブな UII オプション ページで、新規を選択します。

  4. グローバル オプション フィールドで、その他を選択します。

  5. 名前 フィールドに、GlobalBrowserMode と入力します。

  6. 数値フィールドに、EdgeWebView2 と入力します。

  7. 保存を選択します。

RunScript アクションは EdgeWebView2 プロセスで非同期

Microsoft Edge ブラウザーでは非同期処理のみサポートされ、RunScript アクションは非同期になります。 カスタム コード実行がアプリケーションのメインフレームに JavaScript を挿入する RunScript アクションにより提供される戻り値に依存している場合は、カスタム コードの実行が失敗する可能性があります。

たとえば、処理または別の RunScript アクションが続くアプリケーションのメインフレームに JavaScript を挿入する RunScript アクションがカスタム コードにあるとします。 RunScript アクションは、JavaScript インジェクション後に呼び出されて値を返します。 後続の操作、または別の RunScript アクションが、実行された RunScript アクションによって提供される戻り値に基づいて実行される場合、カスタム コードのその後の処理が失敗します。

シナリオの例

サポート案件を開いたら必ずサポート案件が 10 日以上開いているかどうかを確認し、ダイアログにメッセージを表示します。 ダイアログでアクションを実行すると、電話のページがその後の処理で開きます。

このシナリオを実行するには、RunScript アクションを実行し、次の操作の値を返すアクション呼び出しが必要です。 アクション呼び出しのデータは、サポート案件が開いている日数を計算します。

ExecuteOnDataAvailable のアクションを持つアクション コールが作成されたので、データ フィールドには、最初のアクション コールの戻り値が必要です。 つまり、戻り値にはフォーム [[$Return.ActionCallName]] があります 。 これにより、最初のアクションが実行されて戻り値が使用可能になると、このアクション コールが必ず実行されます。

次に、サポート案件がオープン状態になっている日数を示すために次のアクション コールを作成する必要があります。 データ フィールドは、最初のアクション コールからの戻り値、つまり [[$Return.ActionCallName]] を使用します。

電話のページを開き、別の操作を実行するには、別のサブ アクション コールを作成します。 メッセージが表示されたら、ダイアログの OK を選択すると、電話ページが開きます。

このシナリオではどのような構成を作成する必要があるかを見てみましょう。

手順 1: ホストされたコントロールを作成する

  1. 設定>Unified Service Desk>ホストされたコントロールの順に移動します。

  2. 新規をクリックします。

  3. 以下の情報を追加して、ホストされたコントロールを保存します。

    フィールド
    件名 インシデント
    表示名 [[incident.title]]
    Unified Service Desk コンポーネントの種類 統一インターフェイス ページ
    ホストの種類 Edge WebView2 プロセス
    表示グループ MainPanel

手順 2: 2 つのアクション コールを作成する

  1. 設定>Unified Service Desk>アクション コール に移動します。

  2. 新規をクリックします。

  3. 以下の情報を追加して、アクション コールを保存します。

    フィールド
    件名 FindNoOfDaysCaseBeingOpened
    受注 1
    ホストされたコントロール インシデント
    目的 RunScript
    データ 関数 findAge(dateString)
    {
    if("[[incident.statuscode]]".indexOf("1") > -1){
    var date1 =new Date(dateString);
    var date2 =new Date();
    var timeDiff = Math.abs(date2.getTime() - date1.getTime());
    var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
    return diffDays.toString();
    }
    return 0;
    }
    findAge("[[incident.createdon]]");
  4. 手順 2 と 3 を繰り返し、今度は次の詳細を使用して、別のアクション コールを作成します。

    フィールド
    件名 DaysValue
    並べ替え 2
    ホストされたコントロール CRM グローバル マネージャー
    目的 ExecuteOnDataAvailable
    データ [[$Return.FindNoOfDaysCaseBeingOpened]]

手順 3: 2 つのアクション コールを作成し、DaysValue アクション コールに追加します。

  1. 設定>Unified Service Desk>アクション コール に移動します。

  2. 新規をクリックします。

  3. 以下の情報を追加して、アクション コールを保存します。

    フィールド
    件名 DisplayMessageForCaseOpen
    ホストされたコントロール CRM グローバル マネージャー
    目的 DisplayMessage
    データ text=ケースがオープン状態になっている日数: [[$Return.FindNoOfDaysCaseBeingOpened]]
    caption=ケースがオープン
  4. 手順 2 と 3 を繰り返し、今度は次の詳細を使用して、別のアクション コールを作成します。

    フィールド
    件名 OpenPhoneCallPage
    ホストされたコントロール PhoneCall
    目的 New_CRM_Page
    データ LogicalName=電話
    description=長期間 (9 日以上) 保留中のサポート案件
    件名 = 長期間保留中のサポート案件
    状態 "[[$Return.FindNoOfDaysCaseBeingOpened]]">9
  5. アクション コールの一覧から、DaysValue アクション コールを選択します。

  6. DaysValue アクション コールの横のナビゲーション バーで、終了山かっこ (>) を選択してから、サブ アクション コール を選択します。

  7. 既存のアクション コールを追加を選択します。 検索フィールドに DisplayMessageForCaseOpen と入力し、検索アイコンを選択します。

  8. 表示されるアクション コールを選択します。

  9. 手順 7 と 8 を繰り返し、今度はアクション コールに対して OpenPhoneCallPage と入力します。

  10. 変更を保存します。

手順 4: アクション コールを PageReady イベントに追加します。

  1. 設定>Unified Service Desk>イベントの順に移動します。

  2. イベントの一覧から サポート案件 のホストされたコントロールの PageReady イベントを選択します。

  3. イベント ページの アクティブ アクション 領域で、プラス記号 (+) を選択してアクション コールを追加します。

  4. 表示された検索ボックスに、FindNoOfDaysCaseBeingOpened と入力し、検索アイコンを選択してからアクション コールを選択します。 アクション コールが アクティブなアクション 領域に表示されます。

  5. 手順 4 を繰り返し、今度は検索ボックスに DaysValue と入力します。

  6. 変更を保存します。

Edge WebView2 Process を使用する場合はセッションからサインアウト

Edge WebView2 Process を使用してセッションからサインアウトするには、ホストされたコントロールで 移動 操作を使用してサインアウト URL を設定する必要があります。 たとえば、モデル駆動型アプリのサインアウト URL は url=/main.aspx?signout=1 です。

Edge WebView2 プロセスによる確認ダイアログ ボックスの有効化

Unified Service Desk セッション内のアプリ タブでアクションを実行してセッションを閉じると、EdgeWebView2ConfirmationDialog UII オプションに、セッションの保存と終了を確認できるダイアログが表示されます。

この UII オプションが追加されているか、値が True と設定されている場合、確認ダイアログが表示されます。 この UII オプションが追加されているか、値が False に設定されている場合、確認ダイアログは表示されません。

EdgeWebView2ConfirmationDialog UII オプションを追加するには

  1. Dynamics 365 インスタンスにサインインします。

  2. 設定>Unified Service Desk>オプション に移動します。

  3. アクティブな UII オプション ページで、新規を選択します。

  4. グローバル オプション フィールドで、その他を選択します。

  5. 名前フィールドに、EdgeWebView2ConfirmationDialog と入力します。 数値フィールドに、True と入力します。

  6. 保存を選択します。

Edge WebView2 プロセスでの URI プロトコルの処理

Edge WebView2 プロセスを使用する時に、Unified Service Desk クライアント アプリケーション内のプロトコル ナビゲーションをブロックしたり、Unified Service Desk クライアント アプリケーション外の別のウィンドウでアプリケーションを開いたりすることができます。 ウィンドウ ナビゲーション ルールを使用して、Unified Service Desk クライアント アプリケーションの外部のアプリケーションをブロックまたは開きます。

ウィンドウ ナビゲーション ルールに URL を追加してアクションなしに設定し、ナビゲーションをブロックして外部の表示に設定し、Unified Service Desk クライアント アプリケーションの外部のアプリケーションを表示します。

たとえば Unified Service Desk に Softphone を統合し、Edge WebView2 ホスティングの種類を使用して Web アプリケーションをホストするとします。 エージェントが連絡先、または取引先企業のページで電話番号を選択した場合、Skype ではなくソフトフォンを使って通話を開始する場合。 ウィンドウ ナビゲーション ルールを作成して 操作なし に設定し、Skype プロトコルをブロックします。 特定のアクション コールをこのウィンドウ ナビゲーション ルールの次のアクション コールとして作成し、Softphone で通話を開始することで通話を開始できます。

ウィンドウのナビゲーション ルールを作成する

  1. Dynamics 365 インスタンスにサインインします。

  2. Dynamics 365を展開します。

  3. Unified Service Desk 管理者 を選択します

  4. 基本設定 から ウィンドウ ナビゲーション ルール を選択します。

  5. アクティブなウィンドウ ナビゲーション ルール ページで 新規 を選択します。

  6. 新しいウィンドウ ナビゲーション ルール ページで、次の値を指定します。

    タブ フィールド Value
    全般 Name 電話プロトコル

    または

    Skype プロトコル
    全般 Url 電話:

    または

    skype:
    結果 ルーティングの種類 ポップアップ
    結果 操作​​ [なし] または [外部に表示]
  7. 保存を選択します。

これでエージェントがウィンドウ ナビゲーション ルールに基づいて取引先担当者ページや取引先企業ページで番号を選択すると、Edge WebView2 プロセスは Unified Service Desk クライアント アプリケーション外でアプリケーションをブロックまたは開きます。

Edge WebView2 Process の使用時にウェブページのフォーカスを設定する

Edge WebView2 Process を使用すると、Web ページに自動的にフォーカスを設定したい場合は、JavaScript 関数 - window.top USDEdgeWebView2SetFocus()RunScriptデータ としてアクション コールを作成する必要があります。 アクション コールを作成した後、統一インターフェイス ページなら PageReady イベントに、CRM ページ のホストされたコントロールなら BrowserDocumentComplete イベントに追加します。

Edge WebView2 プロセスでの PDF の編集

Edge WebView2 Process は、PDF に編集可能なフィールドがある場合、PDF ファイルをインラインで編集する機能をサポートしています。

Edge WebView2 プロセスでの言語サポートの有効化

Edge WebView2 Process は、Unified Service Desk 内の Web ページで言語を切り替える機能をサポートしています。 言語を切り替えるには、EdgeWebView2Language UII オプションを追加する必要があります。

EdgeWebView2Language UII オプションを追加するには

  1. Dynamics 365 インスタンスにサインインします。

  2. 設定>Unified Service Desk に移動します。

  3. オプションを選択します。

  4. アクティブな UII オプション ページで、新規を選択します。

  5. グローバル オプション フィールドで、その他を選択します。

  6. 名前 フィールドに EdgeWebView2Language と入力します。

  7. フィールドに、ロケールコードを入力します。 詳細情報: 言語コード

    Note

    パス <C:\Program Files\Microsoft Dynamics CRM USD\USD\locales> で使用可能なロケールのみがサポートされています。

  8. 保存 を選びます。

Edge WebView2 プロセスを使用してパラメータを追加する

Microsoft Edge ブラウザには、Unified Service Desk 内の Web ページで使用できる多くのオプションが用意されています。 EdgeWebView2AdditionalBrowserArguments オプションは、パラメーターを追加する際に役立ちます。

EdgeWebView2AdditionalBrowserArguments UII オプションに追加するには

  1. Dynamics 365 インスタンスにサインインします。

  2. 設定>Unified Service Desk に移動します。

  3. オプションを選択します。

  4. アクティブな UII オプション ページで、新規を選択します。

  5. グローバル オプション フィールドで、その他を選択します。

  6. 名前 フィールドに EdgeWebView2AdditionalBrowserArguments と入力します。

  7. フィールドに、有効な Edge WebView2 プロセスのパラメータを入力します。

    パラメータを追加する形式は次のとおりです :
    --force-ui-direction:rtl;--force-text-direction:rtl;--log-level:3

    パラメータはセミコロンで区切られていることに注意してください。 詳細情報 : Chromium コマンドラインスイッチ

  8. 保存 を選びます。

Edge WebView2 プロセスをデバッグする

ふたつの方法で Edge WebView2 プロセスをデバッグできます:

  • リモートで

  • ローカルで

リモートで Edge WebView2 プロセスをデバッグする

デスクトップで実行されているすべての Edge WebView2 プロセス インスタンスにリモートでアクセスしてデバッグする場合は、リモート デバッグのアクセスに接続先のポート番号が必要となります。

EdgeWebView2RemoteDebuggingPort UII オプションを選択し、値にポート番号を追加します。 この値を設定した後、Webブラウザからリモート デスクトップの <IP address>:<\port number> に行きます。 デスクトップで実行されているすべての Edge WebView2 プロセス インスタンスを確認でき、デバッグを進めることができます。

ローカルで Edge WebView2 プロセスをデバッグする

デスクトップで実行されているすべての Edge WebView2 プロセス インスタンスにローカルでアクセスしてデバッグする場合は、アクセスに接続先のポート番号が必要となります。

EdgeWebView2RemoteDebuggingPort UII オプションを選択し、値にポート番号を追加します。 この値を設定した後、Webブラウザからローカル デスクトップの localhost:<\port number> に行きます。 デスクトップで実行されているすべての Edge WebView2 プロセス インスタンスを確認でき、デバッグを進めることができます。

また、Unified Service Desk クライアント アプリケーション内で、キーボード ショートカット F12Developer Tools を開いて Edge WebView2 プロセス インスタンスをデバッグできます。 詳細 : Unified Service Desk のオプションを管理する

EdgeWebView2RemoteDebuggingPort UII オプションを追加するには

  1. Dynamics 365 インスタンスにサインインします。

  2. 設定>Unified Service Desk>オプション に移動します。

  3. アクティブな UII オプション ページで、新規を選択します。

  4. グローバル オプション フィールドで、その他を選択します。

  5. 名前 フィールドに EdgeWebView2RemoteDebuggingPort と入力します。 フィールドに、ポート番号を入力します (例 : 1030)。

  6. 保存 を選びます。

参照

ホストされたコントロールの作成または編集
ホストされたコントロールの種類とアクション/イベント リファレンス
ホストされたコントロール、アクション、およびイベントの管理