写在前面,参考文章: 教程:使用VPS搭建自己的Telegram RSS中文订阅机器人
:Linux VPS搭建Telegram RSS中文订阅机器人教程
踩些坑,装上还真是有点费劲的,因为用的阿里的机器,重新安装的纯净的Debian系统,所以需要用的库都得自己安装。
再说下我用这个机器人的作用吧,主要是用在频道里获取自己博客的内容。
首先,需要在TG中申请自己的机器人,这几步没什么太大问题。首先添加Botfather
@BotFather
输入/newbot新建自己的Bot,记住API TOKEN(下文直接叫API),但是注意,API整体前面几位是数字,并且重新获取API时这些数字是不会变的,他们也是API的一部分。
输入/mybots找到刚刚建立的bot,再选择Edit Commands,输入指令
/rss - 显示当前订阅的 RSS 列表,加 raw 参数显示链接 /sub - 订阅一个 RSS: /sub http://example.com/feed.xml /unsub - 退订一个 RSS: /unsub http://example.com/feed.xml /unsubthis - 使用此命令回复想要退订的 RSS 消息即可退订, 不支持 Channel /export - 导出为 OPML
上述若有疑问,详细可在我参考的两篇文章中找到更详细的方法。
紧接着就是重点,服务器的操作了。
首先安装依赖
Debian系列:
apt-get -y update && apt-get -y install gcc make openssl pkg-config libssl-dev screen curl
Centos系列:
yum -y update && yum -y install gcc make openssl* pkg* libssl* screen curl
下载源码
git clone https://github.com/iovxw/rssbot.git
安装Rust Nightly
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightlysource $HOME/.cargo/env
进入目录编译
cd rssbot #进入目录 cargo build --release #编译安装
这步卡我很久,一个是curl的问题,这个通过最上面的安装环境解决了依赖的问题,第二个是cc连接失败,最下面出现报错:cannot find lz
解决方法参考:https://zhidao.baidu.com/question/1862151894261301107.html
需要安装zlib-dev这个包: 1)在线安装命令为:apt-get install zlib1g-dev。 2)在线安装命令为:yum install zlib-devel。如果需要管理员权限,建议在上述命令前加sudo。
安装成功后
cd target/release screen -S rssbot ./rssbot DATAFILE TELEGRAM-BOT-TOKEN
DATAFILE为数据库保存路径(其实就是一个json文件,不需要手动创建)。
TELEGRAM-BOT-TOKEN就是你创建的机器人的Token。就是我上面说到的。
通过screen命令,可以在断开ssh后,进程依然存在。
使用方法
先关注自己的机器人,通过命令控制
/rss - 显示当前订阅的 RSS 列表,加 raw 参数显示链接 /sub - 订阅一个 RSS: /sub http://example.com/feed.xml /unsub - 退订一个 RSS: /unsub http://example.com/feed.xml /unsubthis - 使用此命令回复想要退订的 RSS 消息即可退订, 不支持 Channel
订阅
-
个人订阅(直接对话机器人即可):
/sub https://www.leeyf.xyz/feed
-
群组订阅(群内发以下信息即可):
/sub https://www.leeyf.xyz/feed
-
频道订阅(直接对话机器人即可):
/sub @leesblog https://www.leeyf.xyz/feed
退订
-
个人订阅(直接对话机器人即可):
/unsub https://www.leeyf.xyz/feed
-
群组订阅(群内发以下信息即可):
/unsub https://www.leeyf.xyz/feed
-
频道订阅(直接对话机器人即可):
/unsub @leesblog https://www.leeyf.xyz/feed
查看列表
-
查看个人订阅列表(直接对话机器人即可):
/rss
-
查看群组订阅列表(群内发以下信息即可):
/rss
-
查看频道订阅列表(直接对话机器人即可):
/rss @leesblog
我用于频道订阅,频道订阅前需要添加机器人到频道中的管理员,才能正常使用。