Mostrateci i vostri flussi di lavoro

Proseguendo la discussione da Un’anteprima della nuova funzione Workflows:

Sono davvero entusiasta del lancio di Workflows. Sognavo questa funzione quando ero un community manager attivo, alla ricerca di modi per automatizzare i processi tattici ripetitivi della community.

Sono molto curioso di sapere in che modo state utilizzando Workflows (o lo farete, ora che ne siete a conoscenza!).

Inizio io, ma ammetto di aver dovuto delegare la costruzione effettiva a @zogstrip e @chapoi, perché non ho le competenze tecniche.

Workflow promemoria aggiornamento settimanale
L’unica cosa che imponiamo al nostro team è un check-in settimanale, per assicurarci che stiano bene e siano felici. Alcune persone non lo fanno (per vari motivi) e inseguirle per far sì che lo facciano spreca tempo ed energia, quindi abbiamo una nuova soluzione.

Questo workflow verifica la presenza di un topic di aggiornamento e serve loro CSS via via più severi, più a lungo lasciano le cose in sospeso.

È incredibile quanto sia efficace!

11 Mi Piace

Adoro il CSS :laughing:! Riesci a condividerlo, se possibile?

2 Mi Piace

Per favore, non dirmi che… vuoi il tema più brutto che io abbia mai creato? :sweat_smile:

3 Mi Piace

Lo faccio davvero :laughing: . Sembra molto… creativo :eyes: .

2 Mi Piace

È davvero incredibile. Lo so, perché, cercando di testare qualcosa di non correlato, mi sono accidentalmente inserito nel Gruppo 4 e ho dovuto cercare di risolvere il problema mentre tutto sullo schermo continuava a fluttuare via. :laughing: @zogstrip è stato molto paziente.

2 Mi Piace

non è super super ovvio dalla panoramica del workflow, quindi ecco come funziona

parte 1 - riquadro giallo

  • per ogni post creato/modificato nella categoria #updates, verifichiamo se proviene dall’autore del topic
  • se non è dell’OP, “usciamo”
  • se è dell’OP, lo facciamo passare attraverso un classificatore LLM che restituisce un JSON indicando se il post è un vero aggiornamento settimanale (non richiediamo un formato specifico) e non una risposta casuale a un altro post
  • quindi salviamo quel risultato di classificazione in una tabella dati
  • se il post viene classificato come aggiornamento settimanale, rimuoviamo immediatamente l’utente da tutti i gruppi “in ritardo” (il riquadro verde)

parte 2 - riquadro blu

  • ogni giorno, alle 6:00 UTC, eseguiamo una query di Data Explorer che combina tutti i giorni di ferie, le festività e l’“ultimo aggiornamento settimanale” per inserire le persone in uno dei quattro gruppi “in ritardo”

parte 3 - non mostrato nel workflow

  • abbiamo un componente di tema personalizzato[1] che verifica se l’utente corrente è in uno dei gruppi “in ritardo” e applica più… fastidio :sweat_smile:

  1. applicato a tutti i nostri temi ↩︎

5 Mi Piace

Richiediamo l’uso di alcuni tag, ma i membri hanno l’abitudine di pubblicare nelle categorie errate, il che comporta la perdita di troppo tempo per spostare le discussioni nel posto giusto.

Un flusso di lavoro molto basilare, che si esegue alla creazione di una discussione, verifica i tag utilizzati e cambia automaticamente la categoria.

Qualcosa di così semplice ha aiutato a mantenere una certa struttura, senza richiedere alcuno sforzo.

2 Mi Piace

Seguo un post che ho fatto nel thread originale sui workflow. Ho capito come ottenere il risultato che desideravo. Tutto questo è ovviamente un test, ma ecco cosa fa:

Si tratta di un sistema di re-engagement che utilizza l’IA per cercare di stimolare la discussione e aumentare il coinvolgimento in momenti in cui il sito è poco attivo.

Fase A: Individuare e riassumere

Individua i post più vecchi di 30 giorni che presentano una combinazione dei seguenti criteri:

  • Argomenti popolari che non hanno ricevuto nuovi post da un po’.
  • Argomenti che stanno ricevendo molte visualizzazioni, ma non hanno avuto una risposta da un po’.
  • Argomenti che hanno avuto un’attività nell’ultimo anno, ma che si sono poi interrotti.

