51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

flowerss 一个支持应用内阅读的 Telegram RSS Bot

flowerss bot


Build Status Go Report Card GitHub FOSSA Status


作者搭建:https://t.me/rssflowbot
我所搭建: https://t.me/laoxongRss_bot
问题反馈群组 Change Log


flowerss-bot 演示


Features

  • 常见的 RSS Bot 该有的功能
  • 支持 Telegram 应用内 instant view
  • 支持为 Group 和 Channel 订阅 RSS 消息
  • 丰富的订阅设置

准备

申请Bot Token
打开Telegram,搜索@BotFather,发送/newbot ,申请一个Bot,申请完成后,会发给你一个Bot Token

Telegraph Token 申请

curl https://api.telegra.ph/createAccount?short_name=laoxong&author_name=laoxong&author_url=https://www.2002000.xyz

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

安装

Docker 部署

docker run -d -v ~/data/flowerss:/var/flowerss indes/flowerss-bot -b <bot token> -t <telegraph token 可省略>

下载二进制

由于 GoReleaser 不支持 Cgo,如果要使用 SQLite 做为数据库,请下载源码自行编译。

Releases 页面下载对应的版本。

源码安装

git clone https://github.com/indes/flowerss-bot && cd flowerss-bot
make build
./flowerss-bot

配置

根据以下模板,新建 config.yml 文件。

bot_token: XXX
#多个telegraph_token可采用数组格式:
# telegraph_token:
#  - token_1
#  - token_2
telegraph_token: xxxx
preview_text: 0
socks5: 127.0.0.1:1080
update_interval: 10
error_threshold: 100
telegram:
  endpoint: https://xxx.com/
mysql:
  host: 127.0.0.1
  port: 3306
  user: user
  password: pwd
  database: flowerss
sqlite:
  path: ./data.db

配置说明:

| 配置项 | 含义 | 必填 | |-------------------|------------------------------------|------------------------------| | bot_token | Telegram Bot Token | 必填 | | telegraph_token | Telegraph Token, 用于转存原文到 Telegraph | 可忽略(不转存原文到 Telegraph ) | | preview_text | 纯文字预览字数(不借助Telegraph) | 可忽略(默认0, 0为禁用) | | update_interval | RSS 源扫描间隔(分钟) | 可忽略(默认 10) | | error_threshold | 源最大出错次数 | 可忽略(默认 100) | | socks5 | 用于无法正常 Telegram API 的环境 | 可忽略(能正常连接上 Telegram API 服务器) | | mysql | MySQL 数据库配置 | 可忽略(使用 SQLite ) | | sqlite | SQLite 配置 | 可忽略(已配置mysql时,该项失效) | | telegram.endpoint | 自定义telegram bot api url | 可忽略(使用默认api url) |

使用

命令:

/sub [url] 订阅(url 为可选)
/unsub [url] 取消订阅(url 为可选)
/list 查看当前订阅
/set 设置订阅
/import 导入 OPML 文件
/export 导出 OPML 文件
/unsuball 取消所有订阅
/help 帮助

可以为机器人添加快捷指令

找到@BotFather
输入 /setcommands
选择你的机器人
输入以下内容

sub - 订阅(url 为可选) 
unsub - 取消订阅(url 为可选)
list - 查看当前订阅 
set - 设置订阅 
help - 帮助

Channel 订阅使用方法

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

Channel 订阅支持的命令:

/sub @ChannelID [url] 订阅
/unsub @ChannelID [url] 取消订阅
/list @ChannelID 查看当前订阅
/unsuball @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 命令

常见问题

  • Q:日志中大量类似于Create telegraph page error: FLOOD_WAIT_7的提示
    A:原因是创建telegraph页面请求过快触发了接口限制,可尝试在配置文件中添加多个telegraph token

问题反馈

如果你在使用过程中遇到问题,请提交 Issue,或者到问题反馈群组 反馈。

赞(0)
未经允许不得转载:工具盒子 » flowerss 一个支持应用内阅读的 Telegram RSS Bot