Поделиться через


getAgentAvailability

Многоканальное взаимодействие для Customer Service предлагает набор возможностей, которые расширяют возможности Dynamics 365 Customer Service Enterprise, позволяя организациям мгновенно подключаться и взаимодействовать со своими клиентами по каналам обмена цифровыми сообщениями. Для доступа к многоканальному взаимодействию для Customer Service требуется дополнительная лицензия. Для получения дополнительной информации см. страницы Обзор цен на Dynamics 365 Customer Service и План цен на Dynamics 365 Customer Service.

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

Замечание

  • Прослушивайте событие lcw:ready , вызванное чатом в реальном времени, прежде чем вызывать методы SDK чата. Методы чата в реальном времени могут быть вызваны после возникновения события lcw:ready . Вы можете прослушивать это событие, добавив собственный прослушиватель событий в объект window.
  • Этот метод может быть вызван несколько раз со стороны клиента при изменении вводимых пользователем данных. Кэш на стороне клиента обновляется каждые 2 минуты или при изменении параметров контекста клиента.
  • Этот метод может быть вызван только 100 раз в минуту для одной организации. Если вы превысите это ограничение, вы увидите код состояния ответа http 429, указывающий на то, что вы отправили слишком много запросов за указанный промежуток времени.

Синтаксис

Microsoft.Omnichannel.LiveChatWidget.SDK.getAgentAvailability();

Параметры

None

Возвращаемое значение

Имя Тип Description
queueId String Целевая очередь, в которую направляется запрос на основе конфигурации правила маршрутизации и входных данных (предоставляются значения сущности и контекста, которые являются частью правила маршрутизации).
isQueueAvailable Boolean Отображает:
- TRUE, если очередь находится в рабочее время.
- FALSE, если очередь находится в нерабочее время.
StartTimeOfNextOperatingHour DateTime Время начала (UTC) часов работы очереди, если она не в рабочее время. В рабочее время возвращается значение 01-01-0001.
EndTimeOfNextOperatingHour DateTime Время (UTC) окончания рабочего времени для очереди, если она не в рабочее время. В рабочее время возвращается значение 01-01-0001.
nexttransitiontime DateTime Время (UTC), когда очередь снова начинает работать, если она работает в нерабочее время. Время, когда очередь не работает, отображается в часы работы.
positionInQueue Number Позиция в очереди для клиента, ожидающего позади других клиентов в той же очереди.
isAgentAvailable Boolean Отображает:
- TRUE, если агенты в очереди в данный момент доступны для приема запросов на основе настроенных правил маршрутизации и назначения для рабочего потока. API также возвращает значение true, если бот подключен к рабочему потоку или очереди. Мы не рекомендуем использовать этот API при наличии бота.
- FALSE, если агенты недоступны для приема запросов.
averageWaitTime Number Среднее время ожидания в минутах для клиентов в целевой очереди на основе данных за последние 48 часов.

Example

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
               // Gets the agent availability
               Microsoft.Omnichannel.LiveChatWidget.SDK.getAgentAvailability();
});

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

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

Замечание

Вам не нужно вызывать метод setContextProvider перед вызовом getAgentAvailability.

Ниже приведен пример кода, показывающий, как использовать этот setContextProvider метод.

// To set the custom context, pass the custom context object as input parameter to agent availability

    // provider as part of the logic, so there is no need to set custom context before this call.

    Microsoft.Omnichannel.LiveChatWidget.SDK.getAgentAvailability({

        customContext : {

                'jwtToken': {'value':'token','isDisplayable':true},

                'Email': {'value':'test@test.com','isDisplayable':true},

                'client': {'value':'true','isDisplayable':true},

                'Emailing': {'value':'true','isDisplayable':true}

        }

    }

    );

начатьЧат
setContextProvider
Справочник по SDK чата