Миграция данных для канала чата

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

Сведения о том, как использовать средство миграции конфигурации, см. в следующих статьях.

Предварительные условия

Должны быть выполнены следующие предварительные условия:

  • В исходной организации, если набор правил единой маршрутизации ссылается на следующее, убедитесь, что они существуют в целевой организации, прежде чем продолжить миграцию:
    • Настраиваемые сущности
    • Атрибуты
    • Связи
    • Наборы параметров
    • Значения подстановки
  • Убедитесь, что пользователь, выполняющий миграцию, имеет необходимые права доступа к следующим сущностям единой маршрутизации в исходной и целевой организациях:
    • Рабочий поток (msdyn_liveworkstream)
    • Конфигурация канала (msdyn_omnichannelconfiguration)
    • Рабочие часы (msdyn_operatinghour)
    • Характеристика (characteristic)
    • Модель оценки (rating model)
    • Значение оценки (ratingvalue)
    • Профиль емкости (msdyn_capacityprofile)
    • Очередь (queue)
    • Контракт решения (msdyn_decisioncontract)
    • Набор правил решения (msdyn_decisionruleset)
    • Конфигурация назначения (msdyn_assignmentconfiguration)
    • Шаг конфигурации назначения (msdyn_assignmentconfigurationstep)
    • Конфигурация маршрутизации (msdyn_routingconfiguration)
    • Шаг конфигурации маршрутизации (msdyn_routingconfigurationstep)
    • Профиль емкости рабочего потока (msdyn_liveworkstreamcapacityprofile)
    • Переменная контекста (msdyn_ocliveworkstreamcontextvariable)
    • Вопрос в опросе (msdyn_surveyquestions)
    • Последовательность вопросов в опросе (msdyn_questionsequence)
    • Вариант ответа для опроса (msdyn_chatansweroption)
    • Быстрые ответы (msdyn_cannedmessages)
    • Теги (msdyn_octags)

Внимание

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

Миграция конфигурации чата

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

  1. Миграция конфигурации с помощью решения
  2. Миграция конфигурации маршрутизации на основе навыков
  3. Миграция конфигурации для профилей емкости
  4. Миграция конфигурации для очередей чата
  5. Миграция конфигурации для рабочих потоков чата
  6. Миграция конфигурации для мини-приложений чата
  7. Проверка миграции
  8. Устранение неполадок при миграции данных

Миграция конфигурации с помощью решения

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

Миграция конфигурации на основе навыков

Если в вашей настройке единой маршрутизации используются наборы правил маршрутизации на основе навыков, выполните шаги, описанные в разделе Экспорт и импорт данных для маршрутизации на основе навыков. Убедитесь, что вы правильно настроили фильтрующий FetchXML для чата в реальном времени.

Миграция конфигурации для профилей емкости

Если вы настроили профили емкости в настройках единой маршрутизации, выполните шаги, описанные в разделе Экспорт и импорт данных для профилей емкости. Убедитесь, что вы правильно настроили фильтрующий FetchXML для чата в реальном времени.

Миграция конфигурации для очередей чата

Для переноса очередей для чата выполните шаги, описанные в разделе Миграция данных для очередей записей на основе единой маршрутизации. Убедитесь, что вы правильно настроили фильтрующий FetchXML для чата в реальном времени.

