在 Discord 中显示 Discourse RSS 订阅源

本指南介绍如何将 Discourse 论坛的 RSS 订阅源显示到您的 Discord 服务器。

您需要一个 Discord 机器人。您可以使用带有 RSS 模块(cog)的托管机器人并将其添加到您的服务器,或者安装并配置自托管机器人。

在本指南中,我们将使用 Red-DiscordBot,因为它是自托管的。您可以在自己的服务器上安装它。它非常易于维护,高度可定制,并且持续得到积极维护。

设置机器人

  1. 按照 此教程 安装和配置 Red。

  2. 在 Discord 上创建一个新的 机器人账户,并将机器人添加到您的 Discord 服务器。

添加 RSS 订阅源(自定义模块)

当机器人在您的服务器上在线时,您需要从 已批准的仓库 添加一个新的自定义模块(RSS)。

在您的 Discord 频道中输入以下命令(将 ! 替换为您的机器人前缀):

允许安装第三方模块:

 !load downloader

添加 aikaterna-cogs:

 !repo add aikaterna https://github.com/aikaterna/aikaterna-cogs

按照提示输入 I agree 以同意。

安装 RSS 模块:

 !cog install aikaterna-cogs rss

加载 RSS 模块:

 !load rss

现在您拥有了一个可配置的 RSS 模块。选择您想要用于显示 RSS 订阅源的频道。

RSS 订阅源将被添加到您当前所在的频道。您可以在一个频道中添加多个 RSS 订阅源。

:warning: 您的 RSS 订阅源名称必须是小写的。

在选定的频道中输入:

 !rss add discourse https://meta.discourse.org/latest.rss

其中 “discourse” 是您为此 RSS 订阅源指定的名称。

:information_source: 每个 RSS 订阅源必须有不同的名称。

如果您的订阅源名称包含多个单词,则必须使用双引号:

 !rss add "discourse announcements" https://meta.discourse.org/c/announcements/67.rss

您可以通过输入以下命令预览 RSS 订阅源:

 !rss force discourse

或者,如果您的订阅源名称包含空格:

 !rss force "discourse announcements"

默认情况下,没有格式化:

我们可以添加一个模板,以我们选择的顺序显示额外信息(例如作者):

 !rss template discourse $author:\n$title\n$link

:information_source: \n 创建换行符。您也可以在模板中使用 Discord Markdown 语法

(可选)我们可以在嵌入块中显示订阅源。我们将通过输入以下命令来实现:

 !rss embed toggle discourse

请注意,如果 RSS 订阅源被嵌入,链接将不会显示预览。

作为最后的润色,我们将在模板中添加订阅源名称,以便我们知道订阅源来自哪里。当我们在一个频道中有多个订阅源,特别是当它们来自同一个域名时,这非常有用。

 !rss template discourse **Discourse**\n$author:\n$title\n$link

对于 Discourse 公告订阅源:

 !rss template "discourse support" **Discourse Announcements**\n$author:\n$title\n$link

要显示有关 rss 命令的帮助信息,请输入:

 !rss help

Discourse RSS 订阅源

25 个赞

此 RSS Feed 在最近的版本中似乎已消失。

标签 Feed 的 URL 似乎已更改为 /tag/tag-name.rss(单数 tag)。

指南已更新。请报告任何问题,或者您可以随时自行编辑该主题,因为它是一个维基。:slight_smile:

更新后的 RSS Feed 列表在此处:Finding Discourse RSS feeds

3 个赞