Sto cercando di utilizzare lo script Crea post con il trigger Dopo l’aggiornamento dell’utente per un flusso di lavoro di introduzione/notifica per nuovi utenti, e non sono sicuro di aver compreso correttamente la limitazione documentata o se esista una soluzione alternativa supportata.
Voglio creare un post automatizzato quando un nuovo utente completa un campo di registrazione/profilo obbligatorio.
Allo stesso tempo, vorrei che quel post includesse anche alcuni campi personalizzati opzionali dell’utente, se l’utente li ha compilati, ad esempio cose come:
pronomi / genere
lingue
conferma di aver compreso le linee guida della comunità
Quindi il comportamento previsto sarebbe:
un campo obbligatorio garantisce l’attivazione dell’automazione
altri campi opzionali sono inclusi nel post solo se sono stati compilati
Dove mi blocco
La documentazione per il trigger afferma:
L’automazione si attiverà solo dopo che l’utente ha compilato tutti i campi specificati.
E anche l’interfaccia utente dice:
Si attiverà solo se l’utente ha compilato tutti questi campi
Quindi, come lo interpreto io, se aggiungo campi opzionali alla configurazione del trigger per poter utilizzare i loro segnaposto, smettono di essere opzionali ai fini dell’automazione, perché l’automazione non si attiverà a meno che non siano tutti compilati.
Questo sembra creare un paradosso:
se includo i campi opzionali nel trigger, l’automazione potrebbe non attivarsi mai per gli utenti che li saltano
se non li includo nel trigger, potrei non essere in grado di utilizzare i loro segnaposto in modo affidabile nel post
Le mie domande
Ho compreso correttamente il comportamento attuale?
La limitazione documentata è ancora accurata oggi?
Esiste un modo supportato per:
attivare l’automazione da un campo obbligatorio
ma accedere comunque ad altri campi personalizzati/di profilo opzionali nel contenuto del post se presenti?
Se no, esiste una soluzione alternativa consigliata per questo caso d’uso?
Comportamento ideale
Ciò che spero sia possibile è qualcosa del genere:
attivare quando qualsiasi condizione di trigger obbligatoria è soddisfatta
sostituire i segnaposto opzionali quando i valori esistono
lasciare i segnaposto opzionali vuoti, invariati o ommessi quando i valori non esistono
Ma non sono sicuro che ciò sia già possibile e se sto solo configurando male le cose.
Devo solo eliminare i caratteri simbolo dai nomi dei campi?
Potrei continuare a sperimentare, ma dato che questi campi sono opzionali (e non ho voglia di creare un sacco di nuovi utenti di prova) potrebbe volerci del tempo per testare.
Ottima domanda, a una rapida occhiata penso che i nomi dei campi con simboli impedirebbero effettivamente il funzionamento dell’automazione… potrebbe essere necessaria una piccola modifica dal nostro lato per rimuoverli in questo tipo di utilizzo.
Potresti rimuovere i simboli dai campi personalizzati per ora? {{pronouns_or_gender}} e {{community_guidelines_undersood}} dovrebbero funzionare correttamente nell’automazione senza di essi.
Certo, quindi {{foo}} è il campo stesso, mentre {{#foo}} {{/foo}} che lo circonda è un blocco condizionale. Quindi, se foo non è compilato, nulla tra {{#foo}} {{/foo}} verrà visualizzato.
Quindi, se scrivessi
Il mio nome è {{foo}}
e foo non fosse definito, otterresti “Il mio nome è” in un post
ma se usi
{{#foo}}Il mio nome è {{foo}}{{/foo}}
e foo non è definito, anche “Il mio nome è” verrà escluso dal post.
Quindi, mi chiedo se testare le varianti possa far fallire l’intero processo? Nel senso che non verrebbe creato alcun nuovo post. Se non è così, posso semplicemente provare tutte le combinazioni possibili dei campi con i simboli e vedere cosa funziona più rapidamente.
Ah sì, scusa, non era chiaro: se rimuovi i simboli speciali solo dai campi personalizzati, allora funzioneranno nell’automazione… Discourse ha bisogno di qualche aggiustamento per rimuovere automaticamente i caratteri speciali, così potranno essere utilizzati nelle automazioni come attualmente configurate.