Replies: 3 comments 8 replies
-
说到第一个问题,其实现在已经有方法可以做到。 from nonebot_plugin_saa import PlatformTarget, get_target
@test.handle()
async def _(target: PlatformTarget = Depends(get_target)):
... 如果 saa 能提取到 target,则说明这个事件是 saa 所支持的事件。如果为 None 则会被自动跳过。 |
Beta Was this translation helpful? Give feedback.
4 replies
-
看起来第一个问题解决了,我们着眼于第二个问题。目前倾向于将第二个功能单独抽成一个插件。
|
Beta Was this translation helpful? Give feedback.
2 replies
-
对于QQ频道/KOOK/discord这类使用基于角色的权限体系的平台,可以考虑把这些平台上和QQ群的管理员等价的概念(除了删群和踢群主/踢管理以外啥都能干)与QQ群的管理员划上等号做成一套通用模型。但是有没有意义还是存疑,这有点强行对齐的意味了。 QQ群是单级群结构,权限结构是群主/群管理/成员三级。从这个结构拓展的话,具有两级群结构的平台,权限结构就是服务器主/服务器管理/频道管理/成员四级。但是并非每个平台都能找到对应的概念。例如KOOK上就没有频道管理这个概念,而是把其打散到多个权限里了。 |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
本帖讨论「是否需要RAA」以及「我们需要什么样的RAA」。
正如 SAA 是 Bison 走向多 adapter 支持过程中的副产物,RAA 首要的目标是解决 Bison 支持多种 adaper 过程中的新问题,首先要解决的问题是:
显然问题 1 是简单的,只需要
就好了。甚至在 SAA 中提供这个方法甚至是更加合理的。
问题 2 就复杂了,首先 ob12 没有解决这个问题 https://github.com/orgs/botuniverse/discussions/235 。如果要实现这个功能,那么要解决的问题是如何将各种 adaper 背后的平台不同的角色和权限做抽象。群主/管理员/群成员 的三级结构是不是可以应对绝大多数场景?如果要在工具提供的抽象上再进行定制化的配置,该如何预留接口?这个工具向用户展示的接口是什么样的,可以做到兼容 nb 的 permission / rule 吗?更加糟糕的是 ob12 自身的 message event 并不带权限相关的信息,该怎么处理 ob12?
并且,问题 1 2 其实并没有什么关系,如果按照 KISS 的原则,应该把问题 1 相关的内容放到 SAA 里,而把解决问题 2 相关的内容拆成一个独立的插件。
回到 RAA 的命名上来。SAA 的愿景是解决所有和跨平台发送相关的问题,这个问题是边界明确切清晰的。但是说要解决所有接收相关的问题则是不明确而且自大的。这里需要的只是一个 SAA 的挂件,还是一个解决权限问题的工具,还是一个把所有事件解析到统一抽象事件的 all in one 工具?这个问题并没有想好。所以命名之前要解决的是我们需要什么
Beta Was this translation helpful? Give feedback.
All reactions