Matrix (protokol)

**Matrix** je otvorený protokol pre komunikáciu v reálnom čase. Je navrhnutý tak, aby umožňoval používateľom s účtami u jedného poskytovateľa komunikačných služieb komunikovať s používateľmi iného poskytovateľa prostredníctvom chatu, VoIP a videotelefónie. Cieľom je, aby komunikácia prebiehala v reálnom čase medzi poskytovateľmi služieb, podobne ako pri e-mailovom protokole SMTP. Dlhodobejšou víziou je prekonať fragmentáciu IP komunikácie a umožniť bezpečnú výmenu a synchronizáciu informácií, ktorá by bola plne pod používateľskou kontrolou bez ohľadu na použité zariadenie, konkrétnu službu či jej poskytovateľa.

Z technického hľadiska ide o komunikačný protokol aplikačnej vrstvy pre federalizovanú komunikáciu v reálnom čase. Poskytuje API HTTP rozhranie a referenčnú open source implementáciu bezpečného preposielania a uchovávania správ vo formáte JSON v rámci otvorenej federácie serverov. Umožňuje integráciu so štandardnými webovými službami prostredníctvom protokolu WebRTC, čo uľahčuje tvorbu aplikácií pre webové prehliadače.

## História
Projekt pôvodne vytvorili Matthew Hodgson a Amandine Le Pape v spoločnosti Amdocs a zároveň bol vytvorený četovací nástroj nazvaný *Amdocs Unified Communications*. Spoločnosť Amdocs potom financovala väčšinu prác na vývoji od roku 2014 do októbra 2017. V roku 2015 vznikla jej dcérska spoločnosť *Vector Creations Limited*, do ktorej postupne prešli vývojári Matrixu.

### New Vector
Spoločnosť bola založená s cieľom ponúkať poradenské služby pre Matrix a platené hosťovanie serverov Matrix na komerčnej báze.

Niekoľko týždňov od svojho vzniku spoločnosť Matrix a spoločnosť Purism zverejnili plány na spoluprácu pri vytváraní telefónu Librem 5. Librem 5 bol zamýšľaný ako telefón založený na protokole Matrix, ktorého východisková aplikácia pre hovory a zasielanie správ by používala Matrix pre audio a video hovory aj rýchle správy.

### Nadácia Matrix.org
V októbri 2018 vznikla súkromná spoločnosť s ručením obmedzeným *the Matrix.org foundation*, ktorá slúži ako neutrálny právny subjekt pre ďalší rozvoj štandardu.

## Protokol
Matrix je určený na použitie ako VoIP, IoT a IM, vrátane skupinovej komunikácie, s dlhodobým cieľom stať sa všeobecným štandardom pre zasielanie správ a synchronizáciu dát pre web. Protokol podporuje zabezpečenie a replikáciu dát, uchovanie úplnej histórie konverzácie bez centrálneho kontrolného bodu, ktorý by predstavoval potenciálny bod zlyhania. Existujúce komunikačné služby je možné integrovať do ekosystému Matrix.

## Premostenia
Matrix podporuje preposielanie správ z iných četovacích aplikácií do miestností Matrixu. Tieto premostenia sú programy, ktoré bežia na serveri a komunikujú so servermi mimo siete Matrix. Premostenie môžu pracovať v režimoch bábka alebo relé, pričom v prvom prípade sa osobný užívateľský účet javí ako odosielateľ správ, v tom druhom potom správy za regulárne účty posiela bot.

## Klienti
Element je referenčná implementácia klienta. Existuje mnoho ďalších klientov, botov, premostení, serverov a iných implementácií protokolu Matrix.

## Domovské servery
Domovský server je pre používateľa ten Matrix server, na ktorom si používateľ vytvoril účet. Vzorovou implementáciou je aplikácia Synapse, a hoci existuje celý rad ďalších, Synapse zatiaľ ako jediná dosiahla produkčnú kvalitu.

K dispozícii je zoznam verejný domovských serverov, nie je teda nevyhnutné a ani sa neodporúča používať občas preťažený server matrix.org.

## Referencie

## Iné projekty

## Zdroj

Kategória:Aplikačné protokoly
Kategória:VoIP protokoly
Kategória:Telekomunikácie
Kategória:Instant messaging protokoly