Миграция конфигурации для рабочих потоков чата

  1. Используйте инструмент миграции конфигурации, чтобы создать схему и перенести данные из исходной организации для рабочего потока записи.

    • Отображаемое имя сущности: при создании схемы выберите сущности в той же последовательности, что и указанная в таблице.
    • Отображаемое имя атрибута: рекомендуется выбирать атрибуты, определенные в следующей таблице. Вам не нужно выбирать стандартные системные атрибуты, такие как «Кем создано», «Дата создания», «Кем изменено», «Дата изменения» и «Владелец». При необходимости можно выбрать настраиваемые атрибуты.
    • Использование языка FetchXML для фильтрации записей: для каждой сущности используйте соответствующий запрос на языке FetchXML (см. следующую таблицу), чтобы получить одну, несколько или все записи в зависимости от ваших требований. Для одной или нескольких записей необходимо использовать исходную организацию, чтобы получить правильное имя в uiname и идентификатор GUID в значении. При необходимости вы можете использовать пункт меню РАСШИРЕННЫЙ ПОИСК, чтобы создать соответствующий запрос FetchXML.
    • Настроить параметры импорта: для сущности контракта решения убедитесь, что установлен флажок Не обновлять существующие записи.
  2. Убедитесь, что рабочие потоки, указанные в конфигурации мини-приложений живого чата, включены в миграцию.

    Сер. № Отображаемое имя сущности (логическое имя) Отображаемое имя атрибута (логическое имя) Использование языка FetchXML для фильтрации записей
    1. Рабочий поток (msdyn_liveworkstream)
    • Ключ API (msdyn_apikey)
    • Номер версии ключа API (msdyn_apikeyversionnumber)
    • Разрешить автоматические сообщения (msdyn_enableautomatedmessages)
    • Разрешенные присутствия (msdyn_allowedpresences)
    • Назначить рабочий элемент после отклонения или времени ожидания (msdyn_assignworkitemafterdecline)
    • Автоматически закрывать после неактивности (msdyn_autocloseafterinactivity)
    • Блокировать емкость для состояния подведения итогов (msdyn_blockcapacityforwrapup)
    • Очередь бота (msdyn_bot_queue)
    • Правило бота (msdyn_bot_rule)
    • Пользователь бота (msdyn_bot_user)
    • CallbackPreviewDialing (msdyn_notificationtemplate_callback_previewdialing)
    • Соединители (msdyn_connectorssurl)
    • Консультировать (msdyn_notificationtemplate_consult)
    • Режим разговора каналов чата (msdyn_conversationmode)
    • ИД клиента (msdyn_customerid)
    • Продолжительность удержания отключения клиента для открытого разговора (msdyn_customerdisconnectholddurationforopenconversation)
    • Емкость (msdyn_capacityrequired)
    • Формат емкости (msdyn_capacityformat)
    • Канал (msdyn_streamsource)
    • ИД контракта (msdyn_routingcontractid)
    • По умолчанию (msdyn_sessiontemplate_default)
    • Очередь по умолчанию (msdyn_defaultqueue)
    • Направление (msdyn_direction)
    • Включить выбор элементов из рабочих потоков, основанных на принудительной отправке (msdyn_enableselectingfrompushbasedworkstreams)
    • Сущность (msdyn_masterentityroutingconfigurationid)
    • Базовый язык (msdyn_fallbacklanguage)
    • Дальнейшее действие после ожидания (msdyn_followupafterwaiting)
    • Порог времени обработки (msdyn_handlingtimethreshold)
    • Входящие с проверкой подлинности (msdyn_notificationtemplate_incoming_auth)
    • Входящие без проверки подлинности (msdyn_notificationtemplate_incoming_unauth)
    • Является значением по умолчанию (msdyn_isdefault)
    • Один и тот же агент для всего разговора (msdyn_enableagentaffinity)
    • Время последней проверки (msdyn_lastvalidationon)
    • Состояние последней проверки (msdyn_lastvalidationstatus)
    • Логика соответствия (msdyn_matchinglogic)
    • Максимальный параллелизм (msdyn_maxconcurrentconnection)
    • Режим (msdyn_mode)
    • Имя (msdyn_name)
    • Уведомление (msdyn_notification)
    • Заполнитель сценария уведомлений (msdyn_notificationscenarioplaceholder)
    • Исходящая очередь (msdyn_outboundqueueid)
    • Правило идентификации записей (msdyn_recordidentificationrule)
    • Правило проверки идентификации записей (msdyn_recordidentificationvalidationrule)
    • Ограничить загрузку записи (msdyn_restrictdownloadrecording)
    • Ограничить загрузку расшифровки (msdyn_restrictdownloadtranscript)
    • Время ожидания всплывающих сообщений на экране (msdyn_screenpoptimeout)
    • Время ожидания всплывающих сообщений на экране (msdyn_screenpoptimeout_optionSet)
    • Защищенный ключ API (msdyn_secureapikey)
    • Количество правил вложений навыков (msdyn_skillattachmentrulescount)
    • Количество правил вложений навыков (обновлялось последний раз)
    • (msdyn_skillattachmentrulescount_date)
    • Количество правил вложений навыков (Состояние)
    • (msdyn_skillattachmentrulescount_state)
    • Заполнитель сценария сеансов (msdyn_sessionscenarioplaceholder)
    • SupervisorAssign (msdyn_notificationtemplate_supervisorassign)
    • Передача (msdyn_notificationtemplate_transfer)
    • Порог времени ожидания (msdyn_waitingtimethreshold)
    • Режим распределения работы (msdyn_workdistributionmode)
    • Рабочий поток (msdyn_liveworkstreamid)
    Пример 1: все рабочие потоки чата в реальном времени

    Пример 2: один рабочий поток чата в реальном времени

    Пример 3: несколько рабочих потоков чата в реальном времени
    2. Переменная контекста (msdyn_ocliveworkstreamcontextvariable)
    • Имя (msdyn_name)
    • Имя отношения (msdyn_relationshipname)
    • Тип (msdyn_datatype)
    • Рабочий поток (msdyn_liveworkstreamid)
    • IsList (msdyn_islist)
    • Изменяемое (msdyn_ismodifiable)
    • Отображаемое имя (msdyn_displayname)
    • Отображаемое (msdyn_isdisplayable)
    • Логическое имя сущности (msdyn_entitylogicalname)
    • Переменная контекста (msdyn_ocliveworkstreamcontextvariableid)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Определяется системой (msdyn_issystemdefined)
    Пример 1: переменные контекста для всех рабочих потоков

    Пример 2: переменные контекста для одного рабочего потока чата в реальном времени

    Пример 3: переменные контекста для нескольких рабочих потоков чата в реальном времени
    3. Контракт решения (msdyn_decisioncontract)
    • Определение контракта (msdyn_contractdefinition)
    • Контракт решения (msdyn_decisioncontractid)
    • Имя (msdyn_name)
    • Уникальное имя (msdyn_uniquename)
    Пример 1: контракт решения для всех рабочих потоков чата в реальном времени

    Пример 2: контракт решения для одного рабочего потока чата в реальном времени

    Пример 3: контракт решения для нескольких рабочих потоков чата в реальном времени
    4. Набор правил решения (msdyn_decisionruleset)
    • Модель AI Builder (msdyn_aibmodelid)
    • Режим разработки (msdyn_authoringmode)
    • Набор правил решения (msdyn_decisionrulesetid)
    • Описание (msdyn_description)
    • Входной контракт (msdyn_inputcontractid)
    • Входная коллекция (msdyn_isinputcollection)
    • Тип модели ML (msdyn_mlmodeltype)
    • Имя (msdyn_name)
    • Выходной контракт (msdyn_outputcontractid)
    • Выходной контракт (msdyn_rulesetdefinition)
    • Тип набора правил (msdyn_rulesettype)
    • Уникальное имя (msdyn_uniquename)
    Пример 1: набор правил решения для всех рабочих потоков чата в реальном времени

    Пример 2: набор правил решения для одного рабочего потока чата в реальном времени

    Пример 3: набор правил решения для нескольких рабочих потоков чата в реальном времени
    5. Конфигурация маршрутизации (msdyn_routingconfiguration)
    • Активная конфигурация (msdyn_isactiveconfiguration)
    • Имя (msdyn_name)
    • Конфигурация маршрутизации (msdyn_routingconfigurationid)
    • Уникальное имя (msdyn_uniquename)
    • Рабочий поток (msdyn_liveworkstreamid)
    Пример 1: конфигурация маршрутизации для всех рабочих потоков чата в реальном времени

    Пример 2: конфигурация маршрутизации для одного рабочего потока чата в реальном времени

    Пример 3: конфигурация маршрутизации для нескольких рабочих потоков чата в реальном времени
    6. Шаг конфигурации маршрутизации (msdyn_routingconfigurationstep)
    • Имя (msdyn_name)
    • Конфигурация маршрутизации (msdyn_routingconfigurationid)
    • Шаг конфигурации маршрутизации (msdyn_routingconfigurationstepid)
    • Набор правил (msdyn_rulesetid)
    • Порядок шагов (msdyn_steporder)
    • Тип шага (msdyn_type)
    • Уникальное имя (msdyn_uniquename)
    Пример 1: шаг конфигурации маршрутизации для всех рабочих потоков чата в реальном времени

    Пример 2: шаг конфигурации маршрутизации для одного рабочего потока чата в реальном времени

    Пример 3: шаг конфигурации маршрутизации для нескольких рабочих потоков чата в реальном времени
    7. Профиль емкости рабочего потока (msdyn_liveworkstreamcapacityprofile)
    • Профиль емкости (msdyn_capacityprofile_id)
    • Имя (msdyn_name)
    • Рабочий поток (msdyn_workstream_id)
    • Профиль емкости рабочего потока (msdyn_liveworkstreamcapacityprofileid)
    Пример 1: профиль емкости рабочего потока для всех рабочих потоков чата в реальном времени

    Пример 2: профиль емкости рабочего потока для одного рабочего потока чата в реальном времени

    Пример 3: профиль емкости рабочего потока для нескольких рабочих потоков чата в реальном времени
    8. Быстрый ответ (msdyn_cannedmessage)
    • Языковой стандарт (msdyn_locale_field)
    • Сообщение (msdyn_message)
    • Идентификатор организации (organizationid)
    • Быстрый ответ (msdyn_cannedmessageid)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • TagsControlField (msdyn_tagscontrolfield)
    • Заголовок (msdyn_title)
    9. Тег (msdyn_octag)
    • Имя (msdyn_name)
    • Тег (msdyn_octagid)
  3. Создайте схему и сохраните ее.

  4. Экспортируйте данные и создайте сжатый (ZIP) файл.

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

