Master's Thesis

Matrix Protocol Bridge for SIP Voice Calls

Final Thesis 1.12 MB

Author of thesis: Ing. Štefan Gajdošík

Acad. year: 2025/2026

Supervisor: RNDr. Marek Rychlý, Ph.D.

Reviewer: Ing. Michal Koutenský

Abstract:

This diploma thesis focuses on the design and implementation of a bidirectional bridge between applications using the SIP and Matrix communication protocols. The thesis introduces the architecture and principles of both protocols, including their signaling and media transmission mechanisms based on RTP and WebRTC technologies. It also describes the concept of bridging Matrix with external communication systems and protocols. The practical part of the thesis consists of the implementation of a bridge application in the Python programming language, enabling interoperability between SIP and Matrix environments.

Keywords:

SIP, Matrix, VoIP, RTP, WebRTC, media transmission, signaling, protocol bridge, Opus, PCMU

Date of defence

24.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B.

Topics for thesis defence

  1. Ako náročné by bolo rozšírenie mosta o podporu videohovorov? Vyžadovalo by to veľké zmeny do architektúry?
  2. Je Python výkonově dostačující?

Language of thesis

Slovak

Faculty

Department

Study programme

Information Technology and Artificial Intelligence (MITAI)

Specialization

Information Systems and Databases (NISD)

Composition of Committee

prof. RNDr. Alexandr Meduna, CSc. (předseda)
doc. Ing. Radek Burget, Ph.D. (místopředseda)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. Šárka Květoňová, Ph.D. (člen)
Ing. Vladimír Veselý, Ph.D. (člen)
Ing. Jiří Hynek, Ph.D. (člen)

Supervisor’s report
RNDr. Marek Rychlý, Ph.D.

Řešení probíhalo sice pomalejším tempem, ale student měl o téma zájem a byl aktivní. Navrhuji hodnotit práce stupněm dobře (C).

Evaluation criteria Verbal classification
Information about assignment

Cílem práce bylo zpřístupnit SIP volání přes otevřený protokol pro komunikaci Matrix. Právě návrh praktického propojení dvou uvedených technologií byl obtížnou částí řešení.

Activity during solution, consultations, communication

Práce byla dokončena včas a její finální podoba byla konzultována. Připomínky student zapracoval.

Publication activity, awards

Bez publikací či ocenění. Programové řešení je zveřejněno jako open source.

Work with literature

Vzhledem k implementačnímu zaměření práce se student soustředil při studiu především na aktuální dokumentace použitých technologií. Při studiu byl samostatný a aktivní.

Activity during solution, consultations, communication

Student řešil práci skoro 2 roky, pracoval rozvážně a samostatně, ale také průběžně. Více aktivní byl zejména polední rok a řešení dostatečně konzultoval. Na konzultacích byl připraven a stanovené termíny dodržel.

Points proposed by supervisor: 75

Grade proposed by supervisor: C

Reviewer’s report
Ing. Michal Koutenský

Výsledkom práce je riešenie ktoré úspešne premosťuje VoIP komunikáciu do ekosystému Matrix pomocou štandardného mostového rozhrania, čo je funkcionalita ktorú žiadny iný most nepodporuje. Text práce je koncipovaný veľmi prístupne a efektívne komunikuje riešenú problematiku, s drobnými jazykovo/typografickými nedostatkami. Študentovu prácu preto navrhujem hodnotiť stupňom výborne (A).

Evaluation criteria Verbal classification Points Max. points
The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled

Študent zadanie splnil bez výhrad.

Extent of the technical report

Evaluation level: meets the minimum requirements only

Rozsah textovej časti práce je kratšieho rozsahu, no dostatočne pokrýva teoretické prerekvizity ako aj praktickú realizáciu riešenia.

Presentation level of the technical report

Práca je štrukturovaná zrozumiteľne, obsah a náväznosť jednotlivých kapitol je jednoducho pochopiteľná. Kapitoly popisujúce fungovanie SIP (+ RTP) a Matrix (+ WebRTC) sa sústredia na vysokoúrovňový popis architektúry v kombinácií s popisom konkrétnych detailov relevantných pre cieľ práce. Matrix aj WebRTC sú rozsiahle protokoly, čo poskytuje jednoduchú cestu zvýšiť počet normostrán, no nemyslím si, že by detailnejší popis ich iných častí signifikantne zvýšil kvalitu výslednej práce. Naopak, oceňujem zdržanlivosť pri ich popise a pečlivý výber relevantných informácií.

