Discourse 聊天

:discourse2: 摘要 Discourse Chat 为您的 Discourse 实例添加聊天功能。
:open_book: 安装指南 此插件已捆绑在 Discourse 核心中。无需单独安装该插件。

功能特性

正如我们在初始公告、最新更新和线程公告中提到的,此插件为您的 Discourse 添加了聊天功能,使其能够原生支持在线社区的长文本和短文本通信需求。

配置

初始设置

聊天功能默认在我们的托管站点上启用,但如果尚未启用,您可以前往 /admin/plugins 并开启插件:

默认情况下,聊天功能仅对工作人员组可用,但您可以通过将更多组添加到 chat allowed groups 设置中来增加可用组。

频道保留

默认情况下,频道配置为保留 90 天的消息,而直接消息和群组消息配置为永久保留消息,但这些是可配置的站点设置:

  • chat channel retention days(默认 90 天)
    选择保留频道聊天消息的时间长度
  • chat dm retention days(默认永久)
    选择保留直接消息和群组消息频道中的聊天消息的时间长度

其他站点设置

其他站点设置允许您配置一组默认表情反应以及一系列安全功能(例如每秒最大聊天消息数、最小消息长度、静音持续时间以及是否允许上传)。

访问频道和创建新频道

启用插件后,搜索图标旁边的标题栏中会出现一个对话气泡,点击它将打开您的全屏聊天窗口,您可以在其中访问默认频道并开始新的个人聊天。要从每个频道内部导航回全屏聊天窗口,请使用左上角的 < 图标。

使用任何聊天窗口上的 Screenshot 2022-06-24 at 5.52.54 PM 按钮,您可以在全屏模式和抽屉模式之间切换。

创建频道

要创建新频道(仅限工作人员),点击频道侧边栏中的 :pencil: 图标,前往 /chat/browse/open:

然后,从页面右上角选择 New channel。选择一个要关联的类别,为其命名,添加一个表情符号,并添加一个可选的描述以显示在浏览频道页面上。

一个类别可以关联多个频道,并且可以随时添加更多频道。由于频道始终与类别链接,您可以依赖现有的类别权限来自动限制谁可以访问该特定对话。

:bulb: 想要一个仅用于您的 TL3+ 用户的频道?那么为您的 #lounge 类别创建一个新频道即可实现。

线程

创建频道时可以启用线程,或者稍后在频道设置页面中启用:

当成员在启用了线程的频道中回复聊天消息时,将打开一个线程侧边栏,并在主频道流中的原始消息下方显示线程中最新消息的摘录:

线程具有与主题类似的跟踪级别,可以通过线程右上角的 :bell: 图标进行更改:

线程创建者可以更改线程标题。在 Discourse 托管站点上,默认启用 AI 线程标题生成 :sparkles:

成员可以通过聊天侧边栏顶部的“我的线程”链接查看他们参与的所有线程:

加入频道

您可以从“浏览频道”页面预览和加入频道。在此页面上,您可以查看所有对您可见且符合加入条件的频道。

使用 @提及 邀请用户加入频道

@提及 单个用户或群组将为非参与者提供邀请他们加入频道的选项。要以这种方式邀请群组,群组 /manage/interaction 页面上的“谁可以 @提及 此群组?”必须设置为“Nobody”以外的值。

开始直接消息或群组聊天

要开始直接消息,请使用全屏聊天窗口中 DM 部分的 :heavy_plus_sign: 图标,并开始向收件人列表添加用户名。要离开直接消息或群组聊天,请点击频道名称旁边的 X 图标(仅限桌面端)。

:information_source: 如果您意外离开了直接消息,与同一人/多人开始新的聊天将链接回之前发送的消息。

聊天消息选项

与主题一样,聊天消息支持:

  • 编辑
  • 回复
  • 引用
  • Oneboxing
  • 反应
  • 书签
  • 删除

在编辑器中,您可以插入日期、上传文件和 GIF!聊天频道支持频道范围的 @here 和 @all 提及,同时具备在线用户的绿色光环和 用户名正在输入… 指示器等存在性功能。

您还可以选择一个或多个聊天消息并“引用到主题”,将快速对话转换为 Discourse 主题以进行深入讨论,或按“复制”将消息复制到剪贴板,以便发布到现有主题或不同的聊天频道:

