Scripting dell'appartenenza ai gruppi

Sono l’amministratore del forum di un’organizzazione con diversi livelli di appartenenza, che corrispondono all’appartenenza a gruppi personalizzati nel forum. Attualmente questo richiede un processo manuale per ogni nuovo membro in cui ricevo l’indirizzo email del nuovo membro, verifico se è associato a un account utente e poi lo aggiungo al gruppo personalizzato.

Quello che vorrei è uno script che prenda un elenco di indirizzi email e, se esiste un utente con quell’indirizzo, lo aggiunga a un gruppo e, in caso contrario, invii un invito con i permessi del gruppo già aggiunti. Come scriverei uno script del genere?

Grazie!

MODIFICA:

Esempio da sotto:
Ho questi tre indirizzi email:
alice@example.com - Appartiene a un membro del forum che non è membro del gruppo SomeGroup
bob@foo.org - Appartiene a un membro del forum che è membro di SomeGroup
carol@bar.edu - Non appartiene a un membro del forum.

Vorrei aggiungere l’utente associato a alice@example.com a SomeGroup (e inviare un messaggio di benvenuto), non fare nulla per l’utente bob@foo.org e inviare un invito al forum con il flag di iscrizione al gruppo a carol@bar.edu.

1 Mi Piace

Puoi configurare il gruppo in modo che se un utente si iscrive con un determinato dominio email (il @example.com) venga automaticamente aggiunto a un gruppo.

Vai alla scheda Gestisci del gruppo, Membri e quindi la prima sezione Automatico aggiungi il dominio.

Grazie, ma questo non aiuta molto qui. I nostri membri utilizzano tutti la loro email personale per questo, quindi non hanno lo stesso dominio.

1 Mi Piace

Puoi configurare un link di invito e inviarlo ai clienti, ma credo che funzionerà solo se non si sono ancora registrati.

Vai alla scheda Membri, quindi premi Invita, configura l’invito e premi Salva invito.

Se invii un link di invito, funzionerà anche per i membri esistenti. :+1: Puoi persino indirizzarli a un argomento specifico su cui atterrare quando arrivano, quindi può essere utile per l’iscrizione di gruppo o per eventi.

C’è anche la funzione di invito di massa se hai già un elenco di indirizzi?

2 Mi Piace

Non lo sapevo. Darò un’occhiata alla wiki e diceva solo alla creazione dell’account. Puoi sistemarlo dato che non è una wiki? (Invite users to a group)

1 Mi Piace

Lasciami fare un esempio, perché la mia domanda non deve essere stata chiara.

Ho questi tre indirizzi email:
alice@example.com - Appartiene a un membro del forum che non è membro del gruppo SomeGroup
bob@foo.org - Appartiene a un membro del forum che è membro di SomeGroup
carol@bar.edu - Non appartiene a un membro del forum.

Vorrei che lo script aggiungesse l’utente associato ad alice@example.com a SomeGroup (e possibilmente inviasse un messaggio di benvenuto), non facesse nulla per l’utente bob@foo.org e inviasse un invito con il flag di iscrizione al gruppo a carol@bar.edu.

Ah, ok non me ne ero reso conto! Invierà ai membri già esistenti un avviso che sono stati aggiunti al gruppo?

Invece di utilizzare un elenco di indirizzi email, sarebbe probabilmente più sensato utilizzare l’API per questo. Quindi, quando l’utente si iscrive, dovresti iscriverlo automaticamente al gruppo utilizzando questa API: Discourse API Docs

Ciò richiede che l’utente sia già creato in Discourse al momento dell’utilizzo dell’API. Ciò potrebbe richiedere un po’ più di configurazione, ma potrebbe automatizzare completamente il flusso per te, in modo da non dover eseguire caricamenti manuali di indirizzi email degli utenti.

2 Mi Piace

Il fatto è che in realtà ho un elenco di indirizzi email, non nomi utente. La mia organizzazione tiene traccia dei livelli di appartenenza delle persone per nome ed email, non per nome utente del forum, poiché il forum è una piccola parte dell’organizzazione. Il coordinatore dei membri mi invia ogni settimana un elenco di nomi ed email per i nuovi membri. Potrebbero già avere o meno un account sul forum quando ciò accade, poiché abbiamo una sezione pubblica del forum.

Non sembra funzionare, in realtà. Quando provo a inviare un link di invito ricevo: Non c’è bisogno di invitare example@gmail.com, hanno già un account!

Potrei essermi confuso. :slight_smile: Darò un’occhiata e vedrò se c’è un modo per ottenere ciò che desideri utilizzando le funzionalità esistenti del forum. :+1:

Modifica:

Penso che sia possibile utilizzando l’opzione Invito di massa. Se hai un file CSV di indirizzi email, con una seconda colonna per i gruppi a cui desideri aggiungerli, quindi eseguendo questo attraverso lo strumento Invito di massa, invierai un invito via email a chiunque non abbia un account e aggiungerai i membri esistenti ai gruppi che hai inserito nella seconda colonna. Tuttavia, la parte mancante sarebbe che questo non genera una notifica per dire che sei stato aggiunto al gruppo.

2 Mi Piace

L’invito in blocco dovrebbe funzionare per ora, grazie! Vorrei presentare una richiesta di funzionalità per aggiungere un messaggio ai membri esistenti quando ottengono nuove autorizzazioni.

1 Mi Piace

Ho capito la mia confusione. Sono i link che fanno quello che pensavo, non le email. :slight_smile: Quindi l’altro modo sarebbe creare un link di invito (piuttosto che un’email) e poi inviarlo via email a tutte le persone nella tua lista di email. I nuovi membri verrebbero portati alla pagina ‘crea account e accetta invito’ prima di essere aggiunti al gruppo e inviati all’argomento (se hai aggiunto quel criterio), gli utenti esistenti che hanno già effettuato l’accesso verrebbero aggiunti al gruppo e inviati direttamente all’argomento a cui li hai indirizzati, e gli utenti esistenti che non avevano effettuato l’accesso possono accedere dalla pagina ‘crea account e accetta invito’ (anche se è un po’ ambiguo se puoi farlo, ma potresti aggiungere del testo aggiuntivo alla pagina in js.create_account.subheader_title per dare un piccolo suggerimento), e poi verrebbero aggiunti al gruppo e inviati all’argomento:

Tuttavia, anche questo modo non invia una notifica che dice che sono stati aggiunti al gruppo, ma hai l’opportunità di includere una spiegazione nell’email di invito iniziale che potrebbe essere utile? E l’‘arrivo all’argomento’ potrebbe anche essere sfruttato in modo simile a una landing page.

Non sono sicuro se questo sia utile, ma sono contento di averlo capito. :slight_smile:

1 Mi Piace