Внимание

Когда вы получаете наборы правил принятия решений (msdyn_decisionrulesets), содержащие переменные контекста, некоторые наборы правил принятия решений создаются без сопоставлений зависимостей. Чтобы обойти эту проблему, выполните следующие действия:

  1. Импортируйте данные для всех сущностей, включая сущность набора правил принятия решений (msdyn_decisionrulesets).
  2. Снова импортируйте данные для сущности набора правил принятия решений. Этот шаг гарантирует, что все сопоставления зависимостей для наборов правил принятия решений будут импортированы.

Пример схемы для получения всех необходимых записей см. в разделе Пример схемы для рабочего потока чата в реальном времени.

FetchXML для сущности рабочего потока

Пример 1: все рабочие потоки чата в реальном времени

<fetch distinct="true">
	<entity name="msdyn_liveworkstream">
		<filter type="and">
			<condition attribute="msdyn_mode" operator="eq" value="717210001" />
			<condition attribute="msdyn_streamsource" operator="eq" value=" 192360000" />
		</filter>
	</entity>
</fetch>

Пример 2: один рабочий поток чата в реальном времени

<fetch>
	<entity name="msdyn_liveworkstream">
		<filter type="and">
			<condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{759255C7-7AC8-98E0-7E3E-59A7F0312ABC}" />
		</filter>
	</entity>