Una volta trovato un argomento, avvia l’agente ‘AI Summary’ di Discourse. L’agente IA scrive un riassunto. Lo fa inviando una richiesta HTTP POST all’endpoint API del riassunto. Una volta completato il riassunto, salva l’esistenza del workflow in una tabella dati.

(Questo si esegue una volta all’ora, ma potenzialmente più spesso).

Fase B: Valutare il riassunto per il follow-up

Un altro workflow pianificato si esegue in modo indipendente secondo il proprio programma. Controlla la tabella dati alla ricerca di righe che sono state riassunte ma non valutate. Prende un argomento dalla tabella dati e poi recupera i 5-10 post più recenti su quell’argomento.

Passa a un agente IA che gestisce il triage. Prende una decisione. Questo è un argomento che dovrebbe essere rivitalizzato? Se sì, come? Decide se l’argomento dovrebbe essere portato in cima (bump), se dovrebbe essere pubblicato un post che coinvolga nuovamente l’argomento: pone una domanda, chiede un follow-up o non fa nulla.

Aggiorna la tabella dati con la decisione presa.

(Questo dovrebbe essere eseguito con una frequenza simile alla Fase A; è possibile anche attivarlo dalla Fase A o combinarlo con essa.)

Fase C: Re-engagement con l’argomento

Un altro workflow pianificato si esegue secondo il proprio programma, con una frequenza inferiore. Il suo primo passo è controllare quanto il forum sia stato attivo di recente. Lo fa controllando quanti post sono stati pubblicati in media all’ora nelle ultime 3 ore. Quindi calcola la media di quanto il forum è stato attivo per periodi di 3 ore, nello stesso giorno e alla stessa ora negli ultimi 2 mesi. Se il sito non è attivo come di solito lo sarebbe alla stessa ora dello stesso giorno, dirà ‘possiamo fare un re-engagement adesso’.

Poi recupera fino a 10 opportunità di re-engagement disponibili. Le invia a un agente IA e gli chiede di estrarre il candidato più forte per un re-engagement dall’elenco. L’IA decide e restituisce un topic_id. Il classificatore nella Fase B ha deciso tra 3 opzioni: porta in cima l’argomento, pubblica un follow-up, non fare nulla.

Il workflow eseguirà un bump a meno che non sia designato un follow-up. Se destinato al follow-up, prenderà l’id dell’argomento e recupererà i post più recenti da quell’argomento. Lo passerà a un agente IA che determinerà quale sia la migliore risposta per coinvolgere nuovamente l’argomento. Ha dei vincoli (guardrails) per garantire una risposta molto basilare, che sia ancora pertinente all’argomento e non fornisca raccomandazioni o commenti. Si limita principalmente a chiedere un aggiornamento, a chiedere se l’autore originale ha novità su qualcosa che è successo, ecc. Pubblica la risposta e poi aggiorna la tabella dati con la data di completamento.

Spero di non aver semplicemente duplicato una funzione nascosta di Discourse di cui non ero a conoscenza! Ci sono voluti un po’ di tentativi ed errori, ma ce l’ho fatta.

6 Mi Piace

Ecco alcuni esempi di report settimanali che utilizziamo per tenere il nostro team aggiornato sulle diverse attività su meta. Ognuno è associato a un argomento nella categoria staff dove vengono pubblicati i risultati.

Ritengo che siano per lo più generici, se desideri provarli sul tuo sito. Dovresti solo modificare l’ID dell’argomento in cui i risultati vengono condivisi nell’ultimo nodo, inserendo l’ID di un argomento presente nella tua categoria staff.

(Potrebbe essere necessario modificare manualmente il file prima dell’importazione. Li ho sovrascritti manualmente con TOPIC_ID dopo l’esportazione per evitare incidenti)

report settimanale di moderazione
file: weekly-moderation-report.json (21,4 KB)

  • Include tabelle che elencano:
    • riepilogo della moderazione (conteggi delle varie azioni di moderazione)
    • numero di segnalazioni gestite da diversi utenti
    • numero di segnalazioni effettuate da diversi utenti
    • elenco dei post segnalati con i relativi metadati
    • avvisi emessi
    • note utente aggiunte

report settimanale delle impostazioni del sito
file: weekly-site-settings-report.json (3,3 KB)

  • Include una tabella che elenca le impostazioni del sito modificate
    • nome dell’impostazione
    • chi l’ha modificata e quando
    • valore precedente, nuovo valore

