让Flarum 的帖子同步到Telegram频道
实现的方法是通过 Flarum 创建 Atom/RSS 内容,在 Telegram 的频道加入bot机器人订阅Atom/RSS。
教程分为三部分:
- 一、在 Telegram 的准备工作
- 二、打开你的服务器部署 RSStT 机器人
- 三、配置 Telegram 频道
本教程的使用环境如下:
Flarum 版本:v1.7.2
Flarum 的 Aton/RSS 扩展:ianm/syndication
Telegram 机器人的项目:https://github.com/Rongronggg9/RSS-to-Telegram-Bot
使用 Docker-compose 部署 RSS-to-Telegram-Bot (如果你还没安装 Docker-compose,可以参考( https://forum.gitzaai.com/d/93 )
RSS-to-Telegram-Bot 机器人部署大概流程如下:
一、在Telegram的准备工作
1、给 @BotFather 发送 /newbot 创建一个机器人(如果你用已有的可以跳过)
- 创建机器人得到 token
- 然后发送 /setinline 选择你的机器人,并且输入你喜欢的内联占位符启用内联模式
2、从 @userinfobot 获得你的 Telegram 用户 ID
3、从 [Telegraph API 这个链接访问令牌](https://api.telegra.ph/createAccount?short_name=RSStT&author_name=Generated by RSStT&author_url=https%3A%2F%2Fgithub.com%2FRongronggg9%2FRSS-to-Telegram-Bot) https://api.telegra.ph/createAccount?short_name=RSStT&author_name=Generated%20by%20RSStT&author_url=https%3A%2F%2Fgithub.com%2FRongronggg9%2FRSS-to-Telegram-Bot
二、打开你的服务器
1、创建机器人的存放目录
mkdir rsstt
2、进入目录
cd rsstt
3、下载项目到服务器
wget https://raw.githubusercontent.com/Rongronggg9/RSS-to-Telegram-Bot/dev/docker-compose.yml.sample -O docker-compose.yml
4、编辑 docker-compose.yml 文件(如果你 SSH 软件可以直接编辑也行),这里演示用 vi 命令
vi docker-compose.yml
需要修改environment 下面的 token 和 manager 这两个参数
- TOKEN=填上你从 BotFather 得到的 token
- MANAGER=填上你从 @userinfobot 得到的用户 ID
- - TELEGRAPH_TOKEN=填上你从[Telegraph API 这个链接访问令牌] 得到的token
保存配置(vi 保存退出是 :wq! )
5、启动 docker-compose 服务
docker-compose up -d
三、配置 Telegram 频道
关于此部分,可以查看 FAQ 文档 https://github.com/Rongronggg9/RSS-to-Telegram-Bot/blob/dev/docs/FAQ.zh.md
1、把你的机器人加入到频道,并且设置为管理员
2、打开你的机器人,把频道管理员和机器人都设置为用户
- 输入 /user_info @你的频道管理员用户名或者 ID
- 输入 /user_info @你的机器人用户名或者 ID
3、在你的频道,输入 /lang 激活机器人
4、输入 /sub 网址
订阅 Atom/RSS
为了避免给频道造成泛滥,我只允许flarum教程的标签(manual)推到频道,于是订阅链接就是 /sub https://forum.gitzaai.com/atom/t/manual/discussions
Flarum 的ianm/syndication扩展,可以只使用以下参数推送到Telegram频道
/atom
:提供最近的讨论活动(页面/
作为 Atom 提要);
/atom/discussions
:提供论坛中新创建的帖子;
/atom/t/tag
:提供给定标签中的最后帖子(页面/t/tag
作为 Atom 提要);
/atom/t/tag/discussions
:在给定标签中提供新创建的帖子;
/atom/d/21-discussion-slug
:提供给定讨论中的最新帖子。
您可以在上面的 URL 中替换atom
为以获取 RSS 提要。rss
与标签相关的提要只有在flarum/tags
安装并启用后才可用。
您还可以将?sort=latest|top|newest|oldest
提要添加到讨论列表以对提要进行排序和?q=<search>
过滤。或者两者都使用?sort=<sorting>&q=<search>
.
5、输入 /set 可以进行其他设定
至此,RSStT机器人创建完毕。
演示可以看看我们的 Telegram 频道 https://t.me/gitzaai
延申内容:关于RSStT机器人的命令
GitHub: https://github.com/Rongronggg9/RSS-to-Telegram-Bot
命令:
/sub: 添加订阅
/unsub: 退订订阅
/unsub_all: 退订所有订阅
/list: 列出订阅列表
/set: 自定义订阅设置
/set_default: 自定义默认设置
/import: 从 OPML 导入订阅
/export: 导出订阅到 OPML
/activate_subs: 启用订阅
/deactivate_subs: 停用订阅
/version: 查看 bot 版本
/help: 查看帮助
/lang: Seleccionar un idioma / Select a language / Seleccionar un idioma / Sélectionnez une langue / Pilih bahasa / Selezionare una lingua / 言語を選択する / Selecione um idioma / Сменить язык / Bir dil seçin / Змінити мову / 選擇語言 / 选择语言