'guardando il prima post' su un tag non funziona su un argomento esistente?

Giuro che questo funzionava nei miei primi test, dato che è fondamentale per il mio flusso di lavoro: potevo taggare un post esistente e gli utenti con watching_first_post su quel tag ricevevano una notifica.

Ora ho scoperto che non funziona in questo modo (…più..?)

O forse viene ignorato quando ci sono già post di risposta sotto quell’argomento?

Immagino di poter spostare gli argomenti in una categoria dove tutti hanno ‘watching first post’, ma…

  1. Le notifiche vengono attivate solo alla creazione dell’argomento?
  2. Non sono sicuro se la presenza di post di risposta causerebbe l’ignoranza del trigger del ‘primo post’.
  3. Volevo davvero mantenere gli argomenti correlati in un’unica categoria e “escalare” alcuni tramite tag.

Sono disposto a eseguire uno script per avviare le notifiche ogni volta, ma Askbot :robot: non è riuscito ad aiutarmi a crearne uno funzionante.

Accoglierei qualsiasi input o soluzione alternativa..!

image

Ma come funzionerebbe? E se ci fossero 10.000 vecchi argomenti con il tag, riceveresti subito una notifica?

Watch first post notifica solo sul primissimo post nell’argomento.

1 Mi Piace

Questo è piuttosto definitivo, quindi devo ricordarmi male e aver creato argomenti di prova con il tag tracciato presente.

Oh no, non sto suggerendo che impostare un utente su ‘watch first post’ tramite tag dovrebbe fare qualcosa di retroattivo.

Ma sicuramente è comune che gli argomenti pubblicati vengano taggati dallo staff in seguito. Mi ero solo immaginato che quando un tag ‘watch first post’ viene applicato a un argomento esistente, generasse una notifica di quell’argomento per gli utenti che stanno già applicando WFP al tag.

Sto ancora lavorando con Askbot per creare uno script ad hoc per queste occasioni…

Dopo circa 60 iterazioni, Askbot e io abbiamo uno script Rails quasi funzionante.

Lo script seguente, per l’argomento 239 e il tag ‘tagtest’, genera le notifiche “Nuovo argomento” attese con il titolo corretto dell’argomento e genera le email correlate.

Alcuni elementi sembrano inerti (message: e display_username: non compaiono in alcun output), ma funziona quasi.

Il problema principale è che le email non arrivano con il titolo effettivo dell’argomento nell’intestazione. Viene visualizzato come " %{topic_title} ". topic_title apparentemente non è un campo valido per il metodo Notification, quindi non sono sicuro di quale sia il codice minimo necessario per inserirlo nell’email. (Askbot ha provato ad aggiungere metodi email sempre più elaborati, con errori sempre crescenti.)

Se qualcuno potesse aiutare con questo dettaglio, mi terrebbe a galla finché non imparerò come sistemare tutto correttamente…!


topic_id = 239

Tag.where(name: 'tagtest').each do |tag|
  TagUser.where(tag_id: tag.id, notification_level: TagUser.notification_levels[:watching_first_post]).each do |tag_user|
    user = User.find(tag_user.user_id)
    puts "Username: #{user.username}, ID: #{user.id}"

    # Recupera il titolo dell'argomento
    topic = Topic.find(topic_id)
    topic_title = topic.title

    # Crea una notifica per l'argomento
    Notification.create!(
      user_id: user.id,
      notification_type: Notification.types[:watching_first_post],
      topic_id: topic_id,
      post_number: 1, # Presumendo che tu voglia notificare il primo post dell'argomento
      data: {
        message: 'Hai una nuova notifica per un argomento che stai seguendo.',
        display_username: 'system'
      }.to_json
    )

  end
end

Anche al momento del tagging si corre un rischio, ad esempio il tagging in blocco di 500 argomenti, quindi ci sono 500 notifiche, addio alle tue notifiche.

O ancora peggio, 100 tag da parte di un amministratore a distanza di 10 secondi.

È un problema complicato, dovremmo integrare le notifiche con molta attenzione per modificare la funzionalità in questo modo.

