join_request
),未启用的视为另一种来源 (joined
)。面对不同的来源,会有不同的工作机理,但基本共享大多数代码和逻辑,使表面行为保持一致。
来源转换:在 Policr Mini 的设计中,同一个用户反复退出和加入,会复用同一个未完成的验证(而不是产生多个验证)。当用户从 joined
来源加入后退群,然后从 join_request
来源申请加入。此时被复用的验证将会进行转换。这种转换不仅仅是更新来源数据,还会有一些必要的动作。如 joined
来源的用户会直接进群,此时他若退出后从 join_request
来源申请加入,机器人会解除他的权限限制(从之前的 joined
来源加群时被限制了权限),因为 join_request
来源的验证通过后仅仅是批准进群,不会涉及权限变动。为了保证不同来源的转换和兼容,需要一些额外的动作。这种来源转换也可以反过来。
击杀策略:从 join_request
来源验证的用户,也受到方案中击杀方法的限制。例如设置击杀方法为「封禁」,当用户未通过验证时,不仅会拒绝他的加入请求,还会封禁他,即使他不在群中。被封禁后,他将无法发送加群申请。类似的「封禁再延时解封」也会以同样的原理生效,用户会被短暂禁止再次发送申请,直到临时封禁的效果结束。
基于 Approve new members 的验证刚上线,它可能存在一些 bug。将群组设置中的 Approve new members 启用,即可直接体验和帮助测试,感激不尽。
上面的投票仍然有用,请告诉我们你们对 Approve new members 的看法。