Mas O Que é ActivityPub
- Protocolo certificado pela W3C.
- Baseado em HTTP e JSON.
- Tem vários conceitos iguais ao email.
- Composto de outros protolocos: WebFinger, ActivityStreams, ActivityVocabulary e JSON-LD.
O Que é ActivityPub
Activity Vocabulary
- Actors (Person, Bot, Service)
- Notes
- Images
- Links
- ...
ActivityPub
WebFinger
{"@context": "https://www.w3.org/ns/activitystreams",
"type": "Person",
"id": "https://social.example/alyssa/",
"name": "Alyssa P. Hacker",
"preferredUsername": "alyssa",
"summary": "Lisp enthusiast hailing from MIT",
"inbox": "https://social.example/alyssa/inbox/",
"outbox": "https://social.example/alyssa/outbox/",
"followers": "https://social.example/alyssa/followers/",
"following": "https://social.example/alyssa/following/",
"liked": "https://social.example/alyssa/liked/"}
ActivityPub
{"@context": "https://www.w3.org/ns/activitystreams",
"type": "Person",
"id": "https://social.example/alyssa/",
"name": "Alyssa P. Hacker",
"preferredUsername": "alyssa",
"summary": "Lisp enthusiast hailing from MIT",
"inbox": "https://social.example/alyssa/inbox/",
"outbox": "https://social.example/alyssa/outbox/",
"followers": "https://social.example/alyssa/followers/",
"following": "https://social.example/alyssa/following/",
"liked": "https://social.example/alyssa/liked/"}
ActivityPub
{"@context": "https://www.w3.org/ns/activitystreams",
"type": "Person",
"id": "https://social.example/alyssa/",
"name": "Alyssa P. Hacker",
"preferredUsername": "alyssa",
"summary": "Lisp enthusiast hailing from MIT",
"inbox": "https://social.example/alyssa/inbox/",
"outbox": "https://social.example/alyssa/outbox/",
"followers": "https://social.example/alyssa/followers/",
"following": "https://social.example/alyssa/following/",
"liked": "https://social.example/alyssa/liked/"}
ActivityPub
Activity Stream
{"@context": "https://www.w3.org/ns/activitystreams",
"type": "Create",
"id": "https://social.example/alyssa/posts/a29a6843",
"to": ["https://chatty.example/ben/"],
"actor": "https://social.example/alyssa/",
"object": {"type": "Note",
"id": "https://social.example/alyssa/posts/49e2d03d",
"attributedTo": "https://social.example/alyssa/",
"to": ["https://chatty.example/ben/"],
"content": "Did you finish reading that book?"}}
ActivityPub
ActivityPub
Client to Server Activities
create, update, delete, follow, add, remove, like,
block, undo
ActivityPub
Server to Server Activity
create, update, delete, follow, accept (follow),
reject (to follow), add, remove, like, announce
(reposting/boosting), undo
ActivityPub
Public
https://www.w3.org/ns/activitystreams#Public
Suporte ao ActivityPub
- ForgeFed (Código, Github)
- PixelFed (Fotos, Instagram)
- PeerTube (Videos, YouTube)
- HubZilla/Plume/WordPress ActivityPub Plugin (Blogging, WordPress)
- DistBin (Snippets, Pastebin/Gist)
- Diaspora (Social, Facebook)
- Microblog/Honk/Plemora/Mastodon (Micro-blogging, Twitter)
Suporte ao ActivityPub
Mastodon
- 2.629 instâncias
- 10.877.412 de contas criadas
- 157.437 usuários ativos (última semana de novembro)
- 1.562.887.737.129.765 toots