6 个版本 (稳定版)
1.2.2 | 2023年12月24日 |
---|---|
1.2.0 | 2023年6月23日 |
1.1.0 | 2023年5月10日 |
0.1.1 | 2023年3月9日 |
#891 in 命令行工具
4MB
754 行
MOP3
Mastodon 到电子邮件客户端网关
MOP3 是一个玩具般的、符合标准的服务器,支持 POP3/SMTP,可从您的主 Mastodon 时间线中获取数据。这使得从20世纪80年代到今天的各种电子邮件客户端可以接收、发送和回复 Mastodon 帖子(包括图片)。这个项目最初是一个复古计算项目,但在开发过程中我已经将其作为主要客户端使用,因为即使是现代的电子邮件客户端,如 Apple 的 Mail.app 和 Windows Mail,也支持 POP3 和 SMTP。MOP3 可以配置为以 Unicode 或 ASCII 编码帖子,是否包含 HTML,以及图片以链接或附件的形式。
安装
在发布页面提供了 Windows、Mac 和 Linux 的二进制文件。由于这是用 Rust 编写的,因此应在您的主机上运行 cargo install mop3
以安装它。如果不行,下载仓库并运行 cargo build
也应该有效。
使用方法
这需要一个访问令牌,您可以在您的 Mastodon 账户的“设置”->“开发”->“新建应用”中获取。客户端密钥和密钥不是必需的。
mop3 --help
将提供所有重要的运行时标志。不需要任何标志,但 --token
建议用于避免通过 TCP 发送您的访问令牌,并且由于没有实现 SMTP 认证,它是发布所必需的。我建议复古客户端使用 --ascii
标志,而现代客户端使用 --html --inline
。
要连接到它,请将您的客户端指向服务器 IP/端口,将用户名设置为 "[email protected]",将密码设置为您的账户令牌,并禁用 SSL/TLS/SPA/SMTP 认证。如果使用 --token
,则密码可以是任何内容。一些客户端默认不会在用户名中包含域名,因此请确保它包含两部分,如果所有其他方法都失败了,请使用 --account
。
我强烈建议在您的客户端中关闭“包含原始消息”、“内联回复”等类似设置,因为当回复结束且原始消息开始时,解析非常困难,并且解析代码经常错误地将标题发布到您的 Mastodon 消息中。
在第一次连接时,MOP3 将获取您时间线上的最后 40 条帖子。在每次后续连接中,它将只获取自上次连接以来上传的帖子。这无法区分客户端,因此需要重新启动服务器以在新的客户端上重新获取帖子。
免责声明
您自行承担运行此应用程序的风险。MOP3 是我的第一个 Rust 应用程序,因此可能包含略低于世界级水平的代码。它还使用来自 90 年代/70 年代的协议,没有安全性,认证也很少。我不建议在互联网上运行此应用程序。我还尽量友好地使用 Mastodon API,但如果它做了奇怪的事情,我不对您的 sysop 收到的任何 DM 负责然而,代码相对简单,已经过测试,特别是使用 --token
选项,不传递秘密数据,因此 应该 在 LAN 上安全运行。
依赖关系
~12–26MB
~415K SLoC