Труконф возглавил рейтинг ВКС-разработчиков 2023

Блог

Вернуться

Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство

Зачем интегрировать Jitsi с Rocket.Chat?

Rocket.Chat – это бесплатный мессенджер, предназначенный для развёртывания в локальной сети (on-premises). За счёт такого способа установки обеспечивается полная изоляция и безопасность пользовательских коммуникаций.

Данный мессенджер по умолчанию не поддерживает видеоконференцсвязь. Этот функционал, при необходимости, придётся добавлять вручную. Пользуется некоторой популярностью официальная интеграция Rocket.Chat c платформой видеосвязи Jitsi. Это позволит после определённой конфигурации осуществлять видеозвонки и групповые конференции прямо из приложения Rocket.Chat.

В этой статье мы рассмотрим как в своей локальной сети развернуть сервера Rocket.Chat и Jitsi, а затем настроить между ними интеграцию.

Преимущества видеокоммуникации в бизнес-чате

Добавление функционала видеосвязи в корпоративный чат несёт ряд преимуществ:

  • Личное взаимодействие: видеокоммуникации позволяют участникам видеть друг друга, что делает общение более личным и эффективным.
  • Быстрая демонстрация: вместо долгих объяснений путём длинных текстов в чате можно показать презентацию или продемонстрировать продукт.
  • Эффективные совещания: видеоконференции могут заменить физические встречи, экономя время и ресурсы, а также позволяя организовать взаимодействие внутри территориально распределённой компании.

Проблемы интеграции и их решение

Ниже указан список проблем, которые могут возникнуть при интеграции Jitsi с Rocket.Chat. К каждой из них приведено возможное решение:

  • Техническая сложность. Настройка интеграции требует специальных знаний в области настройки ОС (в том числе Linux). Если настройкой займётся обычный сотрудник без опыта системного администрирования, он должен будет изучить техническую документацию или обратиться к специалисту.
  • Проблемы совместимости. Так как Jitsi является отдельным от Rocket.Chat продуктом, многие функции в рамках интеграции могут работать некорректно. Поэтому перед полноценным использованием видеосвязи её необходимо тщательно протестировать.
  • Безопасность коммуникаций. Для того чтобы обеспечить безопасное общение по видеосвязи в условиях интеграции, потребуется развернуть и настроить в своей сети сервер Jitsi. В противном случае видеосвязь будет устанавливаться через облачный сервис Jitsi, что является зачастую нежелательным вариантом в бизнес-среде.

Альтернатива, не требующая настройки

Существуют и альтернативные решения, предлагающие аналогичный и даже более обширный функционал и не требующие при этом дополнительной настройки. Примером такого решения является TrueConf Server. Как и Rocket.Chat, он предполагает установку на оборудовании заказчика, что гарантирует вам полную безопасность данных и надёжность коммуникаций. Помимо этого, у TrueConf Server есть и ряд преимуществ:

  • Функционал видеосвязи поддержан по умолчанию и для его использования не требуется дополнительных настроек.
  • Проведение видеоконференций в различных режимах, каждый из которых полезен по-своему.
  • Корпоративный мессенджер, возможности которого схожи с Rocket.Chat.
  • Проведение вебинаров с участниками, незарегистрированными на вашем сервере (гостями).
  • Более высокая защищённость конференций за счёт использования собственного протокола для передачи аудио и видеопотоков.
  • Проведения конференций в 4К (UltraHD) качестве.
  • Полноценная поддержка классических протоколов SIP/H.323, в том числе с отправкой и передачей дополнительных потоков по BFCP/H.239.
  • Возможность настроить обязательную регистрацию гостей ваших публичных конференций.
  • Запись конференций как её участниками, так и администратором сервера.
  • Автоматическая синхронизация списка пользователей видеосервера по протоколу LDAP, например, из каталога Microsoft Active Directory.
  • Расширенные возможности ведущих конференции для управления устройствами участников и настройки раскладок.
  • Использование ряда криптографических алгоритмов и протоколов (AES, HTTPS, SSL/TLS, SRTP, H.235), что не требует дополнительных модулей и долгой настройки.

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

Скачать TrueConf Server

Установка Rocket.Chat

Есть множество способов развернуть Rocket.Chat на вашем сервере. Мы рассмотрим запуск в контейнере Docker. В официальной документации Rocket.Chat рекомендуют использовать именно этот способ, так как он обладает массой преимуществ:

  • Запуск с помощью Docker возможен на большем количестве ОС, чем Rocket.Chat поддерживает в случае нативной установки.
  • Развёртывание занимает гораздо меньше времени.
  • Все трудности, с которыми вы можете столкнуться при ручной установке, будут нивелированы. Например, негарантированность стабильности работы после установки и обновления всех зависимостей. В случае использования Docker этого гарантированно не случится.
  • Простота моментального управления состоянием работы контейнера без какого-либо воздействия на саму ОС.

