Twitter 的起步就像许多令人兴奋的科技项目一样。它发明并提供了一种独特的“微型博客”服务,这是一种交互式的 RSS 订阅源。Twitter 作为一家公司,对新鲜的想法持开放态度,并提供了许多功能。它逐渐成为现代网络使用中非常重要的一部分,因此,可能感觉有必要将其全部收回。如今,Twitter 显然无法支持人们希望用它做的所有疯狂的事情,并且已经取消了许多他们曾经提供的功能,并且经常因同时缺乏监管和限制过多而受到批评。
由于 Twitter 是现代网络的重要组成部分,人们倾向于将 Twitter 视为“我们”拥有的东西。当然,有人可能会说,即使是封闭系统的用户最终也拥有它,至少在失去所有用户基本上会结束服务的情况下是这样。然而,事实仍然是,Twitter 是一种在原本开放的 HTTP 媒介上的闭源通信方法。
开源能解决这个技术和社会的难题吗?
GNU Social 和 Mastodon
GNU Social 是一款用于公共和私人通信的社交通信软件。它是一个微型博客平台,任何个人或人群都可以运行自己的通信节点,也可以将这些节点相互连接以进行互通。它从字面意义和情感意义上都解决了所有权问题:代码是开源的 (AGPL),为所有人所有,并且节点本身非常多,用户可以货比三家,找到最适合他们的社区,或者启动个人节点。
每个节点都是独立运行和管理的,可以用作私有节点,也可以对其他用户开放,它可以阻止用户或订阅源,也可以接受订阅源。控制权真正掌握在用户手中,但最终结果是一个真正的社交网络。
Mastodon 是 GNU Social 的一种实现,专注于良好、简洁的用户界面和较低的自托管门槛。
作为首屈一指的 Twitter 替代品,它正像野火一样蔓延。
它最好的地方在于,您可以将 Mastodon 和 Twitter 连接在一起,以便轻松过渡。
加入 Mastodon
Mastodon 的优势之一在于,它不仅仅只有一个 Mastodon。该项目本身拥有并运行 mastodon.social,但这只是更大网络中的一个节点。您可以加入任何接受新用户的 Mastodon 实例。instances.mastodon.xyz 上有一个正在运行的实例列表。
另一方面,如果您喜欢在服务器上进行修补,您也可以自由运行自己的实例。Mastodon 是开源的,因此(毫不奇怪)开发人员贡献了几种设置方法。您可以将其作为软件包在服务器上运行,也可以将其作为 Docker 镜像运行,甚至可以实验性地作为 Heroku 服务运行。
注册现有实例很容易。提供一个可用的电子邮件地址进行帐户验证,并设置您想要的密码。验证您的电子邮件地址后,像登录任何其他网站一样登录,使用您的电子邮件地址作为登录名和您的密码。登录后,您还可以设置双因素身份验证。
使用 Mastodon
默认的 Mastodon Web 界面比 Twitter 稍微复杂一些,但并不比 TweetDeck 等复杂。当然,您可以使用其他界面与 Mastodon 交互,包括 移动应用程序 或自定义 Atom 订阅源或使用 Mastodon 丰富 API 的自定义 Web 应用程序。然而,由于每个人都从 Web UI 开始,因此最好先看看它,以习惯 Mastodon 的功能。
Mastodon Web 界面截图。CC-0。
Web UI 由四列组成。左侧列是您的主要控制面板。最重要的是,它包含您的用户名和头像,以及供您输入文本的文本字段。在 Mastodon 中,您发布的任何内容都称为“toot”(就像汽车喇叭,或者可能是史前乳齿象发出的声音?)。
左侧列顶部还有几个选项卡:Get Started(开始使用)、Local Timeline(本地时间线)、Federated Timeline(联邦时间线)、Preferences(偏好设置)和 Logout(注销)。这几乎是您需要知道的所有内容,以便浏览界面。以下是每个选项卡的功能
Get Started(开始使用)
Get Started(开始使用)视图是您当前的默认视图。它将所有其他列恢复为默认视图。将其视为您的主页按钮。
Local Timeline(本地时间线)
Local Timeline(本地时间线)包含同一 Mastodon 服务器上任何非阻止和非静音用户的所有帖子。这与 Twitter 不同,因为 Twitter 没有本地实例。使用 Mastodon,您可以在一个节点上形成用户社区。
Federated Timeline(联邦时间线)
Federated Timeline(联邦时间线)是所有节点上发生的所有公共帖子的订阅源。这是最像 Twitter 的 Mastodon 活动视图,因为它打破了节点的概念,并显示了全球网络上发生的一切。
Preferences(偏好设置)
用户有几个选项可以与其他 Mastodon 用户互动,这些设置都在 Preferences(偏好设置)面板中。
Mastodon 偏好设置。CC-0。
您可以将您的帖子设置为私有或仅发送给您的关注者。您还可以配置双因素身份验证、编辑您的个人资料、更改您的密码、添加“应用程序”,以便您可以通过其 API 与 Mastodon 互动、配置电子邮件通知等等。
信息狂潮
这需要了解很多内容,但最简单的入门方法是只需单击 Federated Timeline(联邦时间线)选项卡,然后在第四列中观看所有兴奋的 Mastodon 用户向您发送他们的随机想法。
联邦订阅源。CC-0。
与其他用户互动非常直观。您可以回复他们的帖子,您可以转发您喜欢的帖子,您可以关注用户,以便他们的帖子出现在您的个人订阅源中,该订阅源位于第二列。
第三列包含通知。当其他用户与您互动时,您将在第三列中看到。
总结
- 第 1 列 是您的指挥中心。
- 第 2 列 是您的个人订阅源。
- 第 3 列 包含通知。
- 第 4 列 显示您的本地或联邦时间线。
这就是 Mastodon。
使用 Python 3 将 Mastodon 连接到 Twitter
社交网络同样依赖于“社交”部分和“网络”部分。Mastodon 在这两方面都有健康的表现。
该技术稳定可靠,因此网络连接非常好,自从它获得一些备受瞩目的媒体报道以来,用户数量大幅增加。但是,您在 Twitter 上认识的并非所有人可能都已迁移到 Mastodon,因此您可能希望您的帖子也出现在您的 Twitter 订阅源上。您不想手动执行此操作。
您可以使用名为 MastodonToTwitter 的工具将 Mastodon 和 Twitter 交叉发布。这是一个 Python 3 脚本,通过它们各自的 API 与 Twitter 和 Mastodon 交互。在 Twitter 端,需要进行一些设置,因为允许 Twitter API 在您的帐户上进行交互是选择加入的。
首先,您需要加入 dev.twitter.com 以获取使用者密钥和访问令牌,每个密钥和令牌都允许您使用外部脚本来控制 Twitter。
在 dev.twitter.com 上创建帐户后,导航到 My Apps(我的应用程序) 并单击 Create New App(创建新应用程序) 按钮。
创建新应用程序。CC-0。
创建新应用程序并不像听起来那么可怕。在这种情况下,“应用程序”实际上只是获取登录令牌的一种机制。为您想要的应用命名,提供虚假的描述和虚假的网站。将回调字段留空。
您可以逐字使用这些设置。CC-0。
创建应用程序后,您将被带到应用程序的概述。虽然这确实提供了您的使用者密钥,但您还需要几个其他部分来启用 API 访问。单击 Consumer key (API Key)(使用者密钥(API 密钥))行旁边的 manage keys and access tokens(管理密钥和访问令牌) 链接。
应用程序概述。CC-0。
在 Application Settings(应用程序设置)屏幕上,单击 Create my access token(创建我的访问令牌) 按钮。这将生成您的访问令牌,并在一个位置显示您需要的所有信息。
保密,安全。CC-0。
请妥善保管这些密钥,因为它们允许在没有用户名和密码等信息的情况下访问您的帐户。不要与他人分享,不要截取它们的屏幕截图并在网上发布。
运行 MastodonToTwitter.py
要运行 MastodonToTwitter,您必须安装其依赖项:pip3、python-twitter 和 Mastodon.py。要在 Fedora 或类似的 Linux 发行版上获取这些依赖项
$ sudo dnf install python3-pip
$ sudo python3 -m pip install twitter-python Mastodon.py
然后从 GitHub 下载 MastodonToTwitter。
$ git clone https://github.com/halcy/MastodonToTwitter.git MastodonToTwitter.clone
将目录更改为 MastodonToTwitter.clone 并使用 Python 3 运行脚本
$ python3 ./MastodonToTwitter.py
该脚本具有首次运行设置模式,如果未找到配置文件,则会自动启动,因此只需按照提示操作即可。
对于 Twitter,将有四个提示:每个提示对应您从创建 Twitter 应用程序中获得的每个密钥。只需粘贴密钥代码,与 Twitter 提供的代码完全相同。
对于 Mastodon,您只需要您注册的电子邮件地址和密码。
完成所有设置步骤后,MastodonToTwitter 将以非交互方式运行,静默监听 Twitter 和 Mastodon 上的任何活动。向 Mastodon 发布一些内容,您将看到 MastodonToTwitter 检测到它,然后在大约 30 秒后,相同的帖子会作为 Twitter 帖子弹出。反过来也是如此。
如何运行 MastodonToTwitter 取决于您。您可以随时手动运行以进行交叉发布,也可以将其设置为 cron 作业,以便每隔一两个小时运行一次。如果您是非常活跃的 Twitter 用户,您甚至可以将其作为守护程序在服务器上运行(低功耗 Raspberry Pi 服务器非常容易设置),以便它立即同步您的帐户。
加入联邦
独立和自由网络的未来在于联邦:由真实的人和值得信赖的社区管理的独立节点,所有节点都汇入更大的联合体。GNU 项目、MediaGoblin、Mastodon、GNUnet 和许多其他项目都在努力实现这一目标。
与其抱怨被您的互联网企业赞助商虐待,不如加入联邦?柯克船长加入了,结果对他来说还不错。试用一下 Mastodon 吧!
9 条评论