Teraz nie zablokujesz: opublikowano pierwszy wydanie zdecentralizowanej platformy komunikacyjnej Jami

Teraz nie zablokujesz: opublikowano pierwszy wydanie zdecentralizowanej platformy komunikacyjnej Jami
Dzisiaj pojawiła się pierwsza wersja zdecentralizowana platforma komunikacyjna Jami, która jest rozpowszechniana pod kodową nazwą Together. Wcześniej projekt rozwijał się pod inną nazwą — Ring, a jeszcze wcześniej — SFLPhone. W 2018 roku zdecentralizowany komunikator został przemianowany, aby uniknąć potencjalnych konfliktów z znakami towarowymi.

Kod komunikatora jest rozpowszechniany na licencji GPLv3. Jami jest dostępny dla GNU/Linux, Windows, MacOS, iOS, Android i Android TV. Można wybrać jeden z interfejsów opartych na Qt, GTK lub Electron. Jednak najważniejsze jest to, że Jami pozwala umożliwia wymianę wiadomości bez konieczności korzystania z zewnętrznych serwerów.

Zamiast tego między użytkownikami ustanawiane jest bezpośrednie połączenie z wykorzystaniem szyfrowania end-to-end. Klucze są obecne jedynie po stronie klienta. Procedura autoryzacji opiera się na certyfikatach X.509. Oprócz wiadomości, platforma umożliwia przeprowadzanie rozmów audio i wideo, tworzenie telekonferencji, wymianę plików, a także organizację wspólnego dostępu do plików i treści ekranu.

Początkowo projekt był pozycjonowany i rozwijany jako programowy telefon SIP. Następnie jednak twórcy postanowili rozszerzyć funkcjonalność projektu, zachowując kompatybilność z SIP i umożliwiając wykonywanie połączeń przy użyciu tego protokołu. Program obsługuje różne kodeki, w tym G711u, G711a, GSM, Speex, Opus, G.722, a także protokoły ICE, SIP, TLS.

Wśród funkcji komunikacyjnych znajduje się anulowanie przekierowania, wstrzymywanie połączeń, nagrywanie rozmów, historia połączeń z wyszukiwaniem, automatyczna kontrola głośności, integracja z książkami adresowymi GNOME i KDE.

Wyżej wspomniano o solidnym systemie autoryzacji użytkowników. Mechanizm opiera się na blockchainie — książka adresowa działa na podstawie Ethereum. Można jednocześnie łączyć się z kilku urządzeń, kontaktując się z użytkownikiem niezależnie od tego, które z urządzeń jest aktywne. Książka adresowa, która odpowiada za translację nazw w RingID, została zrealizowana z wykorzystaniem węzłów wspieranych przez różnych uczestników. Dzięki nim można uruchomić własny węzeł, aby utrzymać lokalną kopię globalnej książki adresowej.

Jeśli chodzi o adresowanie użytkowników, deweloperzy wykorzystali do rozwiązania tego zadania protokół OpenDHT, który nie wymaga stosowania scentralizowanych rejestrów z informacjami o użytkownikach. Podstawą Jami jest jami-daemon, odpowiedzialny za przetwarzanie połączeń, organizację komunikacji oraz obsługę wideo i dźwięku.

Interakcja z jami-daemon zrealizowana jest na podstawie biblioteki LibRingClient. Jest ona kluczowa do budowy oprogramowania klienckiego i zapewnia niezbędną funkcjonalność, która nie jest uzależniona od interfejsu użytkownika ani platform. A już na podstawie LibRingClient opracowywane są aplikacje klienckie.

Podczas przekształcania P2P-messenger w platformę telekomunikacyjną deweloperzy dodali nowe i zaktualizowali istniejące funkcje. Oto one:

  • Poprawiono działanie w sieciach o niskiej przepustowości.
  • Zredukowano ilość używanych zasobów podczas pracy na Androidzie i iOS.
  • Przepisano klienta dla Windows. Może działać również w trybie tabletowym.
  • Pojawiły się narzędzia do przeprowadzania telekonferencji z wieloma uczestnikami.
  • Dodano możliwość zmiany trybu transmisji w konferencji.
  • Aplikację można jednym kliknięciem przekształcić w serwer (może to być potrzebne, na przykład, do przeprowadzenia konferencji).
  • Wdrożono serwer zarządzania kontami JAMS.
  • Istnieje możliwość podłączenia wtyczek, które rozszerzają możliwości podstawowego komunikatora.

Teraz nie zablokujesz: opublikowano pierwszy wydanie zdecentralizowanej platformy komunikacyjnej Jami

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster