Aiuto per creare una query per controllare casualmente i PM per determinati termini

Qual è, secondo te, il modo migliore per prelevare il 10% dei messaggi privati (PM) tra utenti degli ultimi 30 giorni? Sto cercando una funzione di “randomizzazione” che possa essere utilizzata a tal fine.

Gestisco un sito web dove le persone parlano prevalentemente di attività illegali, in particolare di droghe. Come piattaforma, non permettiamo esplicitamente vendite o attività simili. Sto cercando un metodo di “chiamata casuale” (scusa, non sono un programmatore e non so esprimere con precisione cosa chiedo) che sia casuale ed equo, per poter difendere l’idea di effettuare “controlli a campione” sui PM per verificare il rispetto delle regole.

Ovviamente non voglio scegliere persone in modo arbitrario. Abbiamo parole e frasi segnalate e questo funziona, ma alcune persone riescono comunque a aggirarle. Vorrei (probabilmente devo) poter affermare di disporre di segnalazioni della community, moderatori, parole monitorate e di questo “controllo a campione”, ma non sono sicuro da dove ottenere il parametro di casualità, se esiste.

Non sto chiedendo codice o script gratuiti, a proposito. Non sono sicuro di come formulare la richiesta se devo rivolgermi al mercato o se è fattibile.

Dovresti chiamare l’API per ottenere i messaggi di quell’utente. I messaggi non sono archiviati come record di messaggio, ma sono semplicemente post normali, collegati a topic, quindi devi distinguere tra post normali e post di messaggio.

Hmmmmmmmmmmmmmm

Ok, penso che useremo una funzione di generazione casuale crittografica per prelevare topic che contengono solo, diciamo, 2 utenti e vedremo come va. Tornerò con i risultati se qualcun altro gestisce community in cui potrebbe esserci la necessità legale di effettuare controlli a campione sui PM in modo equo.

Numero di messaggi per utente

Mi piace la tua idea.

Mi trovo nella tua situazione e gestisco i messaggi privati con questa query:

Questo dovrebbe aiutarti :slight_smile:

Che figata, amico! Posso esportare quei risultati e poi usarli per un’estrazione casuale su random.org, controllando i messaggi privati di quegli utenti per vedere se sono stati furbi. Penso che random permetta anche di salvare la lista dell’estrazione per riferimento, se si paga una piccola quota, così c’è la prova che non ci sia stato nessun trucco da parte degli amministratori.

Bene fatto @SidV

PM con termine

Ho una nuova idea @DNSTARS!

E se potessi “cercare” nei messaggi privati termini come “buy” o “drugs:lol:

Dai un’occhiata a questo:

-- [params]
-- int :limit = 10
-- string :term = %term%
SELECT p.user_id, p.topic_id, p.post_number, p.raw, p.created_at::date
FROM posts p
LEFT JOIN topics t on t.id = p.topic_id
WHERE t.archetype = 'private_message'
  AND t.title <> 'WELCOME-TITLE-from-discobot'
  AND p.created_at::date > now()::date - 8
  AND p.raw ILIKE :term
ORDER BY p.created_at DESC
LIMIT :limit

Sostituisci WELCOME-TITLE-from-discobot con il titolo esatto del tuo messaggio di benvenuto, in modo che tutti i messaggi di benvenuto generati automaticamente vengano esclusi.

L’idea alla base della query proviene da guru @meglio pubblicato qui.

Ho solo apportato alcune piccole modifiche :wink:

Elenco delle query aggiornato :rocket:

Ha avuto difficoltà a gestire l’emoji: il nostro saluto era “:robot: Greeetings!”, quindi l’abbiamo lasciato semplicemente come “saluti” e fatto partire il tutto, e funziona in gran parte. Abbiamo comunque oltre 20 frasi generiche nella sezione dei log/segnalazioni delle parole monitorate.

Ad esempio, qualcuno potrebbe semplicemente chiacchierare con un amico della migliore esperienza con l’LSD che abbia mai avuto, il che va bene; ciò che non va bene è chiedere “Dove posso procurarmelo”, “Come si fabbrica”, “Chi ha il migliore?”. Per questo motivo utilizziamo il sistema di segnalazione integrato per intercettare queste richieste e, a tale scopo, funziona bene.

Dal punto di vista legale, dato che potremmo fare “di più” per adempiere a tutto ciò che ci si può ragionevolmente aspettare da noi, nel caso in cui si presentasse la necessità, posso ora affermare che la comunità segnala i contenuti inappropriati (poiché sono bravi e conoscono le regole), noi moderiamo, abbiamo segnalazioni automatiche del sistema, frasi e termini monitorati e controlliamo casualmente i messaggi privati per comportamenti sospetti.

Quindi sì, la tua seconda opzione funziona, ma (senza voler essere scortese) è ridondante per noi nello specifico, poiché parlare di droghe non è illegale, almeno dove ci troviamo noi; lo è invece tentare di procurarsele, fabbricarle o fare altro, e non vogliamo avere nulla a che fare con quello.

Grazie ancora, amico. Il primo passaggio richiede un lavoro manuale minimo, può essere affidato a un membro dello staff ed è sistematico. :peace_symbol: