Gitter moves to the Matrix ecosystem and merges with the Element Matrix client

Company Element, created by the key developers of the Matrix project, announced about the purchase of the Gitter chat and instant messaging service, which was formerly owned by GitLab. Gitter plan include in the Matrix ecosystem and turn into a chat platform using Matrix decentralized communications technologies. The amount of the transaction is not reported. In May, Element received $4.6 million investment from the creators of WordPress.

The transfer of Gitter to Matrix technologies is planned to be carried out in several stages. The first step is to provide a quality gateway for Gitter through the Matrix network, which will allow Gitter users to communicate directly with Matrix network users, and Matrix network members to connect to Gitter chat rooms. Gitter will be able to be used as a full client for the Matrix network. The deprecated Gitter mobile app will be replaced by the Element (formerly Riot) mobile app, redesigned to support Gitter-specific functionality.

In the long term, in order not to scatter efforts on two fronts, it was decided to develop a single application that combines the capabilities of Matrix and Gitter. All advanced Gitter features are planned to be ported to Element, such as instant room browsing, hierarchical room catalog, integration with GitLab and GitHub (including the creation of chat rooms for projects on GitLab and GitHub), KaTeX support, threaded discussions, and indexable search engines archives.

These features will be gradually migrated to the Element app and merged with Matrix platform features such as end-to-end encryption, decentralized communications, VoIP, conferencing, bots, widgets, and an open API. Once the unified version is ready, the old Gitter application will be replaced with the new Element application, which includes Gitter-specific functionality.

Recall that Gitter is written in JavaScript using the Node.js framework and open under the MIT license. Gitter allows developers to communicate in relation to GitHub and GitLab repositories, as well as some other services such as Jenkins, Travis and Bitbucket. Of the features of Gitter stands out:

  • Saving the history of communication with the ability to search in the archive and navigate by month;
  • Availability of versions for the Web, desktop systems, Android and iOS;
  • Ability to connect to a chat using an IRC client;
  • Convenient system of references to objects in Git repositories;
  • Support for using Markdown markup in message text;
  • Ability to subscribe to chat channels;
  • Display user status and user information from GitHub;
  • Support for linking to issue reports (#number to link to the issue);
  • Tools for batch sending notifications with an overview of new messages to a mobile device;
  • Support for attaching files to messages.

The Matrix decentralized communications platform uses HTTPS+JSON as a transport with the ability to use WebSockets or a protocol based on CoAP+Noise. The system is formed as a community of servers that can interact with each other and are combined into a common decentralized network. Messages are replicated across all servers to which messaging participants are connected. Messages are propagated across servers similar to how commits are propagated between Git repositories. In the event of a temporary shutdown of the server, messages are not lost, but are transmitted to users after the server is resumed. Various user ID options are supported, including email, phone number, Facebook account, etc.

There is no single point of failure or message control in the network. All servers covered by the discussion are equal among themselves.
Any user can run their own server and connect it to the public network. It is possible to create gateways for Matrix to interact with systems based on other protocols, for example, prepared by services for sending two-way messages to IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp and Slack. In addition to instant text messaging and organizing chats, the system can be used to transfer files, send notifications,
organizing teleconferences, making voice and video calls. It also supports advanced features such as typing notification, user online presence assessment, read confirmation, push notifications, server-side search, client history and status synchronization.

Source: opennet.ru

Add a comment