Quan666 / ELF_RSS

QQ机器人 RSS订阅 插件,订阅源建议选择 RSSHub
https://myelf.club/archives/221
GNU General Public License v3.0
549 stars 55 forks source link

fix bugs and optimize #384

Closed mengshouer closed 1 year ago

mengshouer commented 1 year ago

reject和finish是raise所以不需要return

rm_list 错误 from https://github.com/mengshouer/HoshinoBot-Plugins/issues/13

add添加订阅时

使用相同订阅名时,直接无法添加给其他群或者好友,需要添加一个全新的订阅 ↓↓↓ 使用相同订阅名和相同订阅地址时,默认使用同一个订阅配置。

NekoAria commented 1 year ago

我当然知道逻辑上不需要 return ,只是为了可读性和通过编辑器逻辑检测才加的。 对于编辑器来说,他并不知道有这么一层隐含逻辑,所以可能会给出一些警告。

mengshouer commented 1 year ago

vscode人(没遇到过警告

总之后面交给你了,反正设置了允许修改.jpg

NekoAria commented 1 year ago

添加订阅的时候,订阅名和地址相同,就当作同一个订阅,这个逻辑的问题在于忽视了其他订阅参数。 比如添加订阅 dmhy ,但是已经存在一个叫 dmhy 同时 url 相同的订阅,而添加订阅的人不知道,直接 change dmhy wkey=... 就直接破坏了最开始订阅的人的 wkey 。

我的想法是,使用 change qqchange qun 的方式来实现同一个订阅推送给其他人或群组的逻辑,而不是上面那个更混乱的方式。

mengshouer commented 1 year ago

添加多一个首个订阅用户者的值?多一个判断,不能直接添加的话要订阅多个群只能用change加,如果只是群友,无法修改群的话,最后订阅是否会过多,然后请求rss地址的话,最后订阅地址或许可能会达到服务器厂商ddos的判定?

NekoAria commented 1 year ago

本来我是想大量重构,分离订阅名和地址的,以此来减少请求同一个 URL 的频次,后来弃坑了。 当时的设想是,如果订阅地址相同,就按照频次最低的那个订阅的频次来抓取。

而现在,也就只能在屎山上继续拉屎了(

另外,你所说的群友疯狂添加的问题,普通群友是没有权限进行添加的吧,只有 GROUP_ADMIN | GROUP_OWNER | GUILD_SUPERUSER | SUPERUSER

NekoAria commented 1 year ago

目前事实上对订阅的权限管理是非常混乱的,也一下想不到除了之前设想的重构之外更好的办法来改变。

mengshouer commented 1 year ago

只要有非 SUPERUSER 权限的就有可能会遇到这个问题(虽然概率不大就是了

mengshouer commented 1 year ago

反正我自己属于是那种能用就行的(我自己就只用到了最基础的功能,然后也只有我自己有添加订阅,基本没看到别的人添加(