report settimanale dei livelli di fiducia
file: weekly-trust-level-report.json (9,8 KB)

  • Include tabelle che elencano:
    • riepilogo (numero di utenti proposti per ciascun livello di fiducia nella settimana precedente)
    • elenco degli utenti che hanno raggiunto il livello di fiducia 2 o 3
8 Mi Piace

Attualmente utilizziamo i Workflows in modo piuttosto esteso nella nostra community di Discourse, e stanno diventando una parte davvero utile del nostro onboarding e della gestione degli eventi.

La nostra community conta oltre 9.000 utenti registrati e molti diversi gruppi di peer support online e locali, quindi l’automazione ci aiuta molto.

Ecco alcuni dei workflow che utilizziamo attualmente:

:waving_hand: Onboarding personalizzato

Gli utenti nuovi di zecca ricevono messaggi personali automatici dopo la registrazione.

Il contenuto dipende dagli interessi selezionati durante la registrazione (ad esempio gruppi di peer support, eventi, il nostro caffè virtuale, body doubling o scambio scritto).

Qualche giorno dopo, ricevono un secondo messaggio di check-in con informazioni aggiuntive e aiuto per iniziare.

:date: Promemoria per gli eventi

Utilizziamo un workflow pianificato che verifica ogni 15 minuti gli eventi che iniziano in circa 24 ore.

Gli utenti che hanno selezionato Parteciperò o Interessato ricevono un promemoria personale con il titolo dell’evento, la data, l’ora e un link per tornare all’evento.

Abbiamo anche alcuni gruppi con i propri workflow di promemoria, quindi il workflow generale esclude quegli utenti per prevenire promemoria duplicati.

:laptop: Istruzioni per alfaview sensibili al contesto

Molti dei nostri gruppi di peer support online si riuniscono tramite alfaview, mentre altri eventi si svolgono tramite Zoom o localmente.

Verifichiamo quindi se il post dell’evento contiene un link alfaview.

Se è presente un link alfaview, il promemoria delle 24 ore include automaticamente una guida passo-passo espandibile che spiega come entrare nella sala d’attesa e quindi selezionare la sala riunioni corretta, inclusa una screenshot.

Se non c’è un link alfaview, viene inviato il promemoria normale senza queste istruzioni.

Questo significa che non dobbiamo mantenere elenchi di gruppi “online” e “offline”.

:door: Onboarding per le videoconferenze

Utilizziamo anche i workflow basati su moduli come un breve passo di onboarding prima che gli utenti accedano per la prima volta alle nostre sale di videoconferenza.

Gli utenti ricevono istruzioni che spiegano come funziona la struttura delle nostre sale alfaview. Dopo averle lette, possono scegliere se vogliono vedere di nuovo le istruzioni la prossima volta.

Se scelgono di non vederle di nuovo, il workflow li aggiunge a un gruppo di marcatori. Il nostro componente tematico utilizza quindi quell’appartenenza al gruppo per mostrare il link diretto alla videoconferenza invece del modulo di onboarding.

:bell: Notifiche specifiche per gruppo

Utilizziamo i workflow per notificare ai membri di gruppi specifici nuovi eventi e riunioni imminenti.

Questo è particolarmente utile per i gruppi di peer support, dove vogliamo che i membri ricevano una notifica indipendentemente dal fatto che visitino regolarmente il forum.


Ciò che mi piace particolarmente dei Workflows è che possiamo combinare moduli, query SQL, gruppi, controlli pianificati e messaggi personali.

Ci sono ancora alcune cose che mi piacerebbe vedere in futuro. Un esempio sarebbe una migliore integrazione con il calendario: idealmente, quando qualcuno seleziona Parteciperò per un evento, ci piacerebbe inviar loro automaticamente un’email con allegato un file calendario .ics.

7 Mi Piace

Un caso d’uso davvero interessante, di certo qualcosa su cui riflettere @j.jaffeux / @martin / @lindsey

Mi chiedo se questa sia una questione di workflow o di una funzionalità integrata negli eventi di Discourse?

4 Mi Piace

Grazie per questo ottimo feedback e per la condivisione della vostra esperienza: è fantastico leggere come tutti voi usate i workflow e come risolvono problemi concreti per le vostre community :heart:

La gestione degli eventi pari sembra davvero una funzionalità di base, ma dovrebbe essere fattibile entro questa settimana tramite i workflow: abbiamo in arrivo qualcosa pensato apposta per questo.

6 Mi Piace