@Heliosurge 이 아이디어가 매우 흥미로웠습니다. 해당 플러그인에 대해 읽어본 결과, 이미 구현된 부분들이 몇 가지 있는 것 같습니다. 제 경우, 핵심 문제를 해결하려면 다음과 같은 기능이 필요할 것입니다:
| 스크립트 이름 | 플러그인 | 설명 |
|---|---|---|
| 신뢰 수준 잠금 | automation |
사용자가 과도하게 게시물을 작성하거나, 너무 많거나/부적절한 이미지를 포함하거나, 신고 시스템을 남용하는 등의 경우, 위의 대안으로 사용자의 신뢰 수준을 0으로 잠그는 것입니다. 이는 사용자가 생성할 수 있는 주제 및 게시물의 수(및 빈도)를 제한하고, 과도한 이미지/링크 포함을 방지하며, 사용자가 신고를 할 수 없도록 합니다. 신뢰 수준은 사용자의 관리자 페이지에서 설정할 수 있습니다. |
| 사용자 무음 처리 | automation |
무음 처리된 사용자는 사이트에서 새로운 주제, 게시물, 신고 또는 개인 메시지(PM)를 생성할 수 없습니다. 그러나 게시물에 "좋아요"를 누르거나, 주제를 읽거나, 개인 메시지에 답장하는 등 다른 동작은 여전히 수행할 수 있습니다. 또한, 사용자는 개인 메시지를 통해 관리자와 소통할 수 있으므로, 문제를 해결하기 위해 계속 소통할 수 있습니다. |
| 사용자 정지 | automation |
정지된 사용자는 로그인할 수 없으며, 따라서 포럼에서 어떤 동작도 수행할 수 없습니다. 정지는 사용자가 가진 가장 강력한 조치이며, 신중하게 사용해야 합니다. 무음 처리와 마찬가지로, 사용자 정지는 사용자의 관리자 페이지에서 수행됩니다. 무음 처리와 마찬가지로, 정지는 특정 기간 동안 적용됩니다. 처음에는 짧은 기간 동안 정지하고, 사용자가 돌아와서 같은 행동을 계속한다면 정지 기간을 늘리는 것이 좋습니다. |
| 신뢰 수준 동결 | trigger-automation |
사용자가 무음 처리되거나 정지된 경우, 신뢰 수준 잠금 트리거가 활성화됩니다. |
신뢰 수준 동결 트리거 작동 방식
- 신뢰 수준 동결 - 다음 이벤트를 자동으로 트리거합니다:
- 사용자 무음 처리 - 경고
- 사용자 정지 - 1차 경고
- 신뢰 수준 잠금 - 2차 경고
최종 솔루션
- 요약하면 4개의 플러그인이 필요합니다. 마지막 플러그인만 다른 플러그인을 호출하며, 이는 다음 주제에서 확인할 수 있습니다: 신뢰 수준 동결 트리거 작동 방식.
- 사용자가 무음 처리되거나 정지되는 경우를 제외하고, 위에서 언급한 예시들은 스팸, 계정 보안 위험, 악의적인 메시지 또는 행동, 신고 - 사용자가 자신의 신뢰 수준이 차단되도록 요청하는 경우에 해당합니다. 여전히 개인적인 이유로 무음 처리되거나 정지된 사용자의 경우가 있을 수 있으며, 즉 자기 신고입니다:
- “무언가의 리더가 되고 싶지 않으므로 신뢰 수준을 잠금해 주세요.”
- “여행 중이므로 신뢰 수준을 차단하고 싶습니다. 이 기간 동안 계정이 해킹될지 모르겠습니다.”
- “제 계정이 해킹된 것 같습니다. Discourse 커뮤니티가 사건을 조사할 때까지 신뢰 수준을 동결해 주세요.”
- 참고: 자신의 계정을 자기 신고한 이러한 사용자는 계정 정지, 계정 무음 처리 또는 위에서 언급한 경우와 같이 차단된 신뢰 수준을 요청할 수 있습니다.
- 사용자가 정지되지 않아야 하거나, 무음 처리되지 않아야 하거나, 신뢰 수준이 보호되어야 한다는 증거를 제시하면, 계정은 정상 상태로 복원됩니다.
참고 사항
- 몇 번 시도해 보았고 피드백에 감사드립니다, JammyDodger ;D 이 문서를 읽고 꽤 멋진 것 같다고 생각합니다: https://meta.discourse.org/t/discourse-moderation-guide
- Dan DeMontmorency - 이 아이디어에 대해 어떻게 생각하시나요? 좋은 아이디어일까요? 이와 같은 것을 만드는 것이 가능한가요?
새로운 아이디어
- 실행 가능한 대안은 다음과 같을 수 있으며, 이는 suspend-a-user-via-the-api ,
silence-user-via-api, add-a-user-to-a-group-via-api, discourse-docs-api-org, auto-suspend-inactive-user, discourse_api_pull_121을 사용하여 수행할 수 있습니다 - 유일한 문제는 아직 신뢰 수준 잠금에 대한 API 정보를 찾지 못했다는 것입니다. - 이를 위해 API와 통신하는 플러그인이 있을 수 있습니다: silence-user-via-api, auto-suspend-inactive-user, “locking trust level”, suspend-a-user-via-the-api.
- 제 아이디어는 신뢰 보안 플러그인을 가지는 것입니다 - 이 플러그인은 다음 API와 통신합니다: silence-user-via-api, auto-suspend-inactive-user, “locking trust level”, suspend-a-user-via-the-api.
- 제 초기 제안은 다음 엔드포인트를 가지는 것이 정말 멋질 것이라는 것이었습니다:
${this.url}admin/users/${userId}/groups/report/spam${this.url}admin/users/${userId}/groups/report/lockingtrustlevel${this.url}admin/users/${userId}/groups/report/accountsecurityatrisk${this.url}admin/users/${userId}/groups/report/abusivemessagesorbehavior${this.url}admin/users/${userId}/groups/userwishthis/lockingtrustlevel${this.url}admin/users/${userId}/groups/userwishthis/accountsecurityatrisk${this.url}/admin/users/:user_id/report/spam${this.url}/admin/users/:user_id/report/lockingtrustlevel${this.url}/admin/users/:user_id/report/accountsecurityatrisk${this.url}/admin/users/:user_id/report/abusivemessagesorbehavior${this.url}/admin/users/:user_id/userwishthis/accountsecurityatrisk${this.url}/admin/users/:user_id/userwishthis/lockingtrustlevel
그러나 이미 해결할 수 있는 것은 이 poc - 개념 증명를 수행하는 것입니다
${this.url}/admin/users/:user_id/silence${this.url}/admin/users/:user_id/lockingtrustlevel${this.url}admin/users/${userId}/groups/silence${this.url}admin/users/${userId}/groups/lockingtrustlevel