LINUX.ORG.RU

Gitter становится частью сети Matrix

 , , ,


2

3

Компания Element приобретает Gitter у GitLab, чтобы адаптировать сервис для работы в условиях федеративной сети Matrix. Это первый крупный мессенджер, который планируется прозрачно перенести в децентрализованную сеть вместе со всеми пользователями и историей сообщений.

Gitter является свободным централизованным средством для групповой коммуникации между разработчиками. Помимо типовой функциональности командного чата, по сути своей схожей с несвободным Slack, Gitter также предоставляет инструменты для тесной интеграции с платформами совместной разработки, вроде GitLab и GitHub. В прошлом сервис был проприетарным, пока его не приобрела компания GitLab.

Matrix же представляет собой свободный протокол для реализации федеративной сети, построенной на основе ациклического графа событий (DAG). Основной реализацией этой сети является мессенджер с поддержкой сквозного шифрования и VoIP (аудио- и видеозвонков, групповых конференций). Эталонные реализации клиентов и серверов разрабатываются коммерческой компанией Element, сотрудники которой также возглавляют некоммерческую организацию Matrix.org Foundation, курирующую разработку спецификации протокола Matrix.

На данный момент пользователи Gitter и Matrix общаются с помощью «моста» matrix-appservice-gitter, релея для пересылки сообщений между ними. При отправке сообщения, например, из Gitter в чат с подключённой интеграцией в Matrix, «мост» создаёт виртуального пользователя для отправителя из Gitter на сервере Matrix, от имени которого и доставляется сообщение в чат со стороны Matrix, и наоборот соответственно. Подключение такой интеграции возможно прямо из настроек чата со стороны Matrix, но этот способ коммуникации будет помечен устаревшим.

В краткосрочной перспективе пользователи не заметят никаких видимых изменений: они смогут пользоваться мессенджером так же, как и до покупки. В дальнейшем процесс трансформации из централизованного сервиса в децентрализованный субъект федерации будет совершён благодаря организации нового сервера Matrix и интеграции «моста», по аналогии с matrix-appservice-gitter, прямо в кодовую базу Gitter. Существующие чаты в Gitter будут доступны как Matrix-комнаты, вроде «#angular_angular:gitter.im», с импортированной историей сообщений.

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

Из полезных особенностей Gitter, которые могут адаптировать для Element:

  • Высокая производительность при просмотре чатов со значительным количеством пользователей и сообщений;
  • Тесная интеграция с платформами совместной разработки, вроде GitLab и GitHub;
  • Иерархический каталог чатов;
  • Дружелюбный к поисковым системам статический вид публичных чатов;
  • Поддержка разметки в KaTeX;
  • Древовидное ветвление сообщений (threads).

Компания Element обещает, что фронтенд Gitter будет заменён на Element только в том случае, когда Element достигнет паритета в функциональности. До тех пор кодовая база Gitter будет поддерживаться в актуальном состоянии без регрессий в функциональности.

Сотрудники Gitter будут также трудиться и на пользу Element.

>>> Подробности

★★★★★

Проверено: alpha ()

Для Нас Gitter — просто ещё один сервер в IRC-клиенте ;P Но многострочные сообщения (с кодом особенно) через жопу отображаются, конечно.

Для этой вашей шматрицы приличный клиент когда-нибудь будет, или не стоит и ждать?

mertvoprog ()
Ответ на: комментарий от hobbit

Практически всё, что связано с серверами интеграций работает с помощью виджетов в виде HTML iframe. Серверы интеграций отвечают за GUI для управления релеями в другие сети (мостами), ботами, стикерами и прочим. Возможно, это реально реализовать и без вебни, но пока что единственная реализация в Element. В мобильных клиентах это тоже в виде системного WebView.

Ещё вебню используют звонки (WebRTC) и групповые конференции (Jitsi Meet). Нативную реализацию WebRTC только чуть ли не вчера добавили в GStreamer, так что теперь можно звонить и из нативных клиентов, вроде того же nheko.

commagray ★★★★★ ()

Реализаций нет. Только прототипы.

Единственный адекватный клиент - веб-клиент, это ещё ладно. Единственный (вообще) сервер на python2!

anonymous ()

Сотрудники Gitter будут также трудиться и на пользу Element.

Там же всё на Электроне. Лучше бы объединились, чтобы переписать на чём-то адекватном, а не продолжать пилить ненужно.

th3m3 ★★★★★ ()
Ответ на: комментарий от th3m3

ненужно

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

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 1)
Ответ на: комментарий от commagray

Это конечно печально, но ведь сервера интеграций ненужны.

Ещё вебню используют звонки (WebRTC)

Это не вебня. Реализации WebRTC сейчас есть для любого чайника.

и групповые конференции (Jitsi Meet)

