Mastodon: Wie Heise einen föderierten Social-Media-Dienst integriert

Die Webentwicklung von heise online berichtet über die technischen Herausforderungen, Mastodon zu den Social Media Diensten hinzuzufügen.

In Pocket speichern vorlesen Druckansicht 9 Kommentare lesen
Stuttgart,,Germany,-,09-24-2022:,Mobile,Phone,With,Webpage,Of,Open-source

(Bild: T. Schneider/Shutterstock.com)

Lesezeit: 3 Min.
Inhaltsverzeichnis

Mastodon gibt es zwar schon seit einigen Jahren, doch vor etwa einem Jahr bekam der Dienst besonders viel Aufmerksamkeit, da X (damals Twitter) an Elon Musk überging. Anfang 2023 startete auch heise online eine eigene Mastodon-Instanz und wir begannen Mastodon als Dienst neben all den anderen Social-Media-Plattformen zu integrieren. Jedoch ist etwas bei Mastodon anders: Der Dienst ist föderiert und das erforderte ein paar andere Lösungen als bei den bisherigen, zentralisierten Diensten.

Ich roll dann mal aus - Hilko Holweg

Hilko Holweg ist Frontend-Developer bei Heise Medien, wo es ihm besonders die Web-Performance angetan hat. Neben dem Frontend interessiert er sich auch für vieles mehr, das mit Technik zu tun hat. So schrieb er beispielsweise für die c't einen Artikel über einen digitalen Assistenten mit Offline-Spracherkennung auf Basis des Raspberry Pi.

Unsere ersten Schritte machten wir mit heise-online-Accounts auf anderen Mastodon-Instanzen. Es stellte sich bald heraus, dass wir „all in“ gehen wollten und da bot sich eine eigene Instanz an, alleine schon der Unabhängigkeit bei den Einstellungen der Instanz wegen. So starteten wir Anfang 2023 social.heise.de – eine öffentliche Mastodon-Instanz, die alle Accounts von heise sammelt, jedoch nicht zur offenen Registrierung gedacht ist. Seitdem wurden dort diverse Accounts eingerichtet, die teils von echten Menschen, teils automatisiert befüllt werden. Auch bei der Automatisierung wurde einiges ausprobiert und auf Rückmeldung der Community reagiert.

Auf unseren Artikel-Seiten (und diversen anderen Stellen) ermöglichen wir, dass man den Inhalt mit anderen Menschen teilen kann. Bei bisherigen Social-Media-Diensten gab es da einfach eine Sharing-URL, die immer gleich war, denn es waren ja zentralisierte Dienste. Das Konzept ließ sich so jedoch nicht auf Mastodon übertragen, da es zig Mastodon-Instanzen und damit diverse unterschiedliche URLs zum Sharing gibt.

Wir bauten also die Möglichkeit, beim Sharing die URL der Mastodon-Instanz anzugeben, auf der man den Account hat, mit dem man den Inhalt teilen möchte. Nach dem ersten Teilen merkt sich der Browser diese URL auch, sodass man beim nächsten Mal nichts mehr tippen muss, sondern das Feld schon vorausgefüllt ist. Technisch setzen wir für den Modal-Dialog auf das dialog-Element.

Um Inhalte von Dritt-Anbietern einfach einzubinden, haben wir schon vor vielen Jahren das Projekt „Embetty“ veröffentlicht. Dieses dient als Proxy und ruft von Social-Media- und Video-Plattformen Inhalte ab, um den Inhalt dann von einem eigenen Server aus zur Verfügung zu stellen. So können User den Inhalt dieser Plattform sehen, ohne Daten an einen Drittanbieter weitergeben zu müssen (bzw. bei Video-Diensten das Vorschaubild sehen und erst bei Klick den Inhalt des Dienstes einbinden).

Bisher kannte Embetty aber noch keine Mastodon-Posts, also erweiterten wir auch dieses Projekt um Mastodon, sodass wir – und alle, die Embetty verwenden – nun Mastodon-Posts ohne vorherige Consent-Abfrage einbetten können.

Der Aufwand war nicht sonderlich groß, einen verteilten Dienst hinzuzufügen, aber hier und da mussten wir uns erst mal wieder bewusst machen, was diese Art des Netzwerks für Anpassungen mit sich bringt. Nutzt ihr Mastodon? Oder stört euch der föderierte Ansatz und ihr bleibt dem Dienst fern? Wir freuen uns auf eine rege Diskussion im Forum.

Der Autor ist selbstverständlich auch bei Mastodon auf der Heise-Instanz vertreten und der heise online Account hat einen angehefteten Post mit einem Überblick unserer verschiedenen News-Accounts auf der Instanz. (rme)