LetterFeed:将邮件通讯(Newsletter)转为RSS订阅
简介
什么是 Newsletter ?
Newsletter
(新闻简报或邮件通讯)是一种定期发布的电子邮件形式的出版物,通常由组织、企业、个人或社区发送给其订阅者。内容包括最新消息、更新、活动通知、专题文章、产品促销或其他相关信息,针对特定主题或兴趣群体而设计。
Newsletter
是一种一对多的内容传递方式,主要作为企业、博主和独立作者的邮件营销工具,用于向订阅用户推送产品、折扣和品牌信息,目的在于促进销售。
什么是 LetterFeed ?
LetterFeed
是一款自托管的应用程序,可将电子邮件新闻通讯转换为RSS
源。它定期通过IMAP
扫描用户的电子邮件收件箱,查找已配置发件人的新邮件,并将其处理后添加为相应新闻通讯的RSS
源条目。
主要特点
- 自托管:用户可以在自己的服务器上运行,确保数据的隐私和安全。
- IMAP 支持:通过
IMAP
连接到电子邮件账户,支持SSL
加密。 - 电子邮件转 RSS: 定期检查新邮件,将来自您指定发件人的电子邮件转换为
RSS
订阅源。 - 灵活配置:通过环境变量配置
IMAP
设置、电子邮件处理选项等。 - Docker 支持:使用
Docker
和Docker Compose
简化安装和部署过程。
应用场景
- 电子邮件新闻通讯管理:用户可以轻松管理和阅读来自不同来源的新闻通讯,集中在一个
RSS
阅读器中。 - 统一阅读体验:在用户喜欢的
RSS
阅读器中阅读所有订阅的新闻、博客文章和新闻通讯,也便于数据分析和处理。 - 自动化工作流:适合需要定期获取和处理电子邮件内容的自动化场景,例如将新闻报道转化为更新通知。
- 个人和团队使用:无论是个人用户还是团队,都可以通过
LetterFeed
有效管理信息流。 - 存档和搜索: 利用
RSS
阅读器强大的存档和搜索功能来管理和查找过去的新闻通讯内容。
LetterFeed
提供一种将电子邮件新闻通讯整合到其现有阅读工作流中的方法。许多有价值的信息和深度内容通过电子邮件新闻通讯的形式分发,但对于习惯使用 RSS
的用户来说,在电子邮件客户端和 RSS
阅读器之间切换可能会降低效率,而 LetterFeed
提升了用户的阅读体验和信息获取效率。
安装
在群晖上以 Docker 方式安装。涉及前、后端两个容器,采用 docker-compose
安装
本文写作时,
latest
版本对应为v0.4.0
;
env.txt
与 IMAP
、电子邮件处理和用户名/密码相关的设置可以通过环境变量或 UI
进行设置。
1 | # The base URL of the application, e.g., http://localhost:3000 or https://letterfeed.example.com |
环境变量 | 描述 |
---|---|
LETTERFEED_APP_BASE_URL |
应用的基本 URL ,例如 http://localhost:3000 或 https://letterfeed.example.com |
LETTERFEED_BACKEND_URL |
后端服务的 URL ,例如 http://backend:8000 |
LETTERFEED_DATABASE_URL |
数据库的 URL 。若更改卷挂载点,请相应更改此值,例如 sqlite:////data/letterfeed.db |
LETTERFEED_IMAP_SERVER |
IMAP 服务器地址,必须支持 SSL 的 993 端口 |
LETTERFEED_IMAP_USERNAME |
IMAP 登录的用户名 |
LETTERFEED_IMAP_PASSWORD |
IMAP 登录的密码 |
LETTERFEED_SEARCH_FOLDER |
用于搜索新邮件的文件夹,默认为 INBOX |
LETTERFEED_MOVE_TO_FOLDER |
处理完的邮件移动到的文件夹 |
LETTERFEED_MARK_AS_READ |
是否将处理过的邮件标记为已读,默认值为 true |
LETTERFEED_EMAIL_CHECK_INTERVAL |
检查新邮件的间隔时间,单位为分钟,默认值为 15 |
LETTERFEED_AUTO_ADD_NEW_SENDERS |
是否自动为未知发件人设置新邮件,默认值为 false |
LETTERFEED_SECRET_KEY |
用于身份验证的密钥,可以使用命令 openssl rand -hex 32 生成 |
LETTERFEED_AUTH_USERNAME |
身份验证的用户名 |
LETTERFEED_AUTH_PASSWORD |
身份验证的密码 |
其中 :
192.168.0.197
为老苏的群晖主机的IP
,你需要按自己的IP
进行修改;- 一个支持在
993
端口上运行IMAP over SSL
安全连接的邮箱;
docker-compose.yml
将下面的内容保存为 docker-compose.yml
文件
1 | services: |
然后执行下面的命令
1 | # 新建文件夹 letterfeed 和 子目录 |
运行
在浏览器中输入 http://群晖IP:3730
就能看到登录界面
用环境变量中
LETTERFEED_AUTH_USERNAME
和LETTERFEED_AUTH_PASSWORD
设置的值laosu/123456
登录
登录成功的主界面
测试邮件设置是否正确,Settings
–> Test Connection
因为 88
邮箱是老苏专用的测试邮箱,所以没有任何的新闻订阅,只能写封测试邮件了
发送完成后,在 88
邮箱中刷新一下,确实已经收到了,不要点开
回到 LetterFeed
,点 Add Newsletter
或者 Add Your First Newsletter
Newsletter Name
:名称Custom URL
:会出现在订阅地址中Move To Folder
:邮件处理逻辑,可以将其移动到其他文件夹Email Addresses
:需要跟踪转换的发件人邮箱
添加完成之后
等一会儿,或者直接 Process Now
,会看到有 1
条了
以 FreshRSS
为例添加订阅源
源地址
:为http://群晖IP:3730/api/feeds/outlook
订阅源类型
:为默认的RSS/Atom
设置没问题的话,很快就会看到
点开看看,就是我们发的内容
参考文档
LeonMusCoden/LetterFeed: Convert email newsletters into RSS feeds
地址:https://github.com/LeonMusCoden/LetterFeed