Discord 的 Discourse 信任等级

I’m all for using oauth2 or any other means of eliminating user malice and/or error.

I was just proposing a quick and dirty solution to getting around the discord email look up problem.

The work to achieve that was done months ago by @featheredtoast and if that’s all you need you can install the plugin which @falco linked above.

As to the scope of this topic, building on that link to sync trust levels, if you can’t wait for @sudaraka to finish his work your other option is to post over on marketplace. Include your proposed budget to see whether another developer would be willing to build this for you sooner.

Yes. This is correct as far as I can tell, being a user of both plugins.

Patreon requires log-in via Patreon, then syncs your account to your pledge tier.

Would be great to sync Discord roles via Discourse, since Discourse has the information via Patreon already once logged in.

I’d like to gauge interest for an Discourse plugin that does the following:

  1. An administrative interface for an admin to connect their Discourse instance to a Discord instance via the Discord API. The authentication would be via OAuth 2.

  2. Controls to associate Discourse Groups with Discord Roles, so that members of a group have a certain discord role and vice versa.

Note that this won’t involve or rely on Discord OAuth as a method of user account authentication. The goal is a have a solution that is agnostic about the way you let you users sign up / login.

In terms of identifying users across both platforms, this will be handled by associating ids as a first step, then by email if the relevant id is not available.

If you’re interested in sponsoring such a plugin, now’s your chance. I have time to work on it next week.

@Bernstein @Hanzo1 @Watercolor_Games

Just an update here, we’re going ahead with building this.

Further details here:

If you want to sync Discourse Groups and Discord Roles, we’d appreciate a contribution to the Paypal pool for this work here (currently one sponsor):

*Update

@Hanzo1 @Wedgebert @chagara Are you guys still interested in syncing Discourse and Discord Groups and Roles? If so, we’re in the process of building an integration and need a few more backers to hit our (relatively speaking) low target of $1000 USD. Any contributions > $100 welcome.

We’re interested, but I’ll have to talk to our treasurer about getting donation money together.

I just chipped in some, we’re almost at the target.

For anybody here who is lurking and considering it, I want to emphasize how incredibly reasonable of a funding goal this is for such useful functionality.

There’s one day left and we’re currently $300 short. If you’re even slightly interested in this, now’s your chance to make it happen. :smiley:

We’ll be donating as soon as the person with access to the PayPal account gets online and does it.

Hey guys, just wanted to say I’m still following the project. Though I’ve moved away from using a forum specifically for my community, (we moved to reddit), it’s really awesome to see my MacGyvered-together proof of concept turn into a reality. I haven’t been able to follow the project much due to highschool and other personal reasons, but things are really shaping up from what I can tell. Good luck, guys! :slight_smile:

Donation has been made

Perfect advice :+1:

Heads up (and @featheredtoast) I’m working on a PR for this plugin to

  • change the class inheritance up a level to Auth::ManagedAuthenticator to
    • leverage the richer functionality to simplify the plugin
    • bring the implementation in line with Facebook and Google OAuth (storing additional info in user_associated_accounts)
  • store the user ID to facilitate my next step … :wink:

UPDATE: Submitted

这真是一个很有趣的想法!期待看到它接下来能发展到什么程度。

集成方面取得了进一步的显著进展……看看你能否发现它::robot: ;)(感谢 @falco 帮我清除一个障碍)

=> 正在启动 Puma
=> Rails 5.2.3 应用程序正在开发环境中启动
=> 运行 `rails server -h` 查看更多启动选项
正在启动 CSS 变更监视器
-------------------------------------
机器人已生成,请在 Discord 上发送“Ping!”!
-------------------------------------
[INFO : websocket @ 2019-06-30 11:00:05.038] Discord 使用的网关协议版本:6,请求版本:6
Puma 正在单模式下启动...
* 版本 3.12.1 (ruby 2.6.1-p33),代号:Llamas in Pajamas
* 最小线程数:0,最大线程数:16
* 环境:开发
* 监听地址:tcp://0.0.0.0:3000
使用 Ctrl-C 停止

该机器人正在根据我在 Discourse 插件中运行的代码在 Discord 上作出响应。

注意:这目前只是一个概念验证,距离生产环境就绪可能还有一段距离!

我现在已实现根据 Discourse 的信任等级在 Discord 上执行踢人操作。

如果您愿意,可以踢出您的 Discord 服务器中尚未在 Discourse 论坛上达到最低信任等级的所有用户。

我尚未将此功能打包并发布为插件……敬请期待。

好的,踢人功能现在可以正常工作了。你看到的内容运行在 Discourse 的生产实例上(当然,截图来自 Discord :D)

仍需进行一些测试,修复一些 bug(尤其是群组同步方面),并需要编写大量文档来指导用户完成设置(不幸的是,这并不简单)。

它还将支持群组“同步”功能(根据提供的条件复制 Discourse 的群组及其成员关系),并在第一天即可启用。

附注:我们距离目标还差 200 美元。

这是一项浩大的工程。

感谢所有已做出贡献的人:支持者将获得优先设置协助。

我尝试贡献,但显示“池已结束”?

我创建了一个新的资金池,以进一步支持 @merefield 在这里的工作(令人恼火的是,PayPal 不允许重新开启资金池):

@merefield 和我正在合作)

天哪,太感谢了,杰夫!!!

是的,如果这还不明显的话,安格斯和我现在在很多工作上都有合作,而且我们的团队也在不断壮大…

谢谢你们大家:grinning:

该插件的资金已落实,现已发布:Discord Bot Construction Kit 🤖

……关于该新插件的任何讨论,请移步那里继续。