Использование процесса Edge WebView2 для размещения веб-приложений

Элемент управления браузером Edge WebView2 Process размещает элементы управления в отдельных экземплярах обработки WebView2 Edge и отображает их на вкладках в клиентском приложении Unified Service Desk. Он обеспечивает предсказуемую и безопасную отрисовку страниц, гарантируя, что если ваше веб-приложение работает в Microsoft Edge, оно будет работать и в Unified Service Desk.

Преимущества использования метода размещения edge WebView2 Process приведены следующим образом:

  • Доступно в поддерживаемых версиях операционной системы Windows
  • Высоконадежные
  • Легко настроить размещение приложений в Unified Service Desk
  • Простое переключение из одного браузера в другой для всей организации
  • Улучшенная оптимизация производительности и памяти

Кроме того, администраторы могут выполнять следующие действия:

  • Выберите Edge WebView2 Process в качестве типа хостинга для организации.
  • Выберите Edge WebView2 Process в качестве типа размещения для выбора веб-приложений вместе с процессом Chrome.

Параметры процесса Edge WebView2

Для размещения приложений можно задать процесс Edge WebView2 в размещенных элементах управления (существующие и новые размещенные элементы управления). Это позволяет выбрать размещенные элементы управления, использующие процесс Edge WebView2 в соответствии с вашими требованиями. Дополнительные сведения. Создание размещенного элемента управления с типом размещения как Edge WebView2

Если вы хотите настроить процесс Edge WebView2 для размещения приложений для всей организации, используйте параметр GlobalBrowserMode Global UII и укажите значение EdgeWebView2. Дополнительные сведения: включение Edge WebView2 для всей организации

Если вы хотите задать процесс Edge WebView2 только для некоторых агентов в организации, в файлеUnifiedServiceDesk.exe.config на клиентских рабочих столах добавьте ключ GlobalBrowserMode со значением EdgeWebView2. Дополнительные сведения. Включение Edge WebView2 для Unified Service Desk на клиентских компьютерах

Включение процесса Edge WebView2

Процесс Edge WebView2 можно включить любым из следующих способов:

  • Создайте отдельный размещенный элемент управления с типом размещения Edge WebView2 Process.
  • Включите его для отдельных клиентских рабочих столов.
  • Включите его для всей организации.

Порядок приоритета

  • Задание параметра GlobalBrowserMode Global UII в качестве EdgeWebView2 имеет приоритет над отдельными параметрами размещенного элемента управления.

    Например, некоторые размещенные элементы управления имеют тип размещения EdgeWebView2. На уровне организации вы задаете значение параметра GlobalBrowserMode Global UII в качестве EdgeWebView2. В этом сценарии параметр Global UII имеет приоритет, а конфигурация использует процесс Edge WebView2 для размещения приложений.

  • Задание ключа GlobalBrowserMode в EdgeWebView2 в файле UnifiedServiceDesk.exe.config для определенного клиентского рабочего стола имеет приоритет над отдельными параметрами размещенного элемента управления.

    Например, некоторые размещенные элементы управления имеют тип размещения edgeWebView2. Для нескольких агентов ключ GlobalBrowserMode имеет значение EdgeWebView2 в файлеUnifiedServiceDesk.exe.config на клиентских компьютерах. Значение, заданное в файлеUnifiedServiceDesk.exe.config , имеет приоритет, а конфигурация использует Edge WebView2 Process для размещения приложений.

  • Задание ключа GlobalBrowserMode на EdgeWebView2 в файле UnifiedServiceDesk.exe.config для определенного клиентского рабочего стола имеет приоритет над другими параметрами.

Создание размещенного элемента управления с типом размещения как Edge WebView2

  1. Выполните вход в Dynamics 365.

  2. Перейдите в раздел "Параметры>Unified Service Desk".

  3. Выберите размещенные элементы управления. На странице отображаются доступные размещенные элементы управления.

  4. Выберите Создать.

  5. На странице "Новый размещенный элемент управления" укажите сведения и выберите "Процесс Edge WebView2" в раскрывающемся списке "Тип размещения ".

    Размещенный элемент управления Edge WebView2.

  6. Нажмите кнопку "Сохранить".

Включение Edge WebView2 для Unified Service Desk на клиентском рабочем столе

  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. На странице параметров активного пользовательского интерфейса нажмите кнопку "Создать".

  4. В поле "Глобальный параметр" выберите "Другие".

  5. В поле "Имя" введите GlobalBrowserMode.

  6. В поле "Значение " введите EdgeWebView2.

  7. Нажмите кнопку "Сохранить".

