我想使用 Webhook 在我从审核队列中删除垃圾信息发送者时,将其从我们的中央数据库中移除。但按如下方式设置 Webhook 后,并未触发任何事件。这是预期的行为吗?还是我误解了“……且其状态已更新”这一部分?
会触发“用户删除”网络钩子吗?
确实如此。遗憾的是,当前并未传递删除操作,而我希望仅在用户被删除且 IP 被封禁时执行特定操作。
我希望请求默认自动隐藏图片的功能,特别是针对 TL0 用户发布的被标记帖子。虽然根据各社区的标准,有时需要查看不恰当的图片并采取措施,但将图片隐藏对于在办公室环境或在家有孩子陪伴时工作(如我常遇到的情况)的用户来说会很有帮助。
“绕过”需要审核队列评分的 API 在一段时间内仍然不够完善,因为分数会定期重新计算。如果审核队列在可审核项创建时未被处理,这些“强制”项目可能会在版主审核之前就从高过滤列表中消失。
或许我们应该在可审核项上添加一个布尔值 force-review,并将其关联到这里的分数查询中。
TL0 用户的图片默认已模糊处理。可通过 blur_tl0_flagged_posts_media 设置禁用此功能。
此功能也已实现。当 force_review 标志设置为 true 时,即使待审核项未达到最低可见性阈值分数,它们仍会出现在队列中。
@Roman - 抱歉我还没回复您关于此事的消息。如果这仍然可能有所帮助,我已获取日志并提取了一些记录(已清除识别信息)。当前运行版本为 2.6.0beta3。所有“整数超出范围”错误似乎都出现在同一类型的记录上。
2020-11-26 06:02:13.009 UTC [25408] discourse@discourse ERROR: integer out of range
2020-11-26 06:02:13.009 UTC [25408] discourse@discourse STATEMENT: INSERT INTO "notifications" ("notification_type", "user_id", "data", "created_at", "updated_at", "topic_id", "post_number") VALUES (9, 1533, '{"topic_title":"{private info removed}","original_post_id":17769856,"original_post_type":1,"original_username":"{private info removed}","revision_number":null,"display_username":"{private info removed}"}', '2020-11-26 06:02:13.008758', '2020-11-26 06:02:13.008758', 1333533, 4) RETURNING "id"
2020-11-26 06:02:13.038 UTC [29728] discourse@discourse ERROR: integer out of range
2020-11-26 06:02:13.038 UTC [29728] discourse@discourse STATEMENT: INSERT INTO "notifications" ("notification_type", "user_id", "data", "created_at", "updated_at", "topic_id", "post_number") VALUES (9, 1533, '{"topic_title":"{private info removed}","original_post_id":17725230,"original_post_type":1,"original_username":"{private info removed}","revision_number":null,"display_username":"{private info removed}"}', '2020-11-26 06:02:13.037676', '2020-11-26 06:02:13.037676', 1313715, 38) RETURNING "id"
2020-11-26 06:02:13.052 UTC [27579] discourse@discourse ERROR: integer out of range
2020-11-26 06:02:13.052 UTC [27579] discourse@discourse STATEMENT: INSERT INTO "notifications" ("notification_type", "user_id", "data", "created_at", "updated_at", "topic_id", "post_number") VALUES (9, 1533, '{"topic_title":"{private info removed}","original_post_id":17713480,"original_post_type":1,"original_username":"{private info removed}","revision_number":null,"display_username":"{private info removed}"}', '2020-11-26 06:02:13.051222', '2020-11-26 06:02:13.051222', 1314869, 237) RETURNING "id"
2020-11-26 06:02:13.149 UTC [27554] discourse@discourse ERROR: integer out of range
2020-11-26 06:02:13.149 UTC [27554] discourse@discourse STATEMENT: INSERT INTO "notifications" ("notification_type", "user_id", "data", "created_at", "updated_at", "topic_id", "post_number") VALUES (9, 180552, '{"topic_title":"{private info removed}","original_post_id":17713479,"original_post_type":1,"original_username":"{private info removed}","revision_number":null,"display_username":"{private info removed}"}', '2020-11-26 06:02:13.148264', '2020-11-26 06:02:13.148264', 1313773, 48) RETURNING "id"
2020-11-26 06:02:13.170 UTC [28970] discourse@discourse ERROR: integer out of range
2020-11-26 06:02:13.170 UTC [28970] discourse@discourse STATEMENT: INSERT INTO "notifications" ("notification_type", "user_id", "data", "created_at", "updated_at", "topic_id", "post_number") VALUES (9, 46891, '{"topic_title":"{private info removed}","original_post_id":17760644,"original_post_type":1,"original_username":"{private info removed}","revision_number":null,"display_username":"{private info removed}"}', '2020-11-26 06:02:13.168959', '2020-11-26 06:02:13.168959', 1328670, 25) RETURNING "id"
也可以增加一个功能,让用户查看已审核的可审核项列表,并按处理旗帜的版主进行筛选。在查看历史处理过的旗帜时,“分配给”这一筛选条件在语义上似乎与寻找“由……处理”的筛选条件非常相似,但两者并不相同。
对于已解决旗帜/可审核项的查询,“分配给”是否应指向处理旗帜的人?或者这应该作为一个独立的筛选条件?
我觉得这是一个很好的建议 @Roman——你能把它加到你的列表里吗?
我正在使用 Webhook 和 API 将新话题放入审核队列,以便版主检查新话题是否符合规范。目前,我通过 API 标记新话题的首帖。这虽然有效,但在查看用户的后台操作历史时,会显得不太妥当。是否有其他方法可以避免让用户看起来有不良记录?
有没有理由不能使用“除非达到信任级别,否则需批准新主题”?这是 Discourse 内置的功能。
我同意这对许多用例是可行的。我们需要来自多个标签组的标签,而Discourse 目前不支持此功能。我们希望在无需审批的情况下允许发布新主题,但会在时间允许时确保标签正确。
我想建议的是,一种将任意项目放入审核队列的方法。目前支持三种类型:被标记的帖子、排队待审的帖子和用户。我们目前正借用“被标记的帖子”类型,因为它最接近我们的需求,但如果能在审核队列中添加一个“审核标签”项目,即使只能通过 API 实现,也会更理想。
实现您想要的功能没有简单的方法。
最佳方案是创建一个插件,添加一种新的可审核类型,并配套一个用于创建该类型的接口端点。
是否可以通过 API 将类型为“用户”的可审核项添加到审核队列?还是说这仅对创建新用户的代码可见?
我的使用场景是:希望版主能够审核任何用户更新,以确保其符合政策。因此,我设置了一个 user_updated webhook,并希望将更新后的用户加入审核队列。
我可以通过手动标记帖子并观察网络流量来逆向分析如何标记帖子(/post_actions…),但我不清楚如何对“用户”执行类似操作。我推测这可能与 /user_actions… 有关。
目前无法通过 API 实现此功能。我认为您需要添加一个插件,该插件可以拦截用户更新并创建一个可审核项。
2 篇帖子已拆分为新主题:回复帖子批准
您好,这是对审核队列的建设性批评。
我知道“拒绝/批准”按钮已进行了一些改进,以使其含义更清晰(“我是在批准帖子还是在批准标记?”)。但这些状态仍然存在双重含义,这使我查看已处理项目的列表时感到非常困惑,因为“状态”过滤器和右上角的“状态”实际上没有意义。以下是一些示例:
批准了因输入过快而被标记的帖子 –帖子已批准– 状态:已批准
批准了不当帖子的标记 –帖子已拒绝– 状态:已批准
因个人资料垃圾信息而拒绝的用户 –用户已被暂停– 状态:已拒绝
拒绝了帖子的标记 –帖子保留– 状态:已拒绝
因此,似乎需要区分以下状态,并且某些项目可能同时具有这两种状态:
- 用户/帖子已批准
- 用户/帖子已拒绝
--- - 审核已批准
- 审核已拒绝
关于用户个人资料垃圾信息发送者的另一个改进建议是,我希望有一个选项可以删除该帐户并阻止其电子邮件,但不阻止其 IP 地址,因为他们经常使用合法用户也可能使用的共享 IP 地址范围。





