您能尝试刷新页面吗?启用插件后需要刷新。
我看到了,谢谢!
各位,我在用 Discord 设置这个插件时遇到了错误。频道已创建,插件也已配置好 Webhook。
现在我遇到了以下错误:
当我发送测试消息时,又出现这个错误:
日志显示如下:
如有任何帮助,不胜感激。
你能分享一下这个的“信息”选项卡内容吗?如果你能复制/粘贴那就太好了——在截图中很难看清日志。
消息(2 份副本已报告)
测试提供者失败 {:error_key=>nil, :message=>{:content=>"", :embeds=>[{:title=>"FAYN 规则手册 [联盟/公告]", :color=>12525102, :description=>"[image] \nFAYN 是一个由多个公司组成的集体,旨在根据本指南和规则共同促进个人及集体的发展。\n管理工具\n作为 FAYN 的一员,您必须将所有角色(无论其重要性如何)通过 SeAT 与您的主角色关联。这是招聘要求的一部分,也支持我们公司的持续管理...", :url=>"https://forum.darksideoftheeclipse.co.uk/t/fayn-rule-book/45/1", :author=>{:name=>"@PJHustle", :url=>"https://forum.darksideoftheeclipse.co.uk/u/PJHustle", :icon_url=>"https://forum.darksideoftheeclipse.co.uk/user_avatar/forum.darksideoftheeclipse.co.uk/pjhustle/45/4_2.png"}}]}, :response_body=>"<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body>\r\n<center><h1>403 Forbidden</h1></center>\r\n<hr><center>cloudflare</center>\r\n</body>\r\n</html>\r\n"}
回溯
/var/www/discourse/plugins/discourse-chat-integration/app/controllers/chat_controller.rb:43:in rescue in test' /var/www/discourse/plugins/discourse-chat-integration/app/controllers/chat_controller.rb:22:in test’
actionpack-6.0.3.3/lib/action_controller/metal/basic_implicit_render.rb:6:in send_action' actionpack-6.0.3.3/lib/abstract_controller/base.rb:195:in process_action’
actionpack-6.0.3.3/lib/action_controller/metal/rendering.rb:30:in process_action' actionpack-6.0.3.3/lib/abstract_controller/callbacks.rb:42:in block in process_action’
activesupport-6.0.3.3/lib/active_support/callbacks.rb:112:in block in run_callbacks' /var/www/discourse/app/controllers/application_controller.rb:354:in block in with_resolved_locale’
i18n-1.8.5/lib/i18n.rb:313:in with_locale' /var/www/discourse/app/controllers/application_controller.rb:354:in with_resolved_locale’
环境
HTTP 主机:forum.darksideoftheeclipse.co.uk
首选方案应是联系 Discord 支持团队,提供此信息并询问发生此情况的原因。
也许吧,但我还是先不参与了。我不是开发者,也不知道该怎么做或该问什么。我对这方面不太了解。只是发个帖子,因为之前还能用,现在不行了。
可能是因为 Discord 正在更改某些东西?我也不确定。我有一种感觉,很快会有人遇到同样的问题。
分享这些信息很有帮助,我们只是根据数据指出,问题似乎出在 Discord 一方。我们无法控制这一点。
我找到问题了。
Discord 的网络钩子已从 discordapp.com 变更为 discord.com。当我把网络钩子从 discord.com 改回 discordapp.com 后,它就开始正常工作了。
所以目前它已经能用了。我已经就此问题向 Discord 支持提交了工单。
但现在还不确定问题出在哪里,是 Discord 还是应用本身?
编辑:我在 Discourse 上修改了网络钩子 URL。
感谢分享解决方案。我本来正为调试这个问题抓狂。
你好。
我也遇到了同样的问题。在点击“插件”下的“聊天集成”中的“测试”时,会看到 DiscourseChat::ProviderError 错误信息,并且从 Discord Webhook URL 收到 403 forbidden 响应。
有什么修复建议吗?
您仍然需要将您的 Webhook URL 中的域名从 discord.com 修改为 discordapp.com。
嘿,问题解决了,谢谢。
我觉得插件本身也应该在下一个更新中支持新的 API 域名格式。
太棒了,这也帮到了我。
你需要检查服务器配置,具体取决于你使用的是 Apache 还是 Nginx。你可以搜索 这条消息 ![]()
回到正题,是否有可能在 Discord 中添加缩略图并缩短引用的消息?它太长了,会打断我们的聊天 ![]()
顺便说一句,感谢你们(整个社区)一如既往的努力!
日志中出现了以下错误:
/var/www/discourse/plugins/discourse-chat-integration/app/controllers/chat_controller.rb:43:in `rescue in test'
/var/www/discourse/plugins/discourse-chat-integration/app/controllers/chat_controller.rb:22:in `test'
actionpack-6.1.4.1/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack-6.1.4.1/lib/abstract_controller/base.rb:228:in `process_action'
actionpack-6.1.4.1/lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack-6.1.4.1/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport-6.1.4.1/lib/active_support/callbacks.rb:117:in `block in run_callbacks'
/var/www/discourse/app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
i18n-1.8.10/lib/i18n.rb:314:in `with_locale'
/var/www/discourse/app/controllers/application_controller.rb:397:in `with_resolved_locale'
我只是将 Webhook URL 从 discord.com 改为 discordapp.com,现在一切正常 ![]()
我最初寻找 Discourse 与 Discord 集成的动机,是为了将标记的帖子注入到 Discord 中,以便团队能够更快地收到通知并进行审查。官方插件并不支持此功能。因此,现在已支持将标记的帖子注入到 Discord 中,详见 此处。
请注意,可能存在更符合 Ruby 风格的方法来实现此功能。也许 on(:reviewable) 应该使用专门针对 reviewable 的队列,而传递 flagged 布尔值有点像是变通方案。此外,可能还有其他更通用的方式来处理 reviewable 对象,但当前方案已满足我的需求。
请谨慎操作:我计划不将此功能提交至上游项目,因为我无意支持除 Discord 以外的其他平台,也没有计划花费更多时间解决上述提到的其他改进问题。
最终效果如下所示……
大家好。
与 Discord 的 Webhook 工作正常……除了消息内容为空。Discord 服务器上未显示 Discourse 主题/回复。
如果我包含“chat integration discord message content”,这部分会包含在内。
谢谢。
我终于通过反复试验解决了这个问题。给后来者参考……
这些说明写道:
注意 : 如果在使用 webhook 时收到错误,请确保域名是 discordapp.com 而不是 discord.com。
当我从 Discord 复制我的 webhook 时,它的格式是这样的:https://discordapp.com/api/webhooks/xxx/yyy-zzz-aaa
所以,上面的说明 与 Discord 提供的 URL 一致。
问题出在遵循说明时。插件设置拒绝了文档中记录的 URL 方案,却接受了被禁止的 URL 方案。这就像代码中的“!”丢失了。
幸运的是,正如下面的截图所示,当我使用第二个地址时,webhook URL 可以正常工作。
因此,为下一个可能不像我那样进行大量试错的人,这里有一些建议可以解决这个问题:
- 更新验证器,使“discordapp.com”通过而“discord.com”失败。
- 更新验证器,使“discordapp.com”和“discord.com”都通过。
- 更新说明中的措辞,去掉那个相互矛盾的注释。
额外建议:
在“设置 Discourse”设置下:
第 0 步:安装插件后,启用插件
第 1 步:提供截图
第 3 步:提供截图
我有点担心 Discord 会停止支持我目前使用的“错误”方案,所以我希望 Discourse 能修复这个问题,这样我就不必在使用 Discord 破坏我的备用 URL 之前就使用这个变通方法了。