</fetch>

Пример 3: несколько рабочих потоков чата в реальном времени

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
	<entity name="msdyn_liveworkstream">
		<filter type="and">
			<condition attribute="msdyn_liveworkstreamid" operator="in">
				<value uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream">{759255C7-7AC8-98E0-7E3E-59A7F0312ABC}</value>
				<value uiname="Test Live Chat Workstream 2" uitype="msdyn_liveworkstream">{E6246229-33AC-5A9E-2FFE-51668AD44098}</value>
			</condition>
		</filter>
	</entity>
</fetch>

FetchXML для сущности переменных контекста

Пример 1: переменные контекста для всех рабочих потоков чата в реальном времени

<fetch>
    <entity name="msdyn_ocliveworkstreamcontextvariable" >
        <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="aa" >
            <filter type="and" >
                <condition attribute="msdyn_streamsource" operator="eq" value="192360000" />
                <condition attribute="msdyn_mode" operator="eq" value="717210001" />
            </filter>
        </link-entity>
    </entity>
</fetch>

Пример 2: переменные контекста для одного рабочего потока чата в реальном времени

<fetch>
    <entity name="msdyn_ocliveworkstreamcontextvariable" >
        <filter type="and" >
            <condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{D3A1F09D-51A0-A6B7-266D-58E1BDB97B53}" />
        </filter>
    </entity>
</fetch>

Пример 3: переменные контекста для нескольких рабочих потоков чата в реальном времени

<fetch>
    <entity name="msdyn_ocliveworkstreamcontextvariable" >
        <filter type="or" >
            <condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{D3A1F09D-51A0-A6B7-266D-58E1BDB97B53}" />
            <condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{f9e18e67-d1a8-ed11-aad1-00224805c057}" />
        </filter>
    </entity>
</fetch>

FetchXML для сущности контракта решения

Пример 1: контракт решения для всех рабочих потоков чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisioncontract" >
        <filter type="and" >
            <condition attribute="ismanaged" operator="eq" value="false" />
        </filter>
        <filter type="or" >
            <filter type="and" >
                <condition attribute="msdyn_mode" entityname="an" operator="eq" value="717210001" />
                <condition attribute="msdyn_streamsource" entityname="an" operator="eq" value="192360000" />
            </filter>
            <filter type="and" >
                <condition attribute="msdyn_mode" entityname="bd" operator="eq" value="717210001" />
                <condition attribute="msdyn_streamsource" entityname="bd" operator="eq" value="192360000" />
            </filter>
        </filter>
        <link-entity name="msdyn_liveworkstream" from="msdyn_routingcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="an" />
        <link-entity name="msdyn_decisionruleset" from="msdyn_outputcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="ba" >
            <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="bb" >
                <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="bc" >
                    <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="bd" />
                </link-entity>
            </link-entity>
        </link-entity>
    </entity>
</fetch>

Пример 2: контракт решения для одного рабочего потока чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisioncontract" >
        <filter type="and" >
            <condition attribute="ismanaged" operator="eq" value="false" />
        </filter>
        <filter type="or" >
            <filter type="and" >
                <condition attribute="msdyn_liveworkstreamid" entityname="an" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
            </filter>
            <filter type="and" >
                <condition attribute="msdyn_liveworkstreamid" entityname="an" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
            </filter>
        </filter>
        <link-entity name="msdyn_liveworkstream" from="msdyn_routingcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="an" />
        <link-entity name="msdyn_decisionruleset" from="msdyn_outputcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="ba" >
            <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="bb" >
                <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="bc" >
                    <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="bd" />
                </link-entity>
            </link-entity>
        </link-entity>
    </entity>
</fetch>

Пример 3: контракт решения для нескольких рабочих потоков чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisioncontract" >
        <filter type="and" >
            <condition attribute="ismanaged" operator="eq" value="false" />
        </filter>
        <filter type="or" >
            <filter type="or" >
                <condition attribute="msdyn_liveworkstreamid" entityname="an" operator="eq" uiname="ALM Live Chat Test Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
                <condition attribute="msdyn_liveworkstreamid" entityname="an" operator="eq" uiname="ALM Live Chat Test Workstream" uitype="msdyn_liveworkstream" value="{f9e18e67-d1a8-ed11-aad1-00224805c057}" />
            </filter>
            <filter type="or" >
                <condition attribute="msdyn_liveworkstreamid" entityname="bd" operator="eq" uiname=" Live Chat Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
                <condition attribute="msdyn_liveworkstreamid" entityname="bd" operator="eq" uiname="Live Chat Workstream 2" uitype="msdyn_liveworkstream" value="{f9e18e67-d1a8-ed11-aad1-00224805c057}" />
            </filter>
        </filter>
        <link-entity name="msdyn_liveworkstream" from="msdyn_routingcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="an" />
        <link-entity name="msdyn_decisionruleset" from="msdyn_outputcontractid" to="msdyn_decisioncontractid" link-type="outer" alias="ba" >
            <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="bb" >
                <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="bc" >
                    <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="bd" />
                </link-entity>
            </link-entity>
        </link-entity>
    </entity>