管理员和版主还可以选择聊天消息并将其移动到不同的频道。

自动将用户添加到频道

在创建新频道时,管理员现在会看到一个偏好设置,可将所有新用户和现有用户添加到该频道。使用此功能,管理员可以配置“默认频道”,以便自动包含特定用户组:

对于现有频道,管理员可以在频道设置中切换此行为。在所有情况下,都会出现确认对话框以指示添加的用户数量。

搜索

成员可以使用每个频道右上角的搜索图标搜索单个频道消息:

或者通过聊天侧边栏顶部的“搜索”链接搜索所有频道:

聊天信息面板

点击频道标题现在会将用户带到一个有用的信息面板,其中包含两个选项卡:

  • 设置选项卡将显示标题、描述和链接类别,以便用户获得每个频道所需的上下文。

    它还将允许您设置通知偏好(静音、桌面/移动推送通知)。对于管理员,此选项卡还包括自动加入模式切换、关闭频道和归档频道按钮。

  • 成员选项卡允许用户查看房间里还有哪些其他人(成员列表和总数)。它包含一个过滤器,以便他们可以使用搜索。

image

聊天偏好

启用聊天后,用户会在其偏好设置中看到一个新的 /preferences/chat 页面。在此页面上,他们可以选择退出聊天、自定义聊天体验并找到辅助功能设置。在 /preferences/notifications 页面上,他们可以找到所有与通知相关的设置,例如选择退出 @here 和 @all 通知,并选择桌面声音。

/preferences/users 页面上的现有设置也适用于聊天直接消息,因此用户也可以关闭直接消息或静音或忽略其他单个用户。

关闭、删除和归档频道

管理员和版主可以从频道设置页面关闭或删除频道,可以通过点击频道标题栏中的频道名称来访问该页面。关闭的频道可以随时重新打开,但删除频道是不可逆的,因此有额外的确认检查。

要归档频道,必须启用 chat allow archiving channels 设置,并且频道必须处于关闭状态。然后您可以从频道设置中选择“归档频道”,系统将提示您是否要为主题归档过程创建新主题或使用现有主题:

归档会将聊天消息复制到聊天记录中,然后将其发布到所选主题中,显示如下:

集成

Discourse Chat 支持传入 Webhook,但尚不支持交互式机器人或斜杠命令。

:loudspeaker: 使用传入 Webhook 发送聊天消息 [Slack 兼容]

创建 Webhook 的 UI 可以在 Admin > Plugins > Chat > New incoming webhook 中找到。您可以为每个 Webhook 配置名称、描述、用户名(发布消息)、目标频道和表情符号。

:discourse2: 由我们托管? 聊天作为捆绑插件包含在内,人人可用。 :partying_face:

46 个赞
Now I've got Chat :speech_balloon: what do I do with Personal Messages?
Introducing Discourse Chat (BETA)
Add Option to Disable User-User Chat
Are chat messages hard deleted after the retention period?
Can I make chat visible for users who aren't logged in?
Use the api to post to chat channel?
Community Guide: Activating Lurkers
OP Contents on Progress Bar
Chat settings missing?
Channels, What are they?
In private chats AI uses threads
Improve editiability and visibility of Chat channel descriptions
Chat-like forums - open topic to the right from the list of topics
Discourse Disorder
Discourse Livestream
Building a technical support chatbot
Using user cards to quickly view information about others
Discourse Gamification
Discourse Automation
Watched Words Reference Guide
Mattermost to Discourse Chat via incoming webhooks
Advice on a support forum
Can I auto-generate a post title
Discourse Livestream
Discourse Chat Integrations
Discourse Version 3.2
Chat button on usercard
3.0.0.beta15: Closing into Discourse 3.0 (with Sidebar, Chat, New Menus and more)
Hashtags are getting a #makeover
Migrating an existing community to Discourse
Is it possible to use Discourse Chat with the stable version?
Discourse Events
[Admin-Hinweis] Eines deiner Themes oder Plug-ins enthält Code, der aktualisiert werden muss
What is the best way to run a support channel?
Try out the new sidebar and notification menus!
Trust Level Permissions Reference
[Admin-Hinweis] Eines deiner Themes oder Plug-ins enthält Code, der aktualisiert werden muss
Request a howto auto post from a RSS feed to a chat channel by eg. using make.com?
Referencing types of review items created by plugins
Dedicated chat client?
Can anyone help me to add chat option of discord on forum?