Non è la stessa cosa se sposti argomenti in blocco in un’altra categoria? Spostare argomenti in un’altra categoria attiva le notifiche di “watching first post”.

Sì, penso che in generale ricategorizzare sia molto più raro che rietichettare, quindi la scala del problema è in qualche modo mitigata. C’è qualche possibilità che tu possa fare uno screenshot veloce di ciò che accade quando ricategorizzi in blocco 3 argomenti su “watch-first”?

Non sognerei mai di taggare in massa 500 argomenti, ma sono curioso, causerebbe più stress che pubblicare in una categoria Annunci che tutti seguono?
(Modifica: Ops, Moin ha pubblicato mentre stavo scrivendo.)

Il mio caso d’uso è forse un post a settimana per “escalation” tramite email di notifica.

Sembra simile alla discussione precedente sugli argomenti ricategorizzati:
(Modifica: che già conosci, scusa.)

…che è stato affrontato da FIX: Notifica mancante per gli utenti che seguono il primo post quando l’argomento viene ricategorizzato · discourse/discourse@147ea37 · GitHub

Sto solo cercando di usare un tag invece di avere due categorie per argomenti simili. (Appartengono insieme, ma alcuni, dopo la pubblicazione, sono ritenuti degni di essere inviati ai nostri utenti silenziosi, a volte solo via email.)

1 Mi Piace

Solo per curiosità/confronto, sto testando il comportamento ‘watch first post in category, e non notifica alla ricategorizzazione.

La mia email time window mins è 10, e lascio 15 minuti tra i passaggi.
L’ho ripetuto diverse volte ora…

  • Crea un nuovo argomento nella categoria sandbox non osservata. Attendi 15 minuti.
  • Sposta l’argomento in una categoria che un utente sta Osservando: attiva notifiche immediate, invia email 10 minuti dopo.

  • Crea un altro nuovo argomento nella categoria sandbox non osservata. Attendi 15 minuti.
  • Sposta l’argomento in una categoria in cui un utente sta ‘Osservando il primo post’: non fa nulla, mai.

(Installazione standard self-hosted, 3.4.0.beta2-dev (0c019b2e45), tests-passed.)

Forse è qualcosa nel mio processo, ma non riesco a immaginare cosa. È possibile che la funzionalità che è stata risolta nel 2018 sia diventata irrisolta?

1 Mi Piace

È molto possibile, quest’area dell’app è particolarmente complessa.

La notifica sulla ri-etichettatura / ri-categorizzazione necessita di molte protezioni.

  • Dovremmo notificare su un argomento vecchio di 8 anni?
  • Dovremmo inviare 50 notifiche in una volta? Nell’arco di 1 ora?

Dobbiamo iniziare scoprendo quale sia il comportamento desiderato e quali dovrebbero essere le protezioni.

Per quanto ne so, l’aggiunta di un tag a un argomento esistente dovrebbe inviare una notifica a chiunque stia seguendo il primo post per quel tag.

L’ho appena testato sul mio sito di prova (3108e3a6b6) e sembra ancora funzionare correttamente.

Solo per verificare, hai modificato l’impostazione di amministrazione disable tags edit notifications in qualche momento? (E disable category edit notifications per la versione della categoria).

4 Mi Piace

O.
M.
G.
Mi nasconderò sotto un sasso.

Avevo dimenticato che quelle impostazioni esistessero. Immagino che quando le ho disabilitate stessi pensando solo a notifiche come “un amministratore ha aggiunto un tag o modificato la categoria del tuo argomento” – non ad azioni come le notifiche di Watching o WFP.

Penso che potrebbero esserci ancora delle incongruenze, poiché Watching una categoria sembrava sovrascrivere disable category edit modifications, mentre WFP no. Come penitenza, testerò più a fondo e seguirò con un paio di altre persone che ho contattato sull’argomento.

(Inoltre, @sam ha in qualche modo supportato la mia conclusione :sweat_smile:)

Ma grazie @JammyDodger per avermi salvato da altre ore di smanettamento con script rails. Il mio prossimo passo sarebbe stato vendere il mio divano e pagare @pfaffman per aiutarmi.

6 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.