</fetch>

FetchXML для сущности набора правил решения

Пример 1: набор правил решения для всех рабочих потоков чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisionruleset" >
        <filter type="or" >
            <filter type="and" >
                <condition attribute="msdyn_mode" entityname="af" operator="eq" value="717210001" />
                <condition attribute="msdyn_streamsource" entityname="af" operator="eq" value="192360000" />
            </filter>
        </filter>
        <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="ad" >
            <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="ae" >
                <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="af" />
            </link-entity>
        </link-entity>
    </entity>
</fetch>

Пример 2: набор правил решения для одного рабочего потока чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisionruleset" >
        <filter type="or" >
            <filter type="and" >
                <condition attribute="msdyn_liveworkstreamid" entityname="af" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
            </filter>
        </filter>
        <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="ad" >
            <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="ae" >
                <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="af" />
            </link-entity>
        </link-entity>
    </entity>
</fetch>

Пример 3: набор правил решения для нескольких рабочих потоков чата в реальном времени

<fetch distinct="true" >
    <entity name="msdyn_decisionruleset" >
        <filter type="or" >
            <filter type="or" >
                <condition attribute="msdyn_liveworkstreamid" entityname="af" operator="eq" uiname="Live Chat Workstream" uitype="msdyn_liveworkstream" value="{d3a1f09d-51a0-a6b7-266d-58e1bdb97b53}" />
                <condition attribute="msdyn_liveworkstreamid" entityname="af" operator="eq" uiname="Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{f9e18e67-d1a8-ed11-aad1-00224805c057}" />
            </filter>
        </filter>
        <link-entity name="msdyn_routingconfigurationstep" from="msdyn_rulesetid" to="msdyn_decisionrulesetid" link-type="outer" alias="ad" >
            <link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="outer" alias="ae" >
                <link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="outer" alias="af" />
            </link-entity>
        </link-entity>
    </entity>
</fetch>

FetchXML для сущности конфигурации маршрутизации

Пример 1: конфигурация маршрутизации для всех рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfiguration">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="ah">
			<filter type="and">
				<condition attribute="msdyn_mode" operator="eq" value="717210001" />
				<condition attribute="msdyn_streamsource" operator="eq" value="192360000" />
			</filter>
		</link-entity>
	</entity>
</fetch> 

Пример 2: конфигурация маршрутизации для одного рабочего потока чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfiguration">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="ah">
			<filter type="and">
				<condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{759255C7-7AC8-98E0-7E3E-59A7F0312ABC}" />
			</filter>
		</link-entity>
	</entity>
</fetch>

Пример 3: конфигурация маршрутизации для нескольких рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfiguration">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="ah">
			<filter type="and">
				<condition attribute="msdyn_liveworkstreamid" operator="in">
					<value uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream">{759255C7-7AC8-98E0-7E3E-59A7F0312ABC}</value>
					<value uiname="Test Live Chat Workstream 2" uitype="msdyn_liveworkstream">{E6246229-33AC-5A9E-2FFE-51668AD44098}</value>
				</condition>
			</filter>
		</link-entity>
	</entity>
</fetch>

FetchXML для сущности шага конфигурации маршрутизации

Пример 1: шаг конфигурации маршрутизации для всех рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfigurationstep">
		<link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="inner" alias="ak">
			<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="al">
				<filter type="and">
					<condition attribute="msdyn_mode" operator="eq" value="717210001" />
					<condition attribute="msdyn_streamsource" operator="eq" value="192360000" />
				</filter>
			</link-entity>
		</link-entity>
	</entity>
</fetch>

Пример 2: шаг конфигурации маршрутизации для одного рабочего потока чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfigurationstep">
		<link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="inner" alias="ak">
			<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="al">
				<filter type="and">
					<condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{759255C7-7AC8-98E0-7E3E-59A7F0312EFC}" />
				</filter>
			</link-entity>
		</link-entity>
	</entity>
</fetch>

Пример 3: шаг конфигурации маршрутизации для нескольких рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_routingconfigurationstep">
		<link-entity name="msdyn_routingconfiguration" from="msdyn_routingconfigurationid" to="msdyn_routingconfigurationid" link-type="inner" alias="ak">
			<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="al">
				<filter type="and">
					<condition attribute="msdyn_liveworkstreamid" operator="in">
						<value uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream">{759255C7-7AC8-98E0-7E3E-59A7F0312ABC}</value>
						<value uiname="Test Live Chat Workstream 2" uitype="msdyn_liveworkstream">{E6246229-33AC-5A9E-2FFE-51668AD44098}</value>
					</condition>
				</filter>
			</link-entity>
		</link-entity>
	</entity>
</fetch>

FetchXML для сущности профиля емкости рабочего потока

