Как сделать видео-контакт-центр на основе TrueConf Server API
Продукты компании TrueConf позволяют не только развернуть удобную и масштабируемую систему видеоконференцсвязи, но и воспользоваться огромными возможностями по расширению сфер её применения с помощью TrueConf Server API.
Ниже мы опишем возможный алгоритм разворачивания видео-контакт-центра для некоторой компании на базе TrueConf Server. В его основе лежит задача подключения гостя сайта и свободного оператора в приватную видеоконференцию. При этом используется технология WebRTC.
Внимание!
Предлагаемый алгоритм и пример кода ни в коем случае не предназначены для использования в рабочем окружении! Пример специально сделан максимально простым для запуска без необходимости установки дополнительного ПО, чтобы вы могли максимально легко ознакомиться с возможностями использования TrueConf Server API.
Проверить работоспособность описанной схемы можно как с помощью платной версии TrueConf Server, так и бесплатной – TrueConf Server Free.
Предварительная настройка TrueConf Server
- В панели управления сервером создайте отдельную группу Операторы и добавьте в неё пользователей, которые будут принимать входящие звонки.
- Настройте поддержку HTTPS-соединения для возможности использования WebRTC-виджета и выполнения запросов к API TrueConf Server.
Для выполнения описанных в алгоритме действий используются запросы к TrueConf Server API.
Шаг 1. Получение списка операторов
Получите список всех пользователей группы Операторы. Это лучше делать при каждой итерации алгоритма, чтобы не пропустить момент добавления в группу нового оператора.
Шаг 2. Выбор свободного оператора
- Сформируйте список операторов, которые онлайн (у объектов ObjectUser из полученного списка
status = 1
). - Случайным образом выберите из списка одного пользователя. Его TrueConf ID должен отличаться от записанного на шаге 5 предыдущей итерации.
- Если нет ни одного свободного оператора, вернитесь к шагу 1 через определённое время (например, 10 секунд).
- Повторяйте попытки поиска свободного оператора необходимое количество раз (например, 3) или времени (например, 30 секунд).
Шаг 3. Создание конференции
Создайте новую видеоконференцию с параметрами:
- владелец и участник – в обоих полях укажите выбранного оператора;
- количество участников – 2;
- тип запуска – виртуальная комната (без расписания);
- тип конференции – публичная, чтобы гость сайта мог подключиться через WebRTC-приложение;
- режим – симметричная.
Шаг 4. Запуск конференции
Запустите созданную видеоконференцию. При этом оператор автоматически получит в неё вызов как участник.
Шаг 5. Проверка статуса оператора
Спустя некоторое время после запуска конференции (например, 10 секунд) проверьте, подключен ли к ней выбранный оператор.
Если он не принял вызов, выполните следующие действия:
- запишите его TrueConf ID;
- остановите видеоконференцию;
- удалите её;
- вернитесь к шагу 1.
Шаг 6. Получение гостевой ссылки
Получите гостевую ссылку для подключения по технологии WebRTC из списка клиентских приложений для созданной конференции.
Шаг 7. Добавление виджета на страницу сайта
Создайте виджет для встраивания на страницу сайта в виде html-элемента <iframe>
, указав гостевую ссылку в качестве пути для загрузки содержимого.
Шаг 8. Завершение звонка
Окончание сеанса связи можно отследить с помощью технологии postMessage (виджет отправит сообщение connectionClosed
). При завершении звонка:
Дополнительные настройки
При необходимости запретите доступ гостю к некоторым возможностям WebRTC-клиента (например, к демонстрации контента).