Mozilla TogetherJS — простой способ создания приложений для совместной работы


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

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

а затем запустите его с помощью

TogetherJS (это);

Когда пользователь активирует TogetherJS, ему предоставляется URL-адрес, который он может отправить другому пользователю. Когда другой пользователь открывает ссылку, они оба видят одну и ту же страницу и могут с ней взаимодействовать.

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

Вы можете увидеть это в действии на следующем видео:

Как это работает?

Во многих отчетах о TogetherJS утверждается, что он основан на WebRTC, но на самом деле это не суть подхода. Фактически WebRTC используется только для аудиосвязи. Остальная часть системы зависит от использования хаб-сервера для синхронизации состояний двух браузеров. Это позволяет использовать WebSockets для передачи сообщений о статусе каждого браузера. По умолчанию используется сервер, предоставленный Mozilla — да, это действительно не одноранговая система.

Если вас беспокоит безопасность или производительность, вы можете настроить и использовать собственный концентратор. Это приложение Node.js, доступное для загрузки. Настройка сервера кажется простой, но вам понадобится собственный сертификат, если вы планируете использовать безопасность SSL /

TogetherJS позволяет настраивать множество различных аспектов работы, включая URL-адрес хаб-сервера. Хаб-сервер предоставляет URL-адрес, к которому подключаются все пользователи, и это, по сути, состояние сеанса.

Состояние поддерживается при работе напрямую с DOM. Это означает, что два пользователя могут не видеть один и тот же макет страницы — например, из-за разного разрешения экрана — но все синхронизируется. Другими словами, TogetherJS позволяет делиться с независимым разрешением. Это также означает, что он не требует сохранения состояния — это ваше приложение, которое должно разбираться так же, как и для одного пользователя.

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

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

TogetherJS нужен современный браузер, который поддерживает WebSockets для его основных функций и WebRTC для аудиочата. В документации говорится, что он работает в последних версиях Chrome и Firefox и может работать в IE10, но это не тестовая цель.

Это не революция безсерверных коммуникаций, которую обещает WebRTC, но это очень просто, очень мощно и очень полезно.


Добавить комментарий