90 100
Formal preparation of a technical report

Práca obsahuje malé jednotky gramatických chýb alebo preklepov za kapitolu (napr. zlý rod časovaného slovesa ktorý pravdepodobne nebol upravený pri prepise predchádzajúcej časti vety, extra "ň" za otváracou zátvorkou - tieto klávesy sú na slovenskej klávesnici vedľa seba, atď.). Za hlavný nedostatok považujem referencie na obrázky - tie sú len tak vložené do textu bez akéhokoľvek sprievodného textu, ktorý by čitateľovi objasnil na čo sa daná číselná referencia odkazuje a prečo je v aktuálnom kontexte relevantná.

82 100
Work with literature

Študent využil relevantné zdroje primerané praktickému zameraniu práce, primárne špecifikáciu SIP a Matrix a dokumentácie použitých technológií.

90 100
Realisation output

Výstupom práce je Matrix-SIP most ktorý umožňuje vytváranie hovorov v oboch smeroch. Funkcionalitu mosta mi študent prakticky demonštroval na dohodnutom stretnutí. Implementovaný most poskytuje funkčné, zdokumentované, nasaditeľné riešenie. Historicky existuje niekoľko open source Matrix-SIP mostov, ktoré sú v prvotných fázach implementácie a dlhodobo neudržiavané (git repozitáre 3-5 rokov bez akejkoľvek aktivity). Počas riešenia práce bol na Matrix konferencii zverejnený a prezentovaný XiVO SIP Bridge ako open source riešenie od komerčnej spoločnosti XiVO (Avencall), ktorý študent spomína aj v texte práce. Na rozdiel od študentovho riešenia, ktoré je implementované ako štandardný most, je toto riešenie modul do Matrix serveru Synapse. Pre Matrix, ako otvorený protokol, existuje niekoľko serverových implementácií mimo Synapse. Pre používateľov, ktorí už operujú vlastnú inštanciu iného servera, je teda XiVO most z technických dôvodov nepoužiteľný. Výstup práce teda hodnotím ako veľmi prínosný pre Matrix ekosystém.

95 100
Usability of results

Výsledok má veľký potenciál pre praktické využitie ako jediný plne funkčný a udržiavaný serverovo-nezávislý Matrix-SIP most. Ako je popísané aj v textovej časti práce, pre väčšie nasadenia by bolo vhodné prepísať implementáciu do rýchlejšieho jazyka a doladiť UX pre prostredia s viacerými užívateľmi. Riešenie môže zároveň slúžiť ako inšpirácia/základ VoIP podpory mostov iných platforiem, kde táto funkcionalita aktuálne chýba.

The difficulty of the assignment

Evaluation level: more difficult assignment

Cieľom práce je návrh a implementácia mostu (bridge), ktorý by umožnil prepojenie komunikačného ekosystému Matrix s VoIP systémami využívajúcimi protokol SIP. Matrix mosty sú bežnou, oficiálne podporovanou súčasťou na dosiahnutie interoperability s komunikačnými platformami tretích strán. Existuje množstvo mostov, ktoré prepájajú proprietárne platformy (Meta Messenger/WhatsApp, Discord, ...) alebo iné otvorené protokoly (IRC, XMPP, ...), no typicky cielia na a podporujú iba premostenie textových správ, aj v prípade že prepájaná platforma podporuje (video)hovory. Most pre textové správy prekladá správy jedného aplikačného protokolu na druhý; prepojenie VoIP vyžaduje okrem spoločnej signalizácie aj prepojenie RTP (resp. iného) toku prenášajúceho hovorové dáta, ktoré sa nutne musí diať v reálnom čase (na rozdiel od textových správ, kde aj napr. niekoľkosekundová latencia by bola akceptovateľná u 1-1 konverzácií). Na základe tejto zložitosti považujem zadanie za náročnejšie.

Topics for thesis defence:
  1. Ako náročné by bolo rozšírenie mosta o podporu videohovorov? Vyžadovalo by to veľké zmeny do architektúry?
Points proposed by reviewer: 90

Grade proposed by reviewer: A

Responsibility: Mgr. et Mgr. Hana Odstrčilová