Eine weitere Idee
Bild 1
Bild 2
Fall 1:
- Es gibt eine Meldeschaltfläche für jeden Benutzer in der Community, was das System autonomer macht.
- Wenn Sie auf „Benutzer melden“ klicken, erscheint ein Modal, in dem Sie die Meldeoption auswählen können.
- Wenn dies geschieht, erhält der gemeldete Benutzer eine Nachricht.
- Und die Meldung wird vom Moderator oder Administrator eingesehen.
- Wenn der Benutzer nicht auf diese Denunziationsnachricht antwortet – und versucht zu sagen, dass sie „falsch“ oder „nicht zutreffend“ ist, wie bei YouTube –, ist der Prozess abgeschlossen.
- Das Ereignis wird hinzugefügt: Sperrung von Vertrauensstufen.
- Wenn dies erneut geschieht, wird das Ereignis hinzugefügt: Stummgeschalteter Benutzer.
- Wenn dies erneut geschieht, wird das Ereignis hinzugefügt: Benutzer sperren.
Notizen
- Der Administrator oder Moderator überprüft den Beschwerdeprozess des Benutzers, der einen anderen Benutzer meldet.
- Wenn der Beschwerdeprozess des anfragenden Benutzers sinnvoll ist (der Moderator oder Administrator) leitet diese Nachricht an den Benutzer weiter.
- Wenn der Benutzer einen Grund hat, der erklärt, dass die Beschwerde falsch ist, wird der Prozess geschlossen.
- Der Administrator oder Moderator kann die Antwort des gemeldeten Benutzers überprüfen und entscheiden, ob er sie archiviert oder nicht.
Fall 2
Hinweis: Der Benutzer glaubt, dass das Konto gehackt wurde, daher meldet der Benutzer sein eigenes Konto.
Abschließende Hinweise
Alle oben beschriebenen Plugins dienen der Automatisierung dieses Prozesses, den ich jetzt mit Bildern beschreibe.
Wie läuft der Whistleblowing-Prozess automatisch ab?
- Von Community-Benutzern zu anderen Community-Benutzern, d. h. wenn ein oder mehrere Benutzer einen oder mehrere Benutzer melden – dies geschieht, wenn ein oder mehrere Benutzer auf die Schaltfläche „Diesen Benutzer der Community melden“ eines oder mehrerer Benutzer geklickt haben.
- Wenn Benutzer vom Typ Moderatoren, Administratoren oder Community-Leiter von einem oder mehreren Benutzern aufgefordert werden, einen Beitrag zu melden – dies wird als „Flag Post“ bezeichnet.
- Vom Benutzer selbst, wenn er das Gefühl hat, gehackt zu werden, d. h. wenn sich der Benutzer selbst denunziert und das System benachrichtigt, dass das Konto gehackt wurde – dies geschieht, wenn ein oder mehrere Benutzer auf die Schaltfläche „Diesen Benutzer der Community melden“ geklickt haben und sich selbst gemeldet haben.
- Administratoren, Moderatoren oder Community-Leiter werden in folgenden Fällen herangezogen:
- Beitrag kennzeichnen (Flag Post)
- Benutzer von Community-Benutzern gemeldet
- Benutzer hat sein eigenes Konto gemeldet, da er glaubt, es wurde gehackt
- In all diesen Szenarien sind die von mir beschriebenen Plugins erforderlich, um diesen Prozess zu automatisieren.
- Die automatischen Optionen für Moderatoren, Administratoren oder Community-Leiter zur Verwaltung von Benutzern sind:
- Sperrung von Vertrauensstufen
- Stummgeschalteter Benutzer
- Benutzer sperren
Hinweis: Dies kann nur geschehen, wenn eine Liste von Benutzern zum Melden vorhanden ist.
Notizen
- Generiert eine Liste der gemeldeten Benutzer.
- Mit dieser Liste können wir Folgendes tun. Benutzer, die keine Antwort angefordert haben – dies geschieht zunächst.
- Sperrung von Vertrauensstufen
- Stummgeschalteter Benutzer
- Benutzer sperren
- Benutzer, die eine Antwort angefordert haben:
- Administratoren, Moderatoren und Community-Leiter werden herangezogen.
- Wenn die gemeldete Antwort des Benutzers akzeptiert oder gültig ist, wird alles archiviert.
- Wenn die Antwort nicht akzeptiert wird, hat der Benutzer eine letzte Chance zu antworten, und wenn er dies nicht tut, ist der Prozess abgeschlossen.
- Wir können diese Liste der häufigsten und ungewöhnlichsten Benachrichtigungsfälle in Discourse sehen, einschließlich des Jahres, Monats, der Woche und des Zeitraums, in dem sie auftreten (von Jahr zu Jahr, von Monat zu Monat, von Woche zu Woche) – das wäre meine ursprüngliche Idee.
- Meiner Meinung nach wäre der beste oder einfachste Weg, dies zu tun – ohne das Discourse-Systemmodell zu beeinträchtigen oder sogar eine praktische Möglichkeit, dies zu tun – eine temporäre Datenbank zu haben, um Berichte von Benutzern zu empfangen. Eine Datenbank wie MongoDB könnte dafür verwendet werden.
- Ich denke daran, MongoDB zu verwenden, um Informationen von gemeldeten Benutzern zu erhalten.
- MongoDB funktioniert gut – MongoDB ist eine dokumentenorientierte Datenbank. Das ist interessant, wenn Sie ein hohes Datenvolumen haben und diese Daten nicht strukturiert sind – das berühmte NoSQL.
- Außerdem ist die Datenbank nicht permanent, sondern temporär. MongoDB unterstützt temporäre Datentypen.
- Ich kam auf diese Idee, als ich das hier las: Configure Discourse to use a separate PostgreSQL server – Ich dachte, ich hätte eine separate MongoDB-Datenbank dafür.
- Laut dieser Seite: GitHub - discourse/discourse: A platform for community discussion. Free, open, simple. verwendet Discourse Redis und PostgreSQL. Haben Sie schon einmal daran gedacht, MongoDB für diesen von mir beschriebenen Fall zu verwenden?
Zusammenfassung der Idee
„Gemeldete Benutzer – MongoDB“
reports: {
report1:{
user: "user001",
linkFlagPost: "https://meta.discourse.org/t/post-test/1122344"
reason: "flag post",
reportedUser: "user002"
},
report2:{
user: "user001",
reportedUser: "user003",
report: "spam"
},
report3:{
user: "user001",
reportedUser: "user003",
reason: "abusive messages or behavior"
},
report4:{
user: "user001",
reportedUser: "user003",
reason: "user discloses illegal user data"
},
report5:{
user: "user001",
reportedUser: "user002",
reason: "user posts dubious links, links that contain viruses, malware"
},
report6:{
user: "user001",
user_report: "user002",
reason: "specify another reason"
},
report7:{
user: "user004",
reportedUser: "user005",
reason: "I think my account has been hacked, I would like my trust level to be frozen until the case is investigated by the Discourse community"
}
}
Notizen
Verwenden Sie SHA256, um die Daten des Meldenden und des Empfängers zu anonymisieren.
reports: {
report1:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
linkFlagPost: "https://meta.discourse.org/t/post-test/1122344"
reason: "flag post",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
status1: "filed process"
status2: "Locking Trust Levels"
},
report2:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "spam",
status1: "filed process"
status2: "Locking Trust Levels"
},
report3:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "abusive messages or behavior",
status1: "filed process"
status2: "Locking Trust Levels"
},
report4:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "user discloses illegal user data",
status1: "filed process"
status2: "Locking Trust Levels"
},
report5:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "user posts dubious links, links that contain viruses, malware",
status1: "filed process"
status2: "Locking Trust Levels"
},
report6:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "specify another reason",
status1: "filed process"
status2: "Locking Trust Levels"
},
report7:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "I think my account has been hacked, I would like my trust level to be frozen until the case is investigated by the Discourse community",
status1: "filed process"
status2: "Locking Trust Levels"
},
report8:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reason: "I think my account has been hacked, I would like my trust level to be frozen until the case is investigated by the Discourse community",
reply: {
reportedUser: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reason: "View logs in account - if you confirm this process, we will lock the trust level",
replyFrom: "administrator",
status1: "filed process"
status2: "Locking Trust Levels"
}
}
Einige Probleme bei dieser Idee, Lösung
- Es könnte eine falsche Lösung sein, ich brauche das Feedback der Discourse-Community, um zu wissen, ob die Idee gültig ist oder nicht.
- Die Implementierung kann kompliziert sein.