前言

RSS(英文全称:RDF Site Summary 或 Really Simple Syndication[[2]](https://zh.wikipedia.org/wiki/RSS#cite_note-powers-2003-1-2)),中文译作简易信息聚合[[3]](https://zh.wikipedia.org/wiki/RSS#cite_note-3),也称聚合内容[[4]](https://zh.wikipedia.org/wiki/RSS#cite_note-%E5%BC%A0%E9%94%902015-4),是一种消息来源格式规范,用以聚合多个网站更新的内容并自动通知网站订阅者。博主非常喜欢用RSS订阅来收集各种有用的信息集中阅读和管理,非常便捷,之前用过多种RSS客户端,但是客户端的问题在于不能及时推送和提醒。因此,博主搜了一下相关的解决方案,找到了Telegram电报群机器人订阅RSS并即时提醒的方法,这篇文章就是详解介绍一下这个方案的部署流程。

部署

准备条件

  • VPS一台
  • 电报账号
  • Telegraph账号(可选)

安装过程

Flowerss Docker部署

1.下载配置文件 在项目目录下新建 config.yml 文件

mkdir ~/flowerss &&\
wget -O ~/flowerss/config.yml \
    https://raw.githubusercontent.com/indes/flowerss-bot/master/config.yml.sample
  • 注意修改文件夹路径

2.修改配置文件

vim ~/flowerss/config.yml

配置文件内容如下:

bot_token: xxx  
telegraph_token: xxx  
telegraph_account: xxx  
telegraph_author_name: thinker  
telegraph_author_url: https://blog.thinker.quest  
socks5:  
update_interval: 10  
user_agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36  
  
mysql:  
  host:  
  port:  
  user:  
  password:  
  database:  
  
telegram:  
  endpoint:  
  
log:  
  level: release  
  db_log: false # 打印数据库日志,false则只会打印数据库错误日志  
  
#  file: ./flowerss.log  
  
#  sqlite:  
#    path: ./data.db  
  
allowed_users:
  • 填写bot_token: XXX ,填写电报机器人Token,只有这一项是必填,其它可忽略
  • 填写telegraph_token 和 telegraph_account,这个可以忽略,填写后可以上传到telegraph保存

3.运行Docker

docker run -d -v ~/flowerss:/root/.flowerss indes/flowerss-bot
  • 注意修改文件夹路径

电报机器人创建和获取对应Token

上面的配置文件中需要填写电报机器人的Token,这里来详细讲解一下如何获得。

  1. 开始私聊 BotFather

私聊BotFather
点 Start 按钮
私聊BotFather:点Start按钮

  1. 开始创建 Bot

私聊BotFather:开始创建Bot
输入昵称,中英文都可
输入用户名,要求别人以“bot”结尾,用户名具有唯一性,要别人没用过的

  1. 获取Token

私聊BotFather:创建Bot成功
这个Token就可以直接填写到上述配置文件中。

Telegraph的Token获取

  1. 注册和申请Telegraph账号
  2. 配置API连接

打开浏览器,输入以下内容:

https://api.telegra.ph/createAccount?short_name=xxxxxx&author_name=xxxxx&author_url=https://xxxxxxxxxxxxxxxx

其中xxxxxx就是你将要填写的内容,分别是“简称”、“作者名”、“作者网站”

具体例子:`

https://api.telegra.ph/createAccount?short_name=notification&author_name=thinker&author_url=https://blog.thinker.quest

返回的 JSON 中 access_token 字段值即为 Telegraph Token

使用

个人订阅

个人订阅支持的命令:

/sub [url] 订阅(url 为可选)
/unsub [url] 取消订阅(url 为可选)
/list 查看当前订阅
/set 设置订阅
/check 检查当前订阅
/setfeedtag [sub id] [tag1] [tag2] 设置订阅标签(最多设置三个Tag,以空格分隔)
/setinterval [interval] [sub id] 设置订阅刷新频率(可设置多个sub id,以空格分隔)
/activeall 开启所有订阅
/pauseall 暂停所有订阅
/import 导入 OPML 文件
/export 导出 OPML 文件
/unsuball 取消所有订阅
/help 帮助

Channel订阅

  1. 将 Bot 添加为 Channel 管理员
  2. 发送相关命令给 Bot

Channel 订阅支持的命令:

/sub @ChannelID [url] 订阅
/unsub @ChannelID [url] 取消订阅
/list @ChannelID 查看当前订阅
/check @ChannelID 检查当前订阅
/unsuball @ChannelID 取消所有订阅
/activeall @ChannelID 开启所有订阅
/setfeedtag @ChannelID [sub id] [tag1] [tag2]  设置订阅标签(最多设置三个Tag,以空格分隔)
/import 导入 OPML 文件
/export @ChannelID 导出 OPML 文件
/pauseall @ChannelID 暂停所有订阅

ChannelID 只有设置为 Public Channel 才有。如果是 Private Channel,可以暂时设置为 Public,订阅完成后改为 Private,不影响 Bot 推送消息。

例如要给 t.me/debug 频道订阅 阮一峰的网络日志 RSS 更新:

  1. 将 Bot 添加到 debug 频道管理员列表中
  2. 给 Bot 发送 /sub @debug http://www.ruanyifeng.com/blog/atom.xml 命令

参考文章

  1. https://flowerss-bot.vercel.app/#/usage
  2. https://www.goojie.eu/2797.html
  3. https://www.qian.blue/archives/telegram-flowerssr_bot.html
最后修改:2022 年 10 月 30 日
如果觉得我的文章对你有用,请随意赞赏