OStatus是一种去中心化社交网络协议,正如您所说,它由其他几个协议组成:Atom 提要、Activity Streams(1.0 版)、PubSubHubbub、Salmon 和 WebFinger。
pump.io是一个具有公开活动流(1.0 版)的 API 的引擎。Pump.io 旨在作为 StatusNet 的继任者。
- Identi.ca于 2013 年从 StatusNet 切换到 pump.io。
- Pump.io 打算弃用他们的 API 并转移到 ActivityPub(请参阅开发者文档)。
Activity Streams用于使用 JSON(-LD) 格式对社交活动流进行序列化。
- 1.0 版是由一个有谷歌、Facebook 和微软支持的工作组创建的。它使用 JSON 作为序列化格式。
- 2.0版是从 1.0 派生的经过净化的版本,并使用 JSON-LD 作为序列化格式。它已成为 W3C 推荐,分为两部分:核心和词汇。
ActivityPub是一个基于Activity Streams 2.0 的去中心化社交网络协议,它是Fediverse的基础。它也是一个 W3C 推荐。
- ActivityPub 规范在许多地方故意不完整和灵活。为了创建成熟的 Fediverse 应用程序,它应该与:
- Webfinger(查找联合帐户)
- HTTP 和/或 JSON-LD 签名(用于 server-2-server 通信)
- OAuth 2.0(客户端凭据、授权范围)。
- 有关 ActivityPub 应用程序的长且不断增长的列表,请参阅Feneas ActivityPub Watchlist。
所以总而言之,OStatus、pump.io API 和 ActivityPub 是创建联合社交应用程序的三种不同的不兼容方式(尽管它们有一些共同点)。其中 ActivityPub 提供了最好的前进方式,并且是您应该从此列表中选择的协议。
PS。作为 ActivityPub 实施者提出问题的最佳场所是SocialHub和Feneas论坛。另请参阅SocialHub的新 ActivityPub 实施者指南。