outra ideia
imagem 1
imagem 2
caso 1:
- Existe um botão de denúncia para qualquer usuário na comunidade, isso torna o sistema mais autônomo
- Ao clicar em denunciar o usuário aparece um modal, onde se pode escolher a opção de denúncia
- Ao acontecer isso, o usuário denunciado recebe uma mensagem.
- E a denúncia é vista pelo moderador ou administrador.
- Caso o usuário não responda a essa mensagem de denúncia - tentando por sua vez dizer que “é falsa” ou “não procede”, como acontece no Youtube, o processo é feito e finalizado.
- o evento é adicionado: Bloqueio de Níveis de Confiança
- Caso isso aconteça novamente, o evento é adicionado: Usuário silenciado.
- Caso isso aconteça novamente, o evento é adicionado: Suspender usuário
notas
- O administrador ou moderador irá verificar o processo de denúncia do usuário que denuncia outro usuário.
- Caso o processo de denúncia do usuário solicitante faça sentido (o moderador ou administrador) encaminha essa mensagem para o usuário.
- Caso o usuário tenha algum motivo que explique que a denúncia é falsa, o processo é encerrado.
- O admin ou moderador pode verificar a resposta do usuário denunciado e decidir se arquiva ou não.
caso 2
Observação: O usuário acha que a conta foi hackeada, então o usuário denuncia a sua própria conta.
notas finais
Todos os plugins descritos acima são para automatizar esse processo que descrevo agora com imagens
Como o processo de denúncia ocorre automaticamente?
- De usuários da comunidade para outros usuários da comunidade, ou seja, quando um ou mais usuários denunciam um ou mais usuários - isso acontece quando um ou mais usuários clicaram no botão: “denunciar este usuário para a comunidade” de um ou mais usuários
- Quando apenas usuários do tipo: moderadores, administradores ou líderes da comunidade são chamados por um ou mais usuários para denunciar uma postagem - isso é conhecido como sinalizar postagem
- Pelo próprio usuário, quando ele se sente hackeado, ou seja, quando o usuário se denuncia, notificando o sistema que a conta foi hackeada - isso acontece quando um ou mais usuários clicaram no botão: “denunciar este usuário para a comunidade” e se auto denunciou
- Administradores, moderadores ou líderes da comunidade são chamados nesses casos:
- sinalizar postagem
- usuário denunciado por usuários da comunidade
- usuário denunciou sua própria conta, pois acha que foi hackeado
- Em todos esses cenários, os plugins que descrevi são necessários para automatizar esse processo.
- As opções automáticas para moderadores, administradores ou líderes da comunidade gerenciarem usuários são estas:
- Bloqueio de Níveis de Confiança
- Usuário silenciado
- Suspender usuário
Observação: Isso só pode ser feito, se houver uma lista de usuários para denunciar.
Notas
- Gera uma lista de usuários que são denunciados
- Com essa lista, podemos fazer o seguinte. Usuários que não pediram resposta - isso é feito inicialmente
- Bloqueio de Níveis de Confiança
- Usuário silenciado
- Suspender usuário
- Usuários que pediram resposta
- Administradores, moderadores e líderes da comunidade são chamados
- Se a resposta do usuário denunciado for aceita ou válida, tudo é arquivado
- Se a resposta não for aceita, o usuário tem uma última chance de responder, e se não o fizer, o processo é feito e concluído.
- Podemos ver essa lista dos casos de notificação mais comuns e incomuns dentro do Discourse. incluindo o ano, mês, semana e período em que ocorre (ano a ano, mês a mês, semana a semana) - essa seria minha ideia inicial
- Na minha opinião, a melhor maneira ou a maneira mais fácil de fazer isso - sem prejudicar a modelagem do sistema Discourse ou mesmo uma maneira prática de fazê-lo, seria ter um banco de dados temporário para receber relatórios de usuários, um banco de dados como o mongodb poderia ser usado para isso.
- Penso em usar o mongodb para receber informações de usuários que são denunciados
- O mongodb funciona bem - o mongodb é um banco de dados orientado a documentos. Isso é interessante se você tem um alto volume de dados e esses dados não são estruturados - o famoso nosql
- Além disso, o banco de dados não é permanente, é temporário. O mongodb suporta tipos de dados temporários
- Pensei nessa ideia ao ler isto: Configure Discourse to use a separate PostgreSQL server - Pensei em ter um banco de dados mongodb separado para isso
- De acordo com esta página: GitHub - discourse/discourse: A platform for community discussion. Free, open, simple., o Discourse usa redis e postgresql. Você já pensou em usar mongodb para este caso que descrevi?
resumo da ideia
“usuários denunciados - 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: "mensagens ou comportamento abusivos"
},
report4:{
user: "user001",
reportedUser: "user003",
reason: "usuário divulga dados ilegais do usuário"
},
report5:{
user: "user001",
reportedUser: "user002",
reason: "usuário posta links duvidosos, links que contêm vírus, malware"
},
report6:{
user: "user001",
user_report: "user002",
reason: "especificar outro motivo"
},
report7:{
user: "user004",
reportedUser: "user005",
reason: "Acho que minha conta foi hackeada, gostaria que meu nível de confiança fosse congelado até que o caso seja investigado pela comunidade Discourse"
}
}
notas
use sha256 para anonimizar os dados de quem envia o relatório e quem o recebe
reports: {
report1:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
linkFlagPost: "https://meta.discourse.org/t/post-test/1122344"
reason: "flag post",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report2:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "spam",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report3:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "mensagens ou comportamento abusivos",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report4:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "usuário divulga dados ilegais do usuário",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report5:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "usuário posta links duvidosos, links que contêm vírus, malware",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report6:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "especificar outro motivo",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report7:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "a1dd6837f284625bdb1cb68f1dbc85c5dc4d8b05bae24c94ed5f55c477326ea2",
reason: "Acho que minha conta foi hackeada, gostaria que meu nível de confiança fosse congelado até que o caso seja investigado pela comunidade Discourse",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
},
report8:{
user: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reportedUser: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reason: "Acho que minha conta foi hackeada, gostaria que meu nível de confiança fosse congelado até que o caso seja investigado pela comunidade Discourse",
reply: {
reportedUser: "c23162ffc1a535af2ee09588469194816e60cb437e30d78c5617b5d3f1304d6a",
reason: "Ver logs na conta - se você confirmar este processo, congelaremos o nível de confiança",
replyFrom: "administrador",
status1: "processo arquivado"
status2: "Bloqueio de Níveis de Confiança"
}
}
Alguns problemas nesta ideia, solução
- Pode ser uma solução errada, preciso do feedback da comunidade Discourse para saber se a ideia é válida ou não.
- Implementar isso pode ser complicado



