Come impostare le preferenze di notifica email per tutti gli utenti su nessuno?

Il mio caso d’uso: sto importando incrementale il mio forum attuale. Nel primo passo, dovremo fare molta ricategorizzazione, assegnare distintivi agli utenti, inserire gli utenti in gruppi, spostare i post, creare nuovi argomenti con informazioni di aiuto, ecc. Nel frattempo, alcuni utenti selezionati saranno invitati a collaborare ai test e altro.

Durante questa fase, voglio assicurarmi che nessun utente attuale riceva email di notifica da un forum di cui non sa nemmeno dell’esistenza. L’impostazione “disabilita tutte le email” non funzionerà, perché gli utenti di test devono poter richiedere una nuova password per accedere.

Ho già disabilitato il riepilogo via email e impostato la configurazione che rende tutte le categorie predefinite “in silenzio”.

Voglio assicurarmi che non vengano inviate altre email o notifiche di alcun tipo, tranne quando gli utenti le richiedono esplicitamente per una nuova password.

Cosa posso fare per garantire che non vengano inviate email? È sufficiente?

Grazie per l’aiuto nel chiarirmi le idee!

Vuoi disattivare tutti gli utenti. Possono riattivare l’account reimpostando la password. Dovresti essere in grado di trovare un esempio di comando Rails per farlo cercando qui o consultando alcuni script di importazione.

Grazie per il suggerimento sulla necessità di disattivarli. Ho trovato uno script che hai scritto in un altro argomento, va bene così, vero?

cd /var/discourse
./launcher enter app
rails c
User.where(“last_seen_at < ‘2016-01-01’”).update_all(active: false)
exit
exit

Sembra proprio quello! Potresti voler disabilitare tutti gli utenti e far sì che le tue poche persone reimpostino le proprie password, per assicurarti di non inviare email alle persone sbagliate e per vedere come funziona tale processo.

Sì, lo farò. In pratica, tutti devono reimpostare la password comunque, dato che non ho importato le password.

Come potrei riattivare tutti una volta completato il passaggio?
Sostituire active:false con active:true?

Dovranno eseguire la procedura “password dimenticata” per accedere.

Ok, beh, devono farlo comunque :slight_smile:

Grazie per il tuo aiuto e per le risposte rapide!

Aggiornamento: grazie mille! L’ho appena eseguito,

per prima cosa ho verificato nel pannello di amministrazione quali utenti sarebbero stati interessati; per ora mi serviva solo me stesso come attivo. Quindi l’ultimo accesso era di circa 50 giorni fa (anche se ero stato attivo negli ultimi giorni), quindi 50 giorni è stato il punto di taglio.

Poiché sono pigro e non volevo fare molti calcoli, ho modificato la data al 2020-01-01 ed eseguito lo script,

e voilà, 25400 utenti passati da attivi a inattivi.

Inoltre: esclude discobot e l’utente di sistema, che rimangono attivi. (il che ha senso e sono contento che sia programmato in questo modo :))