Gitter przenosi się do ekosystemu Matrix i łączy się z elementem klienta Matrix
spółka Element, stworzony przez kluczowych twórców projektu Matrix, ogłosił przy zakupie usługi czatu i komunikatora Gitter, która wcześniej należała do GitLab. Gitter planują zostać włączona do ekosystemu Matrix i przekształcona w platformę czatu wykorzystującą zdecentralizowane technologie komunikacyjne Matrix. Kwota transakcji nie jest raportowana. W maju Element otrzymane Inwestycja twórców WordPressa o wartości 4.6 miliona dolarów.
Transfer technologii Gitter do Matrix planowany jest w kilku etapach. Pierwszym krokiem jest zapewnienie wysokiej jakości bramy dla Gittera poprzez sieć Matrix, która umożliwi użytkownikom Gittera bezpośrednią komunikację z użytkownikami sieci Matrix, a członkom sieci Matrix łączenie się z pokojami rozmów Gitter. Gitter będzie mógł służyć jako pełnoprawny klient sieci Matrix. Starsza aplikacja mobilna Gitter zostanie zastąpiona aplikacją mobilną Element (dawniej Riot), zaktualizowaną w celu obsługi funkcji specyficznych dla Gitter.
Aby w dłuższej perspektywie nie rozpraszać wysiłków na dwa fronty, zdecydowano się na stworzenie jednej aplikacji, która będzie łączyła możliwości Matrixa i Gittera. Element planuje udostępnić wszystkie zaawansowane funkcje Gittera, takie jak natychmiastowe przeglądanie pokoi, hierarchiczny katalog pokoi, integracja z GitLab i GitHub (w tym tworzenie czatów dla projektów w GitLab i GitHub), obsługa KaTeX, dyskusje wątkowe i indeksowane archiwa wyszukiwarek.
Funkcje te będą stopniowo wprowadzane do aplikacji Element i łączone z możliwościami platformy Matrix, takimi jak kompleksowe szyfrowanie, zdecentralizowana komunikacja, VoIP, konferencje, boty, widżety i otwarte API. Gdy ujednolicona wersja będzie już gotowa, stara aplikacja Gitter zostanie zastąpiona nową aplikacją Element, która zawiera funkcje specyficzne dla Gittera.
Przypomnijmy, że Gitter jest napisany w JavaScript przy użyciu platformy Node.js i otwarty na licencji MIT. Gitter umożliwia organizację komunikacji pomiędzy programistami w powiązaniu z repozytoriami GitHub i GitLab, a także niektórymi innymi usługami, takimi jak Jenkins, Travis i Bitbucket. Cechy Gittera wyróżniają się:
Zapisywanie historii komunikacji z możliwością przeszukiwania archiwum i nawigacji według miesięcy;
Możliwość połączenia się z czatem za pomocą klienta IRC;
Wygodny system linków do obiektów w repozytoriach Git;
Wsparcie dla używania znaczników Markdown w tekście wiadomości;
Możliwość subskrybowania kanałów czatu;
Wyświetlanie statusu użytkownika i informacji o użytkowniku z GitHub;
Obsługa linków do wysyłania wiadomości (#numer łącza do wysyłania);
Narzędzia do wysyłania powiadomień zbiorczych z przeglądem nowych wiadomości na urządzenie mobilne;
Obsługa dołączania plików do wiadomości.
Platforma Matrix do organizacji zdecentralizowanej komunikacji wykorzystuje jako transport HTTPS+JSON z możliwością wykorzystania WebSockets lub protokołu opartego na CoAP+Hałas. System powstaje jako społeczność serwerów, które mogą ze sobą współdziałać i są zjednoczone we wspólną zdecentralizowaną sieć. Wiadomości są replikowane na wszystkich serwerach, z którymi połączeni są uczestnicy przesyłania wiadomości. Wiadomości są propagowane pomiędzy serwerami w ten sam sposób, w jaki zatwierdzenia są propagowane pomiędzy repozytoriami Git. W przypadku tymczasowej awarii serwera wiadomości nie są tracone, lecz przesyłane do użytkowników po wznowieniu pracy serwera. Obsługiwane są różne opcje identyfikatora użytkownika, w tym adres e-mail, numer telefonu, konto na Facebooku itp.
W sieci nie ma pojedynczego punktu awarii ani kontroli komunikatów. Wszystkie serwery objęte dyskusją są sobie równe.
Każdy użytkownik może uruchomić własny serwer i podłączyć go do wspólnej sieci. Istnieje możliwość stworzenia bramy do interakcji Matrixa z systemami opartymi na innych protokołach, np. przygotowany usługi dwukierunkowego wysyłania wiadomości do IRC, Facebooka, Telegramu, Skype, Hangouts, e-maila, WhatsApp i Slack. Oprócz komunikatorów i czatów, system może służyć do przesyłania plików, wysyłania powiadomień,
organizowanie telekonferencji, wykonywanie połączeń głosowych i wideo. Obsługuje także takie zaawansowane funkcje, jak powiadomienie o wpisaniu, ocena obecności użytkownika w Internecie, potwierdzenie przeczytania, powiadomienia push, wyszukiwanie po stronie serwera, synchronizacja historii i statusu klienta.