Пример 1: профиль емкости рабочего потока для всех рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_liveworkstreamcapacityprofile">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_workstream_id" link-type="inner" alias="am">
			<filter type="and">
				<condition attribute="msdyn_mode" operator="eq" value="717210001" />
				<condition attribute="msdyn_streamsource" operator="eq" value="192360000" />
			</filter>
		</link-entity>
	</entity>
</fetch>

Пример 2: профиль емкости рабочего потока для одного рабочего потока чата в реальном времени

<fetch>
	<entity name="msdyn_liveworkstreamcapacityprofile">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_workstream_id" link-type="inner" alias="am">
			<filter type="and">
				<condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream" value="{759255C7-7AC8-98E0-7E3E-59A7F0312EFC}" />
			</filter>
		</link-entity>
	</entity>
</fetch>

Пример 3: профиль емкости рабочего потока для нескольких рабочих потоков чата в реальном времени

<fetch>
	<entity name="msdyn_liveworkstreamcapacityprofile">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_workstream_id" link-type="inner" alias="am">
			<filter type="and">
				<condition attribute="msdyn_liveworkstreamid" operator="in">
					<value uiname="Test Live Chat Workstream 1" uitype="msdyn_liveworkstream">{759255C7-7AC8-98E0-7E3E-59A7F0312EFC}</value>
					<value uiname="Test Live Chat Workstream 2" uitype="msdyn_liveworkstream">{E6246229-33AC-5A9E-2FFE-51668AD44215}</value>
				</condition>
			</filter>
		</link-entity>
	</entity>
</fetch>

Миграция конфигурации для мини-приложений чата

Используются следующие допущения:

  • Правила будут экспортированы после конфигураций чата, чтобы можно было использовать вопросы опроса перед разговором в качестве переменных контекста разговора.

  • Вы не можете создавать переменные контекста, когда добавляете новые вопросы в раздел опроса перед разговором.

  • Вопросы можно экспортировать после конфигураций чата определений правил, чтобы можно было использовать вопросы опроса перед разговором в качестве переменных контекста.

  • Рабочий поток должен существовать независимо от того, был ли он создан вручную или ранее перенесен в целевую организацию.