Действие RunScript асинхронно в процессе Edge WebView2

Браузер Microsoft Edge поддерживает только асинхронные операции, а действие RunScript будет асинхронным. Если выполнение пользовательского кода зависит от возвращаемого значения, предоставленного действием RunScript, которое внедряет JavaScript в основной кадр приложения, выполнение пользовательского кода может завершиться ошибкой.

Например, предположим, что в пользовательском коде есть действие RunScript, которое внедряет JavaScript в основной кадр приложения, за которым следует операция или другое действие RunScript. Действие RunScript вызывается и возвращает значение после внедрения JavaScript. Если следующая операция или другое действие RunScript выполняется на основе возвращаемого значения, предоставленного выполненным действием RunScript, последующие операции пользовательского кода завершаются ошибкой.

Пример сценария

Всякий раз, когда вы открываете дело, необходимо проверить, открыт ли случай в течение 10 или более дней, а затем отобразить сообщение в диалоговом окне. При выполнении действия в диалоговом окне страница телефонного звонка открывается для дальнейших операций.

Для выполнения этого сценария необходимо выполнить вызов действия, который выполняет действие RunScript и возвращает значение для следующей операции. Данные о вызове действия вычисляют количество дней, в течение которых был открыт случай.

Теперь вы создаете вызов действия с действием ExecuteOnDataAvailable, а поле данных должно иметь возвращаемое значение первого вызова действия. То есть возвращаемое значение будет иметь форму [[$Return.ActionCallName]]. Это гарантирует, что после выполнения первого действия и возврата будет выполнен вызов этого действия.

Затем вы создадите последующий вызов действия, чтобы показать количество дней, когда дело было в открытом состоянии. Поле данных будет использовать возвращаемое значение из первого вызова действия, то есть [[$Return.ActionCallName]].

Вы создаете еще один вызов действия, чтобы открыть страницу телефонного звонка и выполнить следующую операцию. После просмотра сообщения нажмите кнопку "ОК " в диалоговом окне, и это приводит к открытию страницы телефонного звонка.

Давайте посмотрим, какие конфигурации необходимо создать для этого сценария.

Шаг 1. Создание размещенного элемента управления

  1. Перейдите к параметрам размещенных>элементов управления Unified>.

  2. Выберите Создать.

  3. Добавьте следующие сведения и сохраните размещенный элемент управления.

    Поле Ценность
    Имя Инцидент
    Отображаемое имя [[incident.title]]
    Тип компонента Unified Service Desk Страница единого интерфейса
    Тип размещения Процесс Edge WebView2
    Группа отображения MainPanel

Шаг 2. Создание двух вызовов действий

  1. Перейдите к параметрам вызовов>действий>.

  2. Выберите Создать.

  3. Добавьте следующие сведения и сохраните вызов действия.

    Поле Ценность
    Имя FindNoOfDaysCaseBeingOpened
    Заказ 1
    Размещенный элемент управления Инцидент
    Действие RunScript
    Данные function 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("[инцидент.createdon]]");
  4. Повторите шаги 2 и 3, чтобы создать другой вызов действия, на этот раз с помощью следующих сведений.

    Поле Ценность
    Имя DaysValue
    Заказ 2
    Размещенный элемент управления Глобальный менеджер CRM
    Действие ExecuteOnDataAvailable
    Данные [[$Return.FindNoOfDaysCaseBeingOpened]]

Шаг 3. Создание двух вызовов действий и их добавление в вызов действия DaysValue

  1. Перейдите к параметрам вызовов>действий>.

  2. Выберите Создать.

  3. Добавьте следующие сведения и сохраните вызов действия.

    Поле Ценность
    Имя DisplayMessageForCaseOpen
    Размещенный элемент управления Глобальный менеджер CRM
    Действие DisplayMessage
    Данные text=No days case is in open state: [[$Return.FindNoOfDaysCaseBeingOpened]]
    caption=Case открыт
  4. Повторите шаги 2 и 3, чтобы создать другой вызов действия, на этот раз с помощью следующих сведений.

    Поле Ценность
    Имя OpenPhoneCallPage
    Размещенный элемент управления PhoneCall
    Действие New_CRM_Page
    Данные LogicalName=phonecall
    description=Long pending case более 9 дней
    subject=Long pending case
    Состояние "[[$Return.FindNoOfDaysCaseBeingOpened]">9
  5. В списке вызовов действий выберите вызов действия DaysValue .

  6. На панели навигации рядом с вызовом действия DaysValue выберите закрывающая угловая скобка (>), а затем выберите "Подзвонок действия".

  7. Выберите "ДОБАВИТЬ СУЩЕСТВУЮЩИЙ ВЫЗОВ ДЕЙСТВИЯ". В поле поиска введите DisplayMessageForCaseOpen и щелкните значок поиска.

  8. Выберите отображаемый вызов действия.

  9. Повторите шаги 7 и 8, на этот раз введя OpenPhoneCallPage для вызова действия.

  10. Сохраните изменения.

