warlof / seat-discord-connector
一个SeAT插件,根据定义的模式在Discord公会中维护用户访问权限。
Requires
- ext-json: *
- eveseat/api: ^5.0
- eveseat/eveapi: ^5.0
- eveseat/services: ^5.0
- eveseat/web: ^5.0
- socialiteproviders/discord: ^4.2
- warlof/seat-connector: ^3.0
Requires (Dev)
- driftingly/rector-laravel: ^0.24.1
- orchestra/testbench: ^8.0
- rector/rector: ^0.18.2
- 6.0.x-dev
- 6.0.1
- 6.0.0
- 5.1.1
- 5.1.0
- 5.0.x-dev
- 5.0.0
- 5.0.0-rc3
- 5.0.0-rc2
- 5.0.0-rc1
- 4.0.x-dev
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.3.x-dev
- 3.3.6
- 3.3.5
- 3.3.4
- 3.3.3
- 3.3.2
- 3.3.1
- 3.3.0
- 3.2.x-dev
- 3.2.1
- 3.2.0
- 3.1.6
- 3.1.5
- 3.1.4
- 3.1.3
- 3.1.2
- 3.1.1
- 3.1.0
- 3.0.x-dev
- 3.0.0
- 3.0.0-beta5
- 3.0.0-beta4
- 3.0.0-beta3
- 3.0.0-beta2
- 3.0.0-beta1
This package is auto-updated.
Last update: 2024-08-28 22:45:40 UTC
README
这是一个SeAT插件,它根据定义的模式在Discord公会中维护用户访问权限。
感谢Warlof Tutsimo编写原始插件。自2023年12月23日起,开发工作由zenobio93接手。要找到应用的变化,请参阅git历史记录。
设置
创建应用程序
- 访问以下网址以创建应用程序并获取机器人令牌。
- 给它一个名字和合适的描述,这样用户以后就能知道它是什么相关的。
- 在侧边栏中,点击 Oauth2 > 通用,然后点击两次 添加重定向 按钮,并在生成的字段中输入以下地址:
{seat-public-url}/seat-connector/registration/discord/callback
{seat-public-url}/seat-connector/settings/discord/callback
- 在侧边栏中点击 机器人 并点击 添加机器人 按钮
- 勾选 公开机器人
- 勾选 需要OAuth2代码授权
- 勾选 服务器成员意图
注意
例如,如果您在
seat.example.com
上有SeAT,回调将是:
https://seat.example.com/seat-connector/registration/discord/callback
https://seat.example.com/seat-connector/settings/discord/callback
但是,如果您正在使用
example.com/seat
访问SeAT,回调将变为:
https://example.com/seat/seat-connector/registration/discord/callback
https://example.com/seat/seat-connector/settings/discord/callback
获取凭证
一旦您的应用程序已创建,我们将需要检索将在SeAT中设置连接器时使用的凭证。
访问以下网址并点击与之前创建的应用程序匹配的框。
记下以下信息
- 在侧边栏下,在 Oauth2 > 通用
Client ID
,这是一个显示的数字Client Secret
,这是一个奇怪的文本(点击 点击显示 链接)
- 在侧边栏下,在 机器人
Token
,这是一个奇怪的文本(点击 点击显示令牌 链接)。
安装包
从SeAT 3.0开始 - 安装包变得超级简单。只需要求 warlof/seat-discord-connector
,发布供应商并运行迁移脚本:)
- 首先,运行以下命令
composer require warlof/seat-discord-connector
- 最后,使用
php artisan migrate
运行迁移脚本
别忘了使用 service supervisor restart
(如果您在Docker下,则为您的 seat-worker
容器)重启 supervisor
;)
重要
所有上述命令都必须使用SeAT实例用户
www-data
,seat
或您在安装中使用的任何内容运行。它们需要在根SeAT目录下运行,该目录通常为/var/www/seat
设置包
使用您的SeAT实例上的管理员用户进行身份验证。如果上述所有语句都已正确执行,您将在侧边栏中看到一个名为 连接器
的新部分。
打开它,然后转到 设置
并使用本指南开头收集的信息填写表单。
使用 更新
按钮确认,这将带您转到Discord SSO。
在列表中选择需要安装SeAT机器人的服务器,保持权限不变,然后点击授权
按钮。
对于所有这些法语内容,我感到非常抱歉,但Discord SSO使用浏览器设置来显示内容。尽管语言不同,但所有国家的内容应该相似。
一旦您被重定向回SeAT,您可以选择Discord
,然后点击绿色的更新集合
按钮,这将向SeAT提供Discord上可用的角色。
设置访问
要建立SeAT和Discord之间的映射,进入连接器 > 访问管理
。如果您在表单中看不到任何角色,请进入连接器 > 设置
并点击更新Discord集合
按钮。
在Discord连接器中,有6种称为过滤器
的映射类型。它们的范围在下表中解释。
要创建过滤器,只需根据您的需求填写左侧的可用的表单。然后,点击添加
按钮。在任何时候,您都可以检查右侧表中的哪些过滤器已设置。您还可以使用每个映射线附近的红色删除
按钮删除映射。
链接账户和获取邀请
作为用户,您将在侧边栏看到一个名为连接器
的部分。打开它,然后点击加入服务器
。
这将重定向您到Discord SSO,并显示一个简单的表单,告知机器人将能够收集基本信息(如您的Discord唯一ID和昵称),并授权邀请您加入附带的Discord服务器。
只需使用授权
按钮确认,然后将被重定向到SeAT主页,并显示一个绿色的确认框。
您将被自动邀请到Discord服务器和附带的频道。
升级
如果您来自4.x之前的版本,您可能希望将数据转换为新的连接器结构。为此,运行命令seat-connector:convert:discord
- 它将协助您完成此过程。
回调URL已更改,这意味着您必须更新您的Discord应用程序。
已知问题
以下是一个快速的问题列表(如有适用,还包括解决方案)。目的是协助您进行故障排除,并找到解决方案路径。