一个帖子已合并到一个现有主题:使用聊天中的翻译器 API

4 篇帖子已拆分为新主题:从频道中移除用户

在 Discourse Chat 中添加允许 iframe 的功能

1 个赞

请请求添加基于 WebRTC 或 Jitsi 的免费音视频功能,用于个人和群组音视频通话,以极大地提高社区参与度。

如何允许匿名用户和访客参与私信和群组频道聊天?

如何阻止发送外部链接,以避免垃圾信息发送者在聊天中发送网址和链接?是否有任何过滤或禁止词语或正则表达式可以在聊天中进行过滤?

允许管理员和版主在所有私信和所有私人群组频道中发布群组公告。

2 个赞

Jitsi 已具备此功能:

我们发现通过我们自己的 Jitsi 实例,可以改进其 oneboxing 功能,使其更清楚地显示正在发生的情况。

2 个赞

2 篇帖子已拆分到新主题:NSFW 图像在聊天中模糊

这些消息在删除后是否会保留在数据库中?

1 个赞

我碰巧有一个不再活跃的聊天频道……所以我运行了一个数据浏览器查询。答案是否定的,它们已从数据库中完全删除。

7 个赞

是否有计划将语音聊天集成到此功能中?

3 个赞
2 个赞

您好!我正在探索聊天功能,并在聊天消息中添加了一些图片。图片显示正常,但我原以为点击图片时,它们会跳转到覆盖层并放大到原始尺寸,或者以某种方式使图片能够以更大的尺寸显示,但什么也没发生。这是我需要配置的吗?还是聊天不支持此功能?\n谢谢!

1 个赞

你好,欢迎你 @c0d3m3nt0r :slight_smile:

实际上,在 Chat: Make image lightbox match core 中还有另一份关于此问题的报告。有可能是某个非官方插件在某种程度上干扰了它。

据我们所知,它在这里的 meta 聊天中运行正常,点击聊天中的图片会将其放大。

你是否有任何特殊的设置/插件/配置可以帮助我们缩小范围?

2 个赞

作为管理员,能够像 Discord 一样重新排序侧边栏中的频道将非常棒。我曾考虑同时使用 Discourse 和 Discord,但我现在可以看到如何从 Discord 中移除很多东西并将其用于我的论坛,但拥有一个特定的频道顺序结构将是必不可少的。

2 个赞

我也认为我们应该能够创建不与类别关联的频道。当我们身处聊天室时,频道中似乎没有任何与类别相关联的内容,所以我认为没有必要将它们关联起来。

如果有人想为“游戏”创建一个论坛聊天室,这并不意味着他们需要为此创建一个类别,因为也许该类别根本不会有任何流量,而且它只是会使类别列表显得杂乱,而实际上没有必要。

2 个赞

您可以创建多个与单个类别关联的频道——无需为每个频道创建类别。

话虽如此,您并不是第一个指出类别关系似乎不必要的人。这是关于此的另一个近期功能主题:Make it easier to add people to channels through chat UX

4 个赞

[引述=“Dave McClure,帖子编号:178,主题编号:230881,用户名:mcwumbly”]
你可以创建多个频道,所有这些频道都与一个类别相关联——无需为每个频道创建一个类别。
[/引述]

在这种情况下,这个功能变得更加“过时”,因为它与类别之间没有真正的关联。
这也不算是个问题,但它只是另一个没有实际意义的东西。

但至少知道多个频道可以链接到同一个类别,避免了为了创建新频道而添加类别的情况。谢谢提供这个信息。

2 个赞

是的,该类别目前主要用作定义其中频道的访问控制。

因此,我上面链接的功能将使该部分变得过时。与此同时,这是该关系的主要用途。

3 个赞

只是为了确保我理解正确:你的意思是,例如,能够访问类别 A 的特定人群,是能够访问与该类别 A 相关联的一个或多个频道的人群吗?是这个意思吗?

如果是这样,因为我认为类别和频道应该是独立的功能,那么权限可以根据用户类型在频道级别进行设置,或者通过创建频道组来设置,这样是否合理?

我在想 Discord 的工作方式,其中每个频道都可以分配给不同的角色。

2 个赞

是的,正是如此。

5 个赞