Netzwerken, Soziales
Schreibe einen Kommentar

Mastodon Funktionsweise

Da es gerade für Menschen die Erfahrungen anderer sozialer Netzwerke mitbringen schwer zu durchschauen scheint wie Mastodon funktioniert, möchte ich versuchen anhand einer virtuellen „Geburt“ einer Instanz aufzuzeigen, wie sich Nachrichten in der Föderation verbreiten. Wenn Du dazu Fragen hast, schreib mich gerne direkt auf Mastodon an: Christian Schmidt auf Mastodon.

Eine Adresse auf ein Profil im Fediverse (auch für Mastodon) setzt sich immer aus einem Profilnamen und dem Instanznamen zusammen, die jeweils mit einem @ Zeichen beginnen. Meine Adresse lautet @christian@social.jcs-net.de und funktioniert ähnlich wie eine E-Mail-Adresse. Der Instanzname ist eine Domain, die auf einen Server im Internet verweist und der Profilname zeigt auf diesem Server auf das Profil des Benutzers. Du könntest also den Instanznahmen kopieren, in die Adresszeile Deines Browsers einfügen und erreichst so die Einsprungseite dieser Instanz (https://<instanzname ohne @>), in meinem Beispiel also https://social.jcs-net.de. Auch das Profil kannst Du so direkt im Browser aufrufen indem der Profilname einfach durch einen Schrägstrich getrennt angehängt wird (https://<instanzname ohne @>/<Profilname mit @>), was bei mir dann so aussieht: https://social.jcs-net.de/@christian. Während beim Instanznamen die Groß/Kleinschreibung irrelevant ist, muss beim Profilnamen darauf geachtet werden!

Der Server ist installiert

Nach der Installation einer neuen Instanz hat diese bereits den ersten Benutzer, seinen Administrator. Da Kommunikation so aber unmöglich erscheint lassen wir sich einen weiteren Benutzer anmelden. Jeder Benutzer spricht zu jeder Zeit ausschließlich mit der eigenen Instanz. Nur dort ist er angemeldet und kann sich authentifizieren, der Server also sicherstellen mit genau diesem Benutzer zu sprechen.

Gehen wir also davon aus das eine erste Nachricht verfasst und ohne Änderung möglicher Einstellungen abgeschickt wird. D.h. sie ist ohne Erwähnung (Mention), öffentlich und nicht in der Sichtbarkeit beschränkt (die Standardeinstellung) – wo wird diese zu sehen sein? Ok, einen Schritt zurücktreten bitte. Welche Möglichkeiten des Sichtbarwerdens gibt es denn überhaupt? Zunächst einmal gibt es aus der Sicht der Instanz zwei Zeitleisten (Timelines). Eine Lokale und eine Föderierte.

Mastodon Server Timelines
Mastodon Server Timelines

Zwar föderiert unsere Instanz noch nicht zu diesem Zeitpunkt, tatsächlich wird die Nachricht aber in beiden Zeitleisten angezeigt und dort kann der zweite Benutzer sie lesen. Die lokale Zeitleiste zeigt jede Nachricht die ein Nutzer dieser Instanz mit der Sichtbarkeit „öffentlich“ abschickt – gerne als das Wohnzimmer der Instanz bezeichnet, ist es doch eher eine Art Gemeinschaftsraum einer Wohngemeinschaft ähnlich. Die föderierte Zeitleiste betrachten wir weiter unten. Neben den Instanzzeitleisten, Funktionen zur Verwaltung des eigenen Profils und solchen Dingen, stellt die Instanz jedem angemeldeten Benutzer aber auch noch eine virtuelle Ansicht zur Verfügung.

Mastodon persönliche Timeline
Persönliche Timeline

Dabei handelt es sich bei der Spalte „Startseite“ um eine persönliche Zeitleiste und in dieser wird die selbst erstellte Nachricht ebenfalls angezeigt. Beim zweiten Benutzer blieb sie bisher aber leer. Bevor wir jetzt den zweiten Nutzer antworten lassen, schauen wir uns zu nächst an welche Möglichkeiten Mastodon bei der Sichtbarkeit von Beiträgen bietet und was sie bewirken. Ändern kannst Du die Sichtbarkeit mit dem Globus im Beitragseditor, wodurch sich das Symbol ändert und so die aktuelle Sichtbarkeit anzeigt. In Apps können sich die Symbole unterscheiden.

  • Öffentlich
    • Die Beschreibung „Für alle sichtbar“ zeigt es bereits, der Beitrag wird in den öffentlichen Zeitleisten (lokal, föderiert) angezeigt und jeder darf sie sehen bzw. kann sie sich anzeigen lassen, wenn er direkt auf den Beitrag verwiesen wird.
  • Nicht gelistet
    • Der Beitrag darf noch immer von jedem angezeigt werden, wird aber nicht in den öffentlichen Zeitleisten angezeigt (gelistet). Diese Sichtbarkeit bietet sich für Antworten an um die öffentlichen Zeitleisten sauber bzw. nutzbar zu halten.
  • Nur Follower
    • Das ist selbst beschreibend, ändert sich aber mit jedem neuen Follower oder einem der entfolgt.
  • Nur erwähnte Profile
    • Das ist die Direktnachricht an ein oder mehrere Konten. boosten lassen sich solche Nachrichten nicht, aber es können während der Kommunikation weitere Profile hinzugefügt oder gelöscht werden. Das wird in Gruppen schnell unübersichtlich!

Lassen wir also den zweiten Benutzer auf die Nachricht in der lokalen Zeitleiste antworten und wie beschrieben, die Sichtbarkeit einschränken auf „nicht gelistet“. Durch das Antworten wird die Adresse von Benutzer1 in die Antwort übernommen. Er ist getaggt, man spricht auch von mentioned (erwähnt) und damit taucht diese Nachricht in seiner persönlichen Zeitleiste und seinen Benachrichtigungen auf. Natürlich wird sie wie jede selbst erstellte Nachricht, auch in der persönlichen Zeitleiste des Antwortenden angezeigt, nicht aber in der lokalen oder föderierten Zeitleiste. Andere Benutzer würden die Antwort nur zu sehen bekommen, wenn sie die ursprüngliche Nachricht anklicken um dann alle Antworten zu sehen die entweder öffentlich oder ungelistet sind. Natürlich könntest Du bei der Antwort auch die Sichtbarkeit auf „nur erwähnte Profile“ umstellen, dann wird die Antwort zur Direktnachricht und kann von Dritten nicht angezeigt werden.

Bis da hin sind die Funktionalitäten denen anderer sozialer Netzwerke noch sehr ähnlich, nur das Adressaten und Sichtbarkeit unabhängig voneinander eigestellt werden können. Das ändert sich noch einmal grundlegend, wenn wir zu föderieren beginnen.

Die Föderation

Nehmen wir an Du bekommst die Mastodon Adresse eine(r/s) Bekannten zugeschickt, mit de(r/m) Du Dich verbinden möchtest (nimm gern meine als Beispiel: @christian@social.jcs-net.de). Kopiere sie und füge sie in die Suchleiste links-oben (Suchen oder URL einfügen) ein und drücke ENTER. Deine Instanz befragt jetzt die in dieser Adresse angegebene Instanz nach dem Profil und zeigt sie unterhalb der Suche an. Nach einem Klick darauf wird das Profil (ganz rechts in der Web-App) angezeigt und Du kannst über die Schaltfläche „Folgen“ eine Verbindung herstellen. Jetzt föderiert Deine Instanz mit jener dieses Profils (Benutzer2).

Schreibt jetzt Benutzer2 eine öffentlich Nachricht, wird sie wie zuvor auf seiner Instanz in lokaler und föderierter Zeitleiste angezeigt (keine alten Nachrichten). Da seine Instanz aber von eurer Verbindung weiß, wird sie die Nachricht auch an Deine Instanz senden und sie wird dort in Deiner persönlichen Zeitleiste und in der föderierten der Instanz angezeigt. Wenn Du darauf antwortest, wird Deine Instanz genau so verfahren und diese Antwort an die zweite Instanz senden, die diese dem Benutzer2 in seiner persönlichen Zeitleiste und seinen Benachrichtigungen anzeigt.

Damit hast Du alle Informationen die aus Nutzersicht beschreiben was passiert. Aus der Sicht der Instanz fängt es jetzt erst an interessant zu werden und das Wissen darum mag Dir helfen etwas Geduld aufzubringen, wenn es mal stockt auf Deiner Instanz.

Es wird voll im Fediverse

Hätte jeder Nutzer seine eigene Instanz, wären wir hier mit der Beschreibung fertig. Was passiert jetzt aber wenn Deine Instanz 1000 Nutzern eine Heimat bietet. Die wollen nicht alle gleichzeitig ihre Nachrichten loswerden, aber mit wie vielen Instanzen muss das ausgetauscht werden? Aktuell gibt es über 4.000 Mastodon Instanzen und über 15.000 im Fediverse mit über 8 Millionen Nutzern, Die größte Mastodon Instanz hat über 800.000 Nutzer!

Stelle Dir als Beispiel vor Du hättest 10 Follower auf 10 Instanzen, siehst einen tollen Tröt den Du gerne weitergeben möchtest. Du gibst ihm ein Sternchen (like) und boostest ihn also. Deine Instanz muss den Status (like und boost) an die Instanz des Autors zurückgeben sowie die Adresse des Beitrags an die 10 Instanzen Deiner Follower. Die schauen jetzt lokal ob dieser Tröt bereits bekannt ist, andernfalls holen sie ihn von der Instanz des Autors um sie Deinen Followern anzuzeigen. Die Instanz des Autors bekommt neben der Statusmeldung Deiner Instanz ggf. Anfragen von 10 weiteren Instanzen die beantwortet werden wollen.

Sollte also die eine oder andere Nachricht, Antwort oder ein Status verspätet eintreffen, denk einfach daran was im Hintergrund alles passieren muss um das sicherzustellen.

Schreibe einen Kommentar