И что, вот там прямо ифрейм подгружается? Или всё же какой-то протокол есть?

intelfx ★★★★★ ()
Ответ на: комментарий от intelfx

но ведь сервера интеграций ненужны

И серверы идентификации. Но они зачем-то есть. 🤔

Это не вебня.

Ну, исходя из названия и того, что реализации первое время существовали только в веб-браузерах… сейчас ситуация меняется, да.

вот там прямо ифрейм подгружается

Вообще, да. =/ Например, в том же FluffyChat кнопка вызова Jitsi-конференции — это кнопка копипаста ссылки на Jitsi-конференцию в браузере. В Element это кнопка для всплывающего виджета, который iframe.

Или всё же какой-то протокол есть?

Есть API и реализация, по крайней мере, для мобильных устройств. Но насколько я понимаю, даже для мобильных устройств Java- и Obj-C-реализации забросили в пользу JavaScript/React-реализации из единой кодовой базы с веб-версией.

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 1)

Компания Element приобретает Gitter

Объясните, что это за компания и откуда у неё деньги? Уж не те ли это мильёны, что жертвовались на разработку сервера?

anonymous ()
Ответ на: комментарий от anonymous

Element — это коммерческая компания, которая продаёт свои услуги, вроде SaaS-хостинга серверов Matrix, развёртывания серверов Matrix по заказу и технической поддержки по этому делу.

А насчёт того, какое там управление финансами между некоммерческой и коммерческой организацией мне доподлинно неизвестно. То, что они тесно связаны, как, например, Mozilla Foundation и Mozilla Corporation — факт, да.

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 1)
Ответ на: комментарий от anonymous

Является. Децентрализованный - это отсутствие единого центра. Децентрализованные протоколы могут быть как федеративными (как тот же XMPP), где несколько центром, так и вырожденный случай федерации, когда у каждого клиента свой сервер (peer-to-peer).

ma1uta ★★ ()
Ответ на: комментарий от intelfx

И что, вот там прямо ифрейм подгружается? Или всё же какой-то протокол есть?

Matrix используется как сигнальный протокол https://matrix.org/docs/spec/client_server/r0.6.1#voice-over-ip для передачи аудио и видео используется сторонний протокол (WebRTC), для отрисовки картинки - iframe

ma1uta ★★ ()
Ответ на: комментарий от mertvoprog

Для этой вашей шматрицы приличный клиент когда-нибудь будет, или не стоит и ждать?

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

anonymous ()
Ответ на: комментарий от ma1uta

Я в курсе как работает A/V в матрице, спасибо. Вопрос был именно про видеоконференции (которые используют сервер Jitsi Meet): реализует ли Element клиентскую функциональность Jitsi Meet нативно, или же просто открывает iframe с веб-клиентом Jitsi внутри.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от anonymous

эта матрица полный отстой

Что не мешает шматрицефанатикам форсить её здесь уже который год.

никаких киллерфич

Стикеры же, чтобы телеграмодискордное быдло сманивать ;) Для XMPP они так и не запилены вроде.

mertvoprog ()
Ответ на: комментарий от th3m3

Электрон в системе

Да как раз хорошо бы, если бы он ставился в систему единым расшаренным пакетом — но ведь каждая программа его полностью за собой тащит, и иначе никак (в отличие от того же QtWebEngine).

mertvoprog ()
Ответ на: комментарий от ma1uta

и ушёл в XMPP

WUT? Мы им пользовались ещё до того, как ваша шматрица вообще появилась :P

чьи клиенты также не дотягивают до Element

Ну так поскольку в ждаббере нет распространённой реализованности всяких свистелок, то нет и ощущения ущемлённости при их неиспользовании. А грузить Element, чтобы даже банальный реплай сделать — это кхм. Не писать же без реплаев, когда они есть, это дико неудобно при асинхронной коммуникации. Для ждаббера ввиду отсутствия стандарта на реплаи и цитатки банальные катят. А в телеге можно по ID реплаить через Zhabogram, и прочие вещи тупо командами делать, даже без XMPP-сервисов, как в случае со Spectrum2 и libpurple-плагинами. Покажете аналог жабограма для шматрицы, который так же полноценно работает через плейнтекст? ;)

mertvoprog ()
Ответ на: комментарий от mertvoprog

Не является. Сервер большой, конечно, но говорить, что это единственный сервер — эмоциональное враньё.

https://mastodon.social тоже большой и официальный, но не является центром федерации в ActivityPub.

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 1)
Ответ на: комментарий от t184256

уже показал как надо

И где в XMPP показали как надо реализовывать виджеты для серверов интеграций и групповые видео-конференции?

Или что показали? Как отправлять текстовые сообщеньки?

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 1)
Ответ на: комментарий от commagray

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

t184256 ★★★★★ ()