Présentation du concept
Le monde des médias sociaux ouverts semble actuellement divisé, avec différents groupes défendant leurs propres solutions. Cet article propose une approche différente en suggérant d'exécuter ActivityPub sur un système de données personnelles (PDS) basé sur le protocole ATProto.
Contexte technique
ATProto est un ensemble d'outils génériques pour la construction d'applications de médias sociaux, étendable pour supporter une infrastructure générale pour un serveur de données personnelles (PDS). L'architecture d'ATProto est explicitement décrite en termes de PDS et de cet utilisateur en tant qu'agent. Les routes API com.atproto sont destinées à être une norme ouverte.
ATProto présente des propriétés intéressantes, notamment le support d'identités pluggables qui ne dépendent pas du serveur utilisé, ainsi que des référentiels de données signés. Cela donne le pouvoir aux utilisateurs et non aux administrateurs de serveur, garantissant ainsi une sortie crédible et évitant les verrous.
Fonctionnement d'ActivityPub sur ATProto
ActivityPub peut être exécuté sur ATProto en utilisant le document d'acteur, qui fournit les URL des points de terminaison API pour diverses opérations. Le document d'acteur peut être utilisé pour pointer vers un PDS ATProto avec des routes ActivityPub.
{
"@context": "https://www.w3.org/ns/activitystreams",
"id": "https://mastodon.social/users/robin",
"type": "Person",
"following": "https://pds.berjon.com/xrpc/org.w3.activitypub.following",
"followers": "https://pds.berjon.com/xrpc/org.w3.activitypub.followers",
"inbox": "https://pds.berjon.com/xrpc/org.w3.activitypub.inbox",
"outbox": "https://pds.berjon.com/xrpc/org.w3.activitypub.outbox",
"preferredUsername": "robin.berjon.com",
"name": "Robin Berjon"
}
Implications et limites
Cependant, exécuter ActivityPub sur ATProto n'est pas sans problèmes. Les premiers problèmes incluent le fait qu'un nsid XRPC ne peut être qu'une requête (GET) ou une procédure (POST), mais pas les deux, et que les systèmes d'identité et de poignée ne sont pas entièrement alignés.
Ces problèmes ne sont pas insurmontables, mais nécessitent des ajustements pour permettre une intégration réussie. Les avantages potentiels d'une telle approche incluent une plus grande flexibilité et une meilleure résilience pour les utilisateurs de médias sociaux ouverts.