Teil V
Die Arbeit an der P2P-Matrix macht ebenfalls gute Fortschritte - Sie können die einzelnen Updates auf https://arewep2pyet.com verfolgen. Nach langem Hin und Her zwischen Hard-State-Routing und Soft-State-Routing in Pinecone haben wir uns für Soft-State-Routing entschieden (das zwar geschwätziger ist, aber im Hinblick auf die Entschärfung von Angriffen einfacher zu erklären). Die Gesprächigkeit bedeutet jedoch, dass es sich nicht so gut skalieren lässt, wie man es sich erhofft - daher arbeiten wir jetzt an einem “abgestuften” Ansatz, bei dem separate Pinecone-Netzwerke zu einem Inter-Netzwerk zusammengeschaltet werden können, was uns Skalierbarkeit auf Kosten von etwas weniger Dezentralität bietet. Man kann mit Fug und Recht behaupten, dass die Reise hierher ziemlich frustrierend war, und leider hat sich Neil Alexander vor ein paar Monaten entschieden, weiterzuziehen. Devon ist jedoch in seine Fußstapfen als primärer Pinecone- und P2P-Kämpfer getreten und macht erstaunliche Fortschritte bei der verbleibenden Arbeit - als erstes implementiert er Store and Forward Relaying in Dendrite, so dass die heutigen Pinecone-Netzwerke Nachrichten austauschen können, selbst wenn der Empfängerknoten offline ist. Als Nächstes steht die Verbindung von P2P Matrix mit dem heutigen Matrix-Netzwerk an - und dann die Arbeit am Tiering, um die erforderliche Skalierbarkeit zu erreichen. Die Erwartung ist, dass die heutigen serverseitigen Dendrite-Instanzen effektiv zu statischen Pinecone-Peers werden, die Nachrichten im Namen von P2P-Knoten speichern und weiterleiten und Tiering zwischen den jeweiligen Pinecone-Subnetzen bereitstellen.
Hydrogen und Chatterbox
Die Entwicklung von Hydrogen, einem superleichten progressiven Web-App-Matrix-Client, ist im Laufe des Jahres ebenfalls vorangeschritten (mit einigen Abstechern zu End-to-End-Tests via Trafficlight, die sowohl Hydrogen als auch anderen Clients zugutekommen).
Die größte Veränderung war, dass Hydrogen einen separaten SDK-Layer entwickelt hat, mit dem die Engine in andere Webapps eingebettet werden kann, um nicht-invasive Matrix-Nachrichten mit einem möglichst minimalen Fußabdruck hinzuzufügen. Dies wurde im Juli mit dem Chatterbox-Angebot von Element vorgestellt, das eine Open-Source-Chatbox bereitstellt, die problemlos in bestehende Websites eingebettet werden kann, und auch das Chatrix-Wordpress-Plugin antreibt, an dem Automattic arbeitet.
Hydrogen fügte auch unabhängige Unterstützung für MSC3401 Mehrparteien-Sprach-/Videoanrufe hinzu (wenn auch auf einem Zweig), so dass wir heterogene Element Call <-> Hydrogen Gruppenanrufe präsentieren und beweisen konnten, dass MSC3401 als echte offene interoperable Anrufsignalisierung geeignet ist - und im Gegenzug treibt Hydrogen SDK, komplett mit den Mehrparteien-Sprach-/Videoanrufen, die Matrix-Engine innerhalb von Third Room an - unserer Metaverse-on-Matrix-Plattform.
Wir freuen uns darauf, dass Hydrogen im Laufe des nächsten Jahres die volle Funktionsgleichheit mit Element erreicht und an immer mehr unerwarteten Orten als jedermanns bevorzugter eingebetteter Matrix-Client auftaucht!
Dritter Raum
Schließlich ist es kaum zu glauben, dass Third Room, unsere Matrix-basierte offene Plattform für dezentrale räumliche Echtzeit-Zusammenarbeit, zu Beginn des Jahres kaum existierte. Third Room zeigt, dass Matrix weit mehr ist als nur Chat und VoIP, sondern auch die räumliche Kommunikationsebene des offenen Webs unterstützen kann. Dies hat dazu geführt, dass eine ganze Reihe neuer Funktionen für Matrix entwickelt wurden - wie z.B. native OIDC-Authentifizierung, skalierbares Mehrparteien-VoIP im Hydrogen SDK, effiziente Speicherung von Dateien im Binärformat und seit kurzem auch die Definition von erweiterbarem Verhalten für Matrix-Räume als WASM-Objekte, die im Matrix-Raum selbst gespeichert werden.
Third Room selbst ist ein Hydrogen-basierter Matrix-Client, der es ermöglicht, Matrix-Räume als interaktive Multiparty-3D-Umgebungen (unter Verwendung von MSC3815) zu betrachten - mit der Welt als glTF-Blobs, die im Matrix-Raum gespeichert sind, und der Möglichkeit, jeden Aspekt dieser Welt mit Hilfe von WASM-Blobs, die in Matrix-Räumen gespeichert sind, zu skripten und anzupassen, die auf den teilnehmenden Clients ausgeführt werden, wobei eine neue Scenegraph-API namens WebSceneGraph offengelegt wird, um das glTF zu manipulieren, aus dem die Welt besteht. Wir erwarten auch, dass eine Variante der normalen Widget-API von Matrix auf diese WASM-Blobs zugreifen kann, um das Konzept der sandboxed clientseitigen Widgets, Bots oder anderer Integrationen einzuführen, so dass die Benutzer Matrix anpassen und erweitern können, ohne jemals wieder serverseitige Bots ausführen zu müssen.
Ziel ist es, eine Plattform bereitzustellen, mit der jede Art von interaktiver, räumlicher Echtzeit-Multiparty-App auf offene, standardisierte, dezentralisierte und Ende-zu-Ende-verschlüsselte Weise erstellt werden kann - sei es für Spiele, soziale oder berufliche Aktivitäten wie die Erstellung “digitaler Zwillinge” für die Fertigung, Landwirtschaft, intelligente Städte, Such- und Rettungsdienste usw. Sie können mehr über die Vision unter thirdroom.io/preview lesen, oder über die Presseberichterstattung bei TheNewStack oder Golem. Wir haben uns auch unglaublich geschmeichelt gefühlt, als wir vor ein paar Wochen eingeladen wurden, Third Room auf der SIGGRAPH Asia zu präsentieren. Die offizielle Aufzeichnung ist noch nicht erschienen, aber Sie können hier ein freches Bootleg finden.
Ende September haben wir Tech Preview 1 von Third Room veröffentlicht. Seitdem dreht sich alles um die Entwicklung von WebSceneGraph und der WASM-Skripting-Umgebung, mit der Benutzer ihre eigenen Funktionen in JS über QuickJS oder C (und in Zukunft auch in Rust oder Zig) erstellen können. Wir haben auch daran gearbeitet, die Vernetzung (über Matrix WebRTC-vermittelte Datenkanäle) robuster zu machen und zu einem “autoritativen” Simulationsmodell zu wechseln, anstatt jeden Client seine eigene Physiksimulation laufen zu lassen, um das schwierige Problem dezentraler Physiksimulationen ein wenig zu entschärfen. Außerdem fügen wir eine dringend benötigte “Entdeckungs”-Seite hinzu, die den Nutzern hilft, neue Räume zu finden und alles zu erkunden, was auf der Plattform möglich ist. Und schließlich fügen wir WebXR-Unterstützung hinzu, damit die Leute ThirdRoom mit VR- und AR-Hardware nutzen können, wenn sie es wünschen. All dies sollte in der Tech Preview 2 kulminieren, die in den kommenden Wochen erscheinen wird.
Wenn Sie eine kurze Vorschau auf die Skripting-Fähigkeiten am Horizont mit einem sehr einfachen Skript, das im Media Repository gespeichert ist, erhalten möchten, besuchen Sie https://thirdroom.io/world/#surprise:thirdroom.dev und klicken Sie auf den Fernseher ;)
Fazit
Da haben Sie es: Es war ein durchwachsenes Jahr für Matrix, aber zumindest kommt das Projekt selbst schneller voran als je zuvor, vorerst. Wenn du dir die Vorhersagen aus dem letztjährigen Weihnachts-Blogpost ansiehst, wirst du sehen, dass die meisten von ihnen sogar eingetroffen sind. In diesem Jahr werden wir die Vorhersagen einfach halten: Unsere Pläne für 2023 bestehen darin, sicherzustellen, dass die Stiftung gut finanziert ist, alle schrittweisen Verbesserungen in Bezug auf Leistung und Benutzerfreundlichkeit, die sich derzeit in der Betaphase befinden, so schnell wie möglich auszuliefern - und ein für alle Mal zu beweisen, dass sich Matrix tatsächlich mit den proprietären zentralisierten Alternativen messen kann.
Danke für den Flug mit Matrix;
Matthew, Amandine und dem gesamten Kernteam.
(Ist länger geworden als erwartet, ich hoffe, trotzdem interessant.)
And again, Big Action by the FBI against Z-Lib today. Tor still works.