Для миграции данных для мини-приложений чата

  1. Используйте инструмент миграции конфигурации, чтобы создать схему и экспортировать данные из исходной организации для мини-приложения чата и связанных сущностей.

    • Отображаемое имя сущности: при создании схемы выбирайте сущности в последовательности, указанной в таблице.
    • Отображаемое имя атрибута: рекомендуется выбирать атрибуты, определенные в следующей таблице. Вам не нужно выбирать системные атрибуты, такие как «Кем создано», «Дата создания», «Кем изменено», «Дата изменения» и «Владелец». При необходимости можно выбрать настраиваемые атрибуты.
    Сер. № Отображаемое имя сущности (логическое имя) Отображаемое имя атрибута (логическое имя)
    1. Мини-приложение чата (msdyn_livechatconfig) FetchXML для фильтрации записей для чата
    Примечание.
    - Замените значение для msdyn_liveworkstream в разделе условия.
    - Не включайте msdyn_widgetappid и msdyn_widgetsnippet как часть сущности.
    - Убедитесь, что в рамках объявления сущности в схеме подключаемый модуль отключен. (disableplugins="false")
    • (Устарело) В нерабочее время (msdyn_duringnonoperatinghours)
    • Отображаемое имя агента (msdyn_agentdisplayname)
    • Разрешить загрузку записи (msdyn_enablechattranscriptdownload)
    • Разрешить отправку записи по электронной почте (msdyn_enablechattranscriptemail)
    • Анонимизировать агента (msdyn_showagentname)
    • Параметры проверки подлинности (msdyn_authsettingsid)
    • Автоматическое определение языка (msdyn_autodetectlanguage)
    • Опрос бота (msdyn_postconversationsurveybotsurvey)
    • Параметры звонка (msdyn_callingoptions)
    • Мини-приложение чата (msdyn_livechatconfigid)
    • Поставщик совместного просмотра (msdyn_cobrowseprovider)
    • Показывать универсальное имя (msdyn_genericagentdisplayname)
    • Шаблон электронной почты (msdyn_emailtemplate)
    • Включить (msdyn_postconversationsurveyenable)
    • Включить совместный просмотр (msdyn_enablecobrowse)
    • Включить вложения файлов для агентов (msdyn_enablefileattachmentsforagents)
    • Включить вложенные файлы для клиентов (msdyn_enablefileattachmentsforcustomers)
    • Разрешить общий доступ к экрану (msdyn_enablescreensharing)
    • Указывает на режим разговора для мини-приложения чата (msdyn_conversationmode)
    • Указывает, включено ли отображение времени ожидания (msdyn_averagewaittime_enabled)
    • информационная метка (msdyn_infolabel)
    • Язык (msdyn_widgetlocale)
    • Язык (msdyn_ocwidgetlanguage)
    • Язык (msdyn_language)
    • Логотип (msdyn_avatarurl)
    • Сообщение (msdyn_postconversationsurveymessagetext)
    • Когда изменено (modifiedon)
    • Имя (msdyn_name)
    • Заголовок автономного мини-приложения (msdyn_offlinewidgettitle)
    • Подзаголовок автономного мини-приложения (msdyn_offlinewidgetsubtitle)
    • Цвет темы автономного мини-приложения (msdyn_offlinewidgetthemecolor)
    • Рабочие часы (msdyn_operatinghourid)
    • URL-адрес портала (msdyn_portalurl)
    • Позиция (msdyn_widgetposition)
    • Опрос после чата (msdyn_postchatenabled)
    • Опрос перед чатом (msdyn_prechatenabled)
    • Проактивный чат (msdyn_proactivechatenabled)
    • Ключ API поставщика (msdyn_oc_geolocationprovider)
    • Набор вопросов для пользователей, прошедших проверку подлинности (msdyn_prechatquestionnaireauthenticated)
    • Набор вопросов для пользователей, не прошедших проверку подлинности (msdyn_prechatquestionnaireunauthenticated)
    • Повторное подключение к предыдущему агенту (msdyn_timetoreconnectwithpreviousagent)
    • URL-адрес перенаправления (msdyn_redirectionurl)
    • Запросить расположение посетителя (msdyn_requestvisitorlocation)
    • Поставщик общего доступа к экрану (msdyn_screensharingprovider)
    • Почтовый ящик отправителя (msdyn_mailbox)
    • Показать положение в очереди (msdyn_positioninqueue_enabled)
    • Показывать мини-приложение в нерабочее время (msdyn_showwidgetduringofflinehours)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Подзаголовок (msdyn_widgetsubtitle)
    • Опрос (msdyn_postconversationsurvey)
    • Режим опроса (msdyn_postconversationsurveymode)
    • Цвет темы (msdyn_widgetthemecolor)
    • Заголовок (msdyn_widgettitle)
    • Включить повторное подключение к предыдущему чат (msdyn_enablechatreconnect)
    • Включить звуковые уведомления (msdyn_widgetsoundnotification)
    • Включить индикатор непрочитанных сообщений (msdyn_widgetvisualnotification)
    • Рабочий поток (msdyn_liveworkstreamid)
    2. Параметры проверки подлинности для чата (msdyn_authenticationsettings)
    • Тип проверки подлинности (msdyn_authenticationtype)
    • Параметры проверки подлинности для чата (msdyn_authenticationsettingsid)
    • Функция клиента JavaScript (msdyn_javascriptclientfunction)
    • Имя (msdyn_name)
    • URL-адрес открытого ключа (msdyn_publickeyurl)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    3. Локализация (msdyn_oclocalizationdata)
    • Автоматическое сообщение (msdyn_systemmessageid)
    • Локализованный текст по умолчанию (msdyn_defaultlocalizedtext)
    • Имя столбца сущности (msdyn_entitycolumnname)
    • Имя сущности (msdyn_entityname)
    • Идентификатор записи сущности (msdyn_entityrecordid)
    • Является значением по умолчанию (msdyn_isdefault)
    • Код языка (msdyn_customerlanguageid)
    • Код языка (msdyn_languagecode)
    • Локализация (msdyn_oclocalizationdataid)
    • Локализованный текст (msdyn_localizedtext)
    • Идентификатор организации (organizationid)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    4. Сообщение (msdyn_ocsystemmessage)
    • Канал (msdyn_streamsource)
    • Язык по умолчанию (msdyn_defaultlanguage)
    • Идентификатор экземпляра (msdyn_instanceid)
    • Сообщение (msdyn_ocsystemmessageid)
    • Описание сообщения (msdyn_messagedescription)
    • Получатель сообщения (msdyn_messagereceiver)
    • Триггер шаблона сообщения (msdyn_messagetemplatetrigger)
    • Текст сообщения (msdyn_messagetext)
    • Триггер сообщения (msdyn_systemmessageeventtype)
    • Тип сообщения (msdyn_messagetype)
    • Имя (msdyn_name)
    • Идентификатор организации (organizationid)
    • Состояние (statecode)
    • Причина состояния (sttuscode)
    • Мини-приложение (msdyn_widgetid)
    5. Вариант ответа на опрос (msdyn_chatansweroption)
    • Имя (msdyn_name)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Вариант ответа на опрос (msdyn_chatansweroptionid)
    • Вопрос в опросе (msdyn_answeroptionsid)
    6. Вопрос в опросе (msdyn_surveyquestion)
    • Тип ответа (msdyn_answertyp)
    • Текст справки (msdyn_placeholdertext)
    • Имя вопроса (msdyn_nam)
    • Текст вопроса (msdyn_questiontext)
    • Рейтинговая шкала (msdyn_ratingscal)
    • Состояние (statecod)
    • Причина состояния (statuscod)
    • Вопрос в опросе (msdyn_surveyquestionid)
    • Рабочий поток (msdyn_liveworkstreamtochatquestion)
    7. Последовательность вопросов в опросе (msdyn_questionsequence)
    • - Мини-приложение чата (msdyn_chatengagementtochatsequenceid)
    • Имя (msdyn_name)
    • Заказ (sequencenumber)
    • Обязательное (msdyn_questionrequired)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Имя вопроса в опросе (msdyn_surveyquestion)
    • Последовательность вопросов в опросе (msdyn_questionsequenceid)
    • Тип опроса (msdyn_chatquestionnairetype)
    8. Ответ на опрос (msdyn_chatquestionnaireresponse)
    • Имя (msdyn_name)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Вариант ответа на опрос (msdyn_chatansweroptionid)
    • Текст ответа на опрос (msdyn_chatanswertext)
    • Идентификатор вопроса в опросе (msdyn_surveyquestionid)
    • Ответ на опрос (msdyn_chatquestionnaireresponseid)
    • Значения ответов на опрос (msdyn_chatquestionnaireresponseitemid)
    9. Расположение мини-приложения чата (msdyn_livechatwidgetlocation)
    • Мини-приложение чата (msdyn_livechatconfigid)
    • Расположение мини-приложения чата (msdyn_livechatwidgetlocationid)
    • Подстановочный знак URL-адреса расположения (msdyn_locationurlwildcard)
    • Кто изменил (modifiedby)
    • Тип правила (msdyn_ruletype)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Заголовок (msdyn_name
    • Значение (msdyn_domainvalue)
    10. Язык мини-приложения чата (msdyn_chatwidgetlanguage)
    • Язык мини-приложения чата (msdyn_chatwidgetlanguageid)
    • Название языка (msdyn_languagename)
    • ИД языкового стандарта (msdyn_localeid)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    11. Вопрос в локализованном опросе (msdyn_localizedsurveyquestion)
    • Описание (msdyn_description)
    • Код языка (msdyn_languagecode)
    • Локализованный текст вопроса (msdyn_localizedquestiontext)
    • Вопрос в локализованном опросе (msdyn_localizedsurveyquestionid)
    • Имя (msdyn_name)
    • Состояние (statecode)
    • Причина состояния (statuscode)
    • Вопрос в опросе (msdyn_surveyquestionid)
    12. Поставщик геолокации (msdyn_oc_geolocationprovider)
    • Ключ интерфейса API карт Bing (msdyn_providerapikey)
    • Поставщик географического расположения (msdyn_oc_geolocationproviderid)
    • Имя (msdyn_name)
    • Версия ключа API поставщика (msdyn_providerapikeyversion)
    • Имя поставщика (msdyn_providername)
    • Состояние (statecode)
    • Причина состояния (statuscode)
  2. Создайте схему и сохраните ее.

  3. Экспортируйте данные и создайте сжатый (ZIP) файл.

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

Пример схемы для получения всех необходимых записей см. в разделе Пример схемы для канала чата в реальном времени

FetchXML для чата

    <fetch version="1.0" mapping="logical" distinct="false">
	<entity name="msdyn_livechatconfig">
		<link-entity name="msdyn_liveworkstream" from="msdyn_liveworkstreamid" to="msdyn_liveworkstreamid" link-type="inner" alias="ab">
			<filter type="and">
				<condition attribute="msdyn_liveworkstreamid" operator="eq" uiname="elopez-ws-lcw-m7" uitype="msdyn_liveworkstream" value="{EBEE52BD-2EFD-99C5-C658-F13E7C7D3F8C}" />
			</filter>
		</link-entity>
	</entity>
</fetch>

Проверка миграции

После успешного импорта данных конфигурации, связанных с единой маршрутизацией, из исходной в целевую организацию выполните следующие действия в целевой организации:

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

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

  3. Если профили емкости используются в наборах правил и рабочих потоках для единой маршрутизации, вам необходимо вручную задать ссылку, связать или создать записи о пользователях, резервируемых ресурсах и профилях емкости резервируемых ресурсов.

Соображения для экспорта и импорта данных

Для устранения проблем, с которыми вы можете столкнуться во время миграции, проверьте файлы журналов, как указано ниже:

  • Когда вы импортируете данные в целевую организацию, если вы видите желтые символы предупреждения, проверьте следующие журналы в средстве миграции конфигурации:

    • Login_ErrorLog.log: содержит информацию о любых проблемах, возникших при входе в организацию с помощью средства управления конфигурацией.
    • DataMigrationUtility.log: предоставляет информацию о задачах, выполненной с помощью этого средства во время последней миграции.
    • ImportDataDetail.log: содержит подробную информацию о данных, импортированных с помощью этого средства в ходе последнего импорта данных.

    Дополнительные сведения: Устранение проблем переноса данных с помощью файлов журнала

    Желтые символы предупреждения, указывающие на ошибки при импорте данных.

  • Если в журналах присутствуют ошибки сети, повторите процесс импорта.

    Приведем пример:

    Time: 11:46:09 PM
    Error: There was no endpoint listening at `https://www.contoso.com/XRMServices/2011/Organization.svc/web?SDKClientVersion=9.2.46.5279` that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.
    Stack Trace: Service stack trace:
    

См. также

Миграция конфигурации для записей на основе единой маршрутизации