Как сделать видео-контакт-центр на основе TrueConf Server API

Димитрий Зуйков
12.05.2020
Димитрий Зуйков
Категории: База знаний
Ознакомиться с примером html-странички с поддержкой описанного алгоритма можно на нашем GitHub.

Продукты компании TrueConf позволяют не только развернуть удобную и масштабируемую систему видеоконференцсвязи, но и воспользоваться огромными возможностями по расширению сфер её применения с помощью TrueConf Server API.

Ниже мы опишем возможный алгоритм разворачивания видео-контакт-центра для некоторой компании на базе TrueConf Server. В его основе лежит задача подключения гостя сайта и свободного оператора в приватную видеоконференцию. При этом используется технология WebRTC.

Внимание!

Предлагаемый алгоритм и пример кода ни в коем случае не предназначены для использования в рабочем окружении! Пример специально сделан максимально простым для запуска без необходимости установки дополнительного ПО, чтобы вы могли максимально легко ознакомиться с возможностями использования TrueConf Server API.

Проверить работоспособность описанной схемы можно как с помощью платной версии TrueConf Server, так и бесплатной – TrueConf Server Free.

Бесплатная версия TrueConf Server поддерживает одновременно только одну групповую конференцию, поэтому её нельзя рассматривать в качестве полноценной платформы для организации видео-контакт-центра.

Предварительная настройка TrueConf Server

  1. В панели управления сервером создайте отдельную группу Операторы и добавьте в неё пользователей, которые будут принимать входящие звонки.
  2. Настройте поддержку HTTPS-соединения для возможности использования WebRTC-виджета и выполнения запросов к API TrueConf Server.

Для выполнения описанных в алгоритме действий используются запросы к TrueConf Server API.

Шаг 1. Получение списка операторов

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

Шаг 2. Выбор свободного оператора

  1. Сформируйте список операторов, которые онлайн (у объектов ObjectUser из полученного списка status = 1).
  2. Случайным образом выберите из списка одного пользователя. Его TrueConf ID должен отличаться от записанного на шаге 5 предыдущей итерации.
  3. Если нет ни одного свободного оператора, вернитесь к шагу 1 через определённое время (например, 10 секунд).
  4. Повторяйте попытки поиска свободного оператора необходимое количество раз (например, 3) или времени (например, 30 секунд).

Шаг 3. Создание конференции

Создайте новую видеоконференцию с параметрами:

Шаг 4. Запуск конференции

Запустите созданную видеоконференцию. При этом оператор автоматически получит в неё вызов как участник.

Шаг 5. Проверка статуса оператора

Спустя некоторое время после запуска конференции (например, 10 секунд) проверьте, подключен ли к ней выбранный оператор.

Если он не принял вызов, выполните следующие действия:

Шаг 6. Получение гостевой ссылки

Получите гостевую ссылку для подключения по технологии WebRTC из списка клиентских приложений для созданной конференции.

Шаг 7. Добавление виджета на страницу сайта

Создайте виджет для встраивания на страницу сайта в виде html-элемента <iframe>, указав гостевую ссылку в качестве пути для загрузки содержимого.

Шаг 8. Завершение звонка

Окончание сеанса связи можно отследить с помощью технологии postMessage (виджет отправит сообщение connectionClosed). При завершении звонка:

  1. удалите добавленный виджет;
  2. остановите видеоконференцию;
  3. удалите её с сервера.

Дополнительные настройки

При необходимости запретите доступ гостю к некоторым возможностям WebRTC-клиента (например, к демонстрации контента).

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

Не нашли ответ на свой вопрос? Напишите нам в онлайн-чате, мы будем рады помочь.

Подписка на новости