Шаг 4. Добавление вызовов действия к событию PageReady

  1. Перейдите к параметрам>событий>.

  2. Выберите событие PageReady для элемента управления "Инцидент ", размещенного в списке событий.

  3. На странице событий в области "Активные действия " выберите знак плюса (+), чтобы добавить вызовы действий.

  4. В появившемся поле поиска введите FindNoOfDaysCaseBeingOpened, щелкните значок поиска и выберите вызов действия. Вызов действия отображается в области "Активные действия ".

  5. Повторите шаг 4, на этот раз введите DaysValue в поле поиска.

  6. Сохраните изменения.

Выход из сеансов при использовании процесса Edge WebView2

Чтобы выйти из сеансов при использовании процесса Edge WebView2, необходимо настроить URL-адрес выхода с помощью действия Навигации в размещенном элементе управления. Например, URL-адрес выхода для приложения url=/main.aspx?signout=1на основе модели.

Включение диалогового окна подтверждения с помощью процесса Edge WebView2

Если вы выполняете действие на вкладке приложения в сеансе Unified Service Desk и закрываете сеанс, параметр EdgeWebView2ConfirmationDialog UII отобразит диалоговое окно, чтобы подтвердить сохранение и закрытие сеанса.

Диалоговое окно подтверждения отображается, если этот параметр UII добавлен или значение задано как True. Если этот параметр не добавлен или значение задано как false, диалоговое окно подтверждения не отображается.

Добавление параметра UII EdgeWebView2ConfirmationDialog

  1. Выполните вход в экземпляр Dynamics 365.

  2. Перейдите к параметрам>службы Unified Service Desk>.

  3. На странице параметров активного пользовательского интерфейса нажмите кнопку "Создать".

  4. В поле "Глобальный параметр" выберите "Другие".

  5. В поле "Имя" введите EdgeWebView2ConfirmationDialog. В поле "Значение" введите True.

  6. Нажмите кнопку "Сохранить".

Обработка протокола URI в процессе Edge WebView2

При использовании процесса Edge WebView2 может потребоваться заблокировать навигацию по протоколу в клиентском приложении Unified Service Desk или открыть приложение в отдельном окне за пределами клиентского приложения Unified Service Desk. Используйте правила навигации окна для блокировки или открытия приложения вне клиентского приложения Unified Service Desk.

Добавьте URL-адрес в правила навигации окна и задайте для действия значение"Нет ", чтобы заблокировать навигацию или задать для него значение "Показать вне" , чтобы отобразить приложение за пределами клиентского приложения Unified Service Desk.

Например, предположим, что вы интегрировали softphone с Unified Service Desk и используете тип размещения Edge WebView2 для размещения веб-приложений. Когда агент выбирает номер телефона на странице контакта или учетной записи, вы хотите инициировать звонок с помощью обратимого телефона вместо Skype. Вы создадите правило навигации окна и задайте для действия значение"Нет ", чтобы заблокировать протокол Skype. Вы можете создать определенные вызовы действий в качестве последующих вызовов этого правила навигации окна, чтобы инициировать вызов с помощью обратимого телефона.

Создание правила навигации окна

  1. Выполните вход в экземпляр Dynamics 365.

  2. Разверните Dynamics 365.

  3. Выберите Администратор Unified Service Desk.

  4. В разделе "Основные параметры" выберите "Правила навигации по окнам".

  5. На странице "Правила навигации в активном окне" нажмите кнопку "Создать".

  6. Укажите следующие значения на странице "Новые правила навигации окна ".

    вкладка Поле Ценность
    General Имя Телефонный протокол

    или

    Протокол Skype
    General URL-адрес Тель:

    или

    Скайп:
    Result Тип маршрута Всплывающее окно
    Result Действие Нет или показать за пределами
  7. Нажмите кнопку "Сохранить".

Теперь, когда агент выбирает номер на странице контакта или учетной записи в зависимости от правила навигации окна, блоки обработки Edge WebView2 или открывает приложение за пределами клиентского приложения Unified Service Desk.

Настройка фокуса на веб-странице при использовании процесса Edge WebView2

При использовании процесса Edge WebView2, если вы хотите настроить фокус на веб-странице автоматически, необходимо создать вызов действия с действием в качестве функции RunScript и Data в качестве функции JavaScript: window.top USDEdgeWebView2SetFocus() После создания вызова действия добавьте его в событие PageReady для страницы единого интерфейса и в событие BrowserDocumentComplete для размещенного элемента управления CRM Page .

Изменение PDF-файла в процессе Edge WebView2

Процесс Edge WebView2 поддерживает возможность редактирования PDF-файла в строке, если pdf-файл имеет редактируемые поля.

Включение поддержки языка в процессе Edge WebView2

Процесс Edge WebView2 поддерживает возможность переключения языков на веб-страницы в Unified Service Desk. Чтобы переключить языки, необходимо добавить параметр UII EdgeWebView2Language .

Добавление параметра UII EdgeWebView2Language

  1. Выполните вход в экземпляр Dynamics 365.

  2. Перейдите в раздел "Параметры>Unified Service Desk".

  3. Выберите параметры.

  4. На странице параметров активного пользовательского интерфейса нажмите кнопку "Создать".

  5. В поле "Глобальный параметр" выберите "Другие".

  6. В поле "Имя" введите EdgeWebView2Language.

  7. В поле "Значение" введите код языкового стандарта. Дополнительные сведения: коды языков

    Замечание

    Поддерживаются только языковые стандарта, доступные в пути <C:\Program Files\Microsoft Dynamics CRM USD\USD\locales> .

  8. Нажмите кнопку "Сохранить".

Добавление параметров с помощью процесса Edge WebView2

Браузер Microsoft Edge предоставляет множество вариантов, которые можно использовать на веб-страницах в Unified Service Desk. Параметр EdgeWebView2AdditionalBrowserArguments помогает добавить параметры.

Добавление параметра UII EdgeWebView2AdditionalBrowserArguments

  1. Выполните вход в экземпляр Dynamics 365.

  2. Перейдите в раздел "Параметры>Unified Service Desk".

  3. Выберите параметры.

  4. На странице параметров активного пользовательского интерфейса нажмите кнопку "Создать".

  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, работающим на рабочем столе удаленно, необходимо иметь удаленный доступ к отладке вместе с номером порта.

Используйте параметр UII EdgeWebView2RemoteDebuggingPort и добавьте номер порта в качестве значения. После установки этого значения в веб-браузере перейдите к <IP address>:<\port number> удаленному рабочему столу. Вы можете просмотреть все экземпляры процесса Edge WebView2, работающие на этом рабочем столе, а затем продолжить отладку.

Локальный процесс Отладки Edge WebView2

Если вы хотите получить доступ ко всем экземплярам процесса Edge WebView2, работающим на рабочем столе локально, необходимо иметь доступ вместе с номером порта для подключения.

Используйте параметр UII EdgeWebView2RemoteDebuggingPort и добавьте номер порта в качестве значения. После установки этого значения в веб-браузере перейдите к localhost:<\port number> локальному рабочему столу. Вы можете просмотреть все экземпляры процесса Edge WebView2, работающие на этом рабочем столе, а затем продолжить отладку.

Кроме того, в клиентском приложении Unified Service Desk можно выполнить отладку экземпляра процесса Edge WebView2 с помощью сочетания клавиш F12 для открытия средств разработчика. Дополнительные сведения: управление параметрами в Unified Service Desk

Добавление параметра UII EdgeWebView2RemoteDebuggingPort

  1. Выполните вход в экземпляр Dynamics 365.

  2. Перейдите к параметрам>службы Unified Service Desk>.

  3. На странице параметров активного пользовательского интерфейса нажмите кнопку "Создать".

  4. В поле "Глобальный параметр" выберите "Другие".

  5. В поле "Имя" введите EdgeWebView2RemoteDebuggingPort. В поле "Значение " введите номер порта (например, 1030).

  6. Нажмите кнопку "Сохранить".

См. также

Создание или изменение размещенного элемента управления
Типы размещенных элементов управления и ссылки на действие/событие
Управление размещенными элементами управления, действиями и событиями