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.
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.
E se potessi “cercare” nei messaggi privati termini come “buy” o “drugs”
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.
Ha avuto difficoltà a gestire l’emoji: il nostro saluto era “ 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.