Шаг 1. Установка Docker

Сначала установите Docker в вашу систему. В официальной документации имеются подробные инструкции для разных ОС. Далее мы покажем развёртывание на примере Debian 11, т.к. это одна из ОС, которая поддержана Jitsi.

Все команды для терминала, описанные в данной статье, должны выполняться при помощи программы sudo, или в режиме суперпользователя.
  1. Обновите списки репозиториев:

  2. Установите пакеты, необходимые для загрузки файлов Docker из репозитория по HTTPS:

  3. Теперь добавьте в систему GPG-ключ для Docker-репозитория:

  4. Также добавьте в систему Docker-репозиторий:

  5. Затем снова обновите репозитории:

  6. Выполните установку Docker:

Шаг 2. Установка Docker Compose

Мы воспользуемся официальным Docker-образом Rocket.Chat. Для управления запуском используемого в нём ПО установите Docker Compose – утилиту для управления приложениями, компоненты которых установлены в разных контейнерах.

Для успешной установки Rocket.Chat вам понадобится Docker Compose версии 2 или выше.

Так как мы уже добавили Docker-репозиторий в нашу систему на предыдущем шаге, теперь чтобы установить Docker Compose достаточно в терминале выполнить команду:

Шаг 3. Создание файла конфигурации Docker Compose

Для работы Docker Compose требуется файл конфигурации. В этом файле настраивается запуск Docker-контейнеров. Создадим и наполним его:

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

  2. Создайте файл docker-compose.yml:

  3. Откройте этот файл в предпочитаемом текстовом редакторе и вставьте в него шаблон конфигурации, представленный в официальном GitHub-репозитории Rocket.Chat.

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 1

    Данная конфигурация состоит из полей, настраивающих различные свойства Docker Compose. Каждое поле представляет из себя пару ключ:значение. Все значения уже указаны, но некоторые из них содержат следующую конструкцию:

    ${PARAM_NAME:-POSS_VAL}

    где:

    • PARAM_NAME – название параметра
    • POSS_VAL – возможное значение параметра

    Все подобные конструкции должны быть заменены соответствующими данными. Например, если в шаблоне будет указана строка вида:

    то в такую строку необходимо подставить номер порта. И если в качестве значения порта вы захотите указать 3000, то вам будет необходимо изменить её следующим образом:

    Обратите особое внимание, что именно все конструкции такого вида обязательно должны быть заменены данными, соответствующими вашему окружению. В противном случае не получится запустить контейнер c Rocket.Chat.
  4. В значении поля services → rocketchat → image подставьте версию Rocket.Chat, которую хотите установить. Если это не принципиально – просто напишите latest. В таком случае у вас получится поле вида:

  5. В поле services → rocketchat → environment → MONGO_URL укажите строку подключения к базе данных MongoDB. По умолчанию она выглядит так:

    Если вы не будете производить дополнительную настройку базы данных MongoDB, то укажите строку по умолчанию.

    MongoDB по умолчанию использует порт 27017. Если он занят – укажите в строке подключения другой порт. Но в таком случае вам также нужно будет указать этот порт в полях MONGODB_PORT_NUMBER и MONGO_OPLOG_URL.
  6. В поле services → rocketchat → environment → MONGO_OPLOG_URL укажите строку подключения к логу операций MongoDB. По умолчанию она выглядит так:

  7. В поле services → rocketchat → environment → ROOT_URL задайте URL, по которому будет размещаться Rocket.Chat, а в поле services → rocketchat → environment → PORT пропишите порт, который сервер Rocket.Chat будет прослушивать.
  8. В поле services → rocketchat → expose также укажите порт, который сервер Rocket.Chat будет прослушивать. В поле services → rocketchat → ports подставьте IP-адрес машины, на которой развёрнут Rocket.Chat, а также диапазон портов, которые он сможет использовать.
  9. Далее необходимо настроить запуск базы данных MongoDB, а также её репликацию. Для этого в поле services → mongodb → image пропишите версию MongoDB, которую хотите установить. А в полях из секции services → mongodb → environment укажите следующие значения:

    • В поле MONGODB_REPLICA_SET_NAME укажите имя вашего кластера серверов MongoDB. Если это не принципиально — выберите имя rs0, предложенное по умолчанию.
    • В поле MONGODB_PORT_NUMBER укажите номер порта, который будет прослушивать сервер базы данных MongoDB. Как уже было сказано, по умолчанию это — 27017.
    • В поле MONGODB_INITIAL_PRIMARY_HOST пропишите имя-синоним для машины, где развёрнут основной экземпляр MongoDB.
    • В поле MONGODB_INITIAL_PRIMARY_PORT_NUMBER пропишите номер порта, который будет прослушиваться основным экземпляром базы данных.
    • В поле MONGODB_ADVERTISED_HOSTNAME достаточно указать значение по умолчанию – mongodb.
    • В поле MONGODB_ENABLE_JOURNAL укажите значение true если вам необходимо логирование работы базы данных и false в противном случае. Данное значение должно находиться в кавычках.
    • В поле ALLOW_EMPTY_PASSWORD укажите значение yes, если хотите получать доступ к базе данных без пароля и no в противном случае.

Шаг 4. Запуск Rocket.Chat

  1. Откройте терминал и перейдите в каталог с созданным ранее конфигурационным файлом Docker Compose:

  2. От лица суперпользователя выполните команду:

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

  3. В случае успешного выполнения команды из предыдущего пункта вы увидите надпись об успешном старте Rocket.Chat. Откройте браузер и перейдите по URL-адресу, ранее указанному в поле ROOT_URL конфигурационного файла Docker Compose.
  4. Перед началом использования Rocket.Chat необходимо создать учётную запись администратора:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 2

  5. Затем укажите сведения о вашей организации:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 3

  6. Также вам будет предложено зарегистрировать рабочее пространство – это обязательно нужно сделать. Для этого укажите свой email и нажмите кнопку Зарегистрироваться.

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 4

    Затем перейдите по ссылке из электронного письма от Rocket.Chat. После этого ваше рабочее пространство будет зарегистрировано.

    Без регистрации рабочего пространства Rocket.Chat дальнейшая его интеграция с Jitsi будет невозможна.

Установка Jitsi

В нашей базе знаний есть отдельная статья, посвящённая развёртыванию сервера видеосвязи Jitsi. Перейдите к ней для ознакомления с соответствующей инструкцией.

Интеграция Jitsi в Rocket.Chat. Пошаговое руководство

Для того чтобы встроить видеосвязь от Jitsi в Rocket.Chat необходимо выполнить следующие действия:

  1. Войдите в Rocket.Chat с помощью учётной записи администратора.
  2. Нажмите на кнопку Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 5 в главном меню Rocket.Chat и в появившемся списке выберите Магазин:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 6

  3. Введите слово Jitsi в поле поиска, нажмите на кнопку Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 7, расположенную в строке с найденным приложением и в появившемся меню выберите пункт Установить:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 8

  4. Если у вас на экране появилось модальное окно с требованием авторизации рабочего пространства, нажмите кнопку Авторизоваться. В противном случае, переходите к пункту 8.

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 9

  5. Затем нажмите кнопку Войти в Rocket.Chat Cloud:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 10

  6. На открывшейся странице введите адрес электронной почты, на которую регистрировали рабочее пространство и нажмите на кнопку Send login link:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 11

  7. Затем перейдите по ссылке из письма, которое пришло вам на электронную почту. После этого вы авторизуетесь в своём рабочем пространстве. Теперь вернитесь на главную страницу Rocket.Chat и снова проделайте шаги из 2 и 3 пунктов настоящей инструкции.
  8. В появившемся окне отметьте флажок о согласии с правилами использования и нажмите кнопку Get:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 12

  9. Дайте все необходимые Jitsi разрешения, нажав на кнопку Согласие:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 13

  10. Затем перейдите на страницу с информацией о добавленном приложении Jitsi, кликнув по нему в списке приложений.
  11. Выберите вкладку Настройки, чтобы задать параметры подключения к серверу Jitsi:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 14

    Обязательным полем на данной форме является только Домен – в нём укажите адрес сервера Jitsi, к которому хотите подключиться. Остальные поля заполнять не обязательно, а их назначение описано в официальной документации. После завершения настройки нажмите кнопку Применить.

  12. Далее выберите пункт Настройки в нижней части меню панели управления Rocket.Chat. В блоке Видеоконференция нажмите кнопку Открыть:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 15

  13. На открывшейся странице в выпадающем списке Default Provider выберите значение Jitsi, а затем нажмите Применить:

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 16

Проверка работы Rocket.Chat в связке с Jitsi

Теперь у пользователей вашего экземпляра Rocket.Chat будет возможность осуществлять видеозвонки и проводить видеоконференции на базе Jitsi прямо из Rocket.Chat. Для проверки данной возможности:

  1. Запустите Rocket.Chat под аккаунтом любого из пользователей. Как их добавить, смотрите в документации разработчика.
  2. Перейдите в чат с любым другим пользователем и нажмите кнопку Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 17 на панели управления.

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 18

  3. В появившемся меню вы сможете выбрать оборудование, которое будет активно во время звонка. Далее нажмите кнопку Начать звонок.

    Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 19

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

Как интегрировать видеосвязь от Jitsi в Rocket.Chat. Полное руководство 20


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

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