Real Time Communications

Adding Matrix for interoperability to existing chat apps

How we added Gitter to Matrix, and how you can join too.
Matrix (https://matrix.org) is an open protocol for secure, decentralised communication - defining an end-to-end-encrypted real-time communication layer for the open Web. Historically the network has been made up of newly written native Matrix clients, or bridges to 3rd party existing chat systems (e.g. Slack, Discord, Telegram). This year, however, we added production-grade native Matrix support for the first time to a major 3rd party chat system: Gitter (https://gitter.im) over the course of about 5 weeks. This talk will explain how we did it it, and show how easily other existing chat systems can extend their reach into the whole Matrix ecosystem; breaking open those walled gardens forever.
With the European Commission proposing to mandate interoperability for big tech "gatekeepers" (https://ec.europa.eu/commission/presscorner/detail/en/ip202347), it's never been more relevant to understand how best to expose existing communication silos via open communication APIs such as Matrix. Between October & December 2020 we happened to go through precisely this process - designing how best to make Gitter natively speak Matrix such that Matrix users can natively participate in all Gitter conversations, using it as the reference example of linking an existing large-scale chat silo into Matrix. Do you try to natively speak the Matrix server-server API? Or do you embed a homeserver (if so, which one?) and use the Application Service API? Where do you store the data, and how do you minimise duplication between your existing service and Matrix? How do you scale to a userbase of millions of users? How do you handle end-to-end encryption? In this talk, we'll answer these questions; and show how we're at the point where Matrix has matured enough that it could actually be used to add open communication APIs to the tech giants if they ever found themselves in need.

Additional information

Type devroom

More sessions

2/6/21
Real Time Communications
Matthew Wild
D.rtc
Having been an advocate of free (as in freedom) communication systems for almost as long as I've been on the internet, the number of people I successfully converted away from proprietary networks was surprisingly low for a very long time. In this talk I will share the lessons I have learned while trying to implement (Prosody/Snikket), document (modernxmpp.org) and promote communication freedom to people.
2/6/21
Real Time Communications
Lorenzo Miniero
D.rtc
Last year, the world changed, and musicians were among those that were hit the most, and music lovers with them. Can WebRTC help, here? This presentation will try to cover different areas where it could, and in some cases already is.
2/6/21
Real Time Communications
Lorenzo Mangani
D.rtc
Exploring viable methods to build decentralized, secure, encrypted p2p tracing/logging/capture swarms using HEP and DHT to provide for the present and future needs of webRTC platforms and other next-generation real-time communication systems.
2/6/21
Real Time Communications
Philipp Hancke
D.rtc
WebRTC means many things to many people. One of these things is the C++ library that is used to implement the WebRTC functionality such as audio, video and data channels in the Chrome browser. The library is a complex beast with more than a million lines of code and a history dating back to 2004. It implements a wide range of network protocols and audio/video codecs. The interaction between WebRTC and Chrome is heavily influencing the how features are developed, reviewed and shipped to millions ...
2/6/21
Real Time Communications
Dan Jenkins
D.rtc
Seeing Zoom used for interviews and "virtual audiences" throughout the pandemic was humiliating for those of us who build projects and products with WebRTC. There must be a better way; and there is - building a WebRTC platform to generate feeds that broadcasters and event producers can consume as they see fit - no need to show Zoom's UI on TV any longer! This is the tale of how and why we built the service that's been used to record all of the RTC track sessions at FOSDEM.
2/6/21
Real Time Communications
Teofil Voivozeanu
D.rtc
Instruct the audience for achieving high throughput online exports of charged events with in-memory data only.
2/6/21
Real Time Communications
Saúl Ibarra Corretgé
D.rtc
With the advent of Zoom's questionable use of the term "End to End Encryption" many turned their eyes to FLOSS solutions. Thanks to the insertable streams feature which shipped in Chrome at just the right time, we were able to ship a working E2EE implementation in a reasonably short amount of time. In this presentation we'll walk through all that was needed, what our plans for the future are and how others can leverage what we learned to add E2EE to their WebRTC applications.