Quando invio una risposta troppo breve, come “testing reply by e-mail”, ricevo un’email di ritorno:
Ci dispiace, ma il tuo messaggio email a [“discoursereplies+redacted.org”] (intitolato Re: titolo del thread del forum) non è andato a buon fine.
Utilizzi più di un indirizzo email? Hai risposto da un indirizzo email diverso? Le risposte via email richiedono che tu utilizzi lo stesso indirizzo email quando rispondi. In alternativa, l’intestazione Message-ID nell’email potrebbe essere stata modificata.
Ma una risposta più lunga, con più righe e più frasi, viene accettata.
Il messaggio di errore è quindi errato.
Potreste fornire un messaggio di errore più chiaro in questo caso?
È possibile configurare la lunghezza minima del messaggio? Esiste un’impostazione diversa per le risposte nei forum rispetto a quelle via email?
Non riesco immediatamente a riprodurre il problema.
Ho eseguito dei test su https://try.discourse.org, dove l’impostazione del sito min post length è impostata sul valore predefinito di 20.
Ho creato un nuovo argomento con l’utente A, quindi ho risposto con l’utente B. L’utente A ha ricevuto un’email e ho inviato una risposta di una sola parola “Test” via email:
@adrelanos, sei in grado di fornire ulteriori passaggi per la riproduzione? È possibile che il messaggio che hai ricevuto fosse valido in qualche modo? Puoi anche confermare di utilizzare l’ultima versione di Discourse?
Non posso dire con certezza che farà la differenza, ma c’è sempre la possibilità che ci fosse un bug nella versione stabile che è stato corretto e non è stato retroportato. Se possibile, ti suggerirei di aggiornare almeno all’ultima versione beta e riprovare.
Oltre a questo, ci sono queste domande:
Poiché non riesco a riprodurre il problema eseguendo uno scenario normale, mi serviranno un po’ più di informazioni.
Immagino che tu sia sulla versione 2.7. Aspetterò che 2.7 venga migrato al ramo stabile e farò rapporto.
Sei in grado di fornire ulteriori passaggi per la riproduzione?
min post length è impostato su 2.
delete rejected email after days è ancora il valore predefinito 90.
Rispondere “OK” a un messaggio mio ora funziona.
Rispondendo “OK” a un messaggio di un altro utente, ora lo ricevo.
Ci dispiace, ma il tuo messaggio email a [“discoursereplies+redacted@redacted.redacted”] (intitolato Re: [redacted] [redacted] redacted) non ha funzionato.
Accettiamo solo le risposte alle notifiche originali per 90 giorni. Ti invitiamo a visitare l’argomento per continuare la conversazione.
Ma il messaggio era vecchio solo di circa 5 minuti.
Rispondendo via email a un post di un altro utente con il testo “This is a longer test reply by e-mail. Please ignore.” non succede nulla, non appare nulla nemmeno nel registro. Non ho ricevuto nemmeno un’email di rifiuto.
È possibile che il messaggio che hai ricevuto fosse in qualche modo valido?
Questo implica che ci sia qualcosa di sbagliato nell’orologio del server o nell’installazione?
Non credo. Ho appena controllato. L’ora del computer locale e quella del server avevano la stessa data, ora e minuto in UTC. Quasi lo stesso secondo (difficile da misurare via SSH).
Si tratta di un’installazione standard predefinita?
Sì. Metodo di installazione Docker. Non volevo discostarmi dalle raccomandazioni.
Il problema nel post originale (OP) è che hai inviato una risposta troppo breve e hai ricevuto la risposta di errore “indirizzo di destinazione errato” invece di quella “posta troppo breve”. Quanto segue non potrebbe essere vero:
Usi più di un indirizzo email? Hai risposto da un indirizzo email diverso? Le risposte via email richiedono che tu utilizzi lo stesso indirizzo email quando rispondi. In alternativa, l’intestazione Message-ID nell’email potrebbe essere stata modificata.
In un altro esempio, hai inviato una risposta a un utente troppo breve e hai ricevuto la risposta di errore “destinazione vecchia”: “Accettiamo solo risposte alle notifiche originali per 90 giorni. Per continuare la conversazione, visita l’argomento”. Anche questo non potrebbe essere vero, dato che il post a cui stavi rispondendo aveva solo 5 minuti.
In entrambi i casi in cui la tua risposta era troppo breve, è stato inviato il messaggio di errore sbagliato. Sembra accurato?
Questo sembra ottimo! Sarei molto curioso di vedere se un aggiornamento chiarirà le cose. Faccelo sapere se non funziona.
Non ricevo più questo messaggio in 2.7.3, ma ora invece lo ricevo.
Utilizzi più di un indirizzo email? Hai risposto da un indirizzo email diverso? Le risposte via email richiedono che tu utilizzi lo stesso indirizzo email quando rispondi. In alternativa, l’intestazione Message-ID nell’email potrebbe essere stata modificata.
Sembra accadere se sono state effettuate altre risposte dopo il post a cui sto rispondendo.
Poiché sembra difficile da debuggare (errore dell’utente, risposta a From invece che a Reply-To - no, non l’ho fatto in questo caso / il server di posta sta causando problemi e/o bug di Discourse), ho proposto la seguente richiesta di funzionalità per facilitare il debug: Reply with debug info to rejected e-mails
Questo significa che stai attivando uno degli altri controlli per i messaggi brevi, come body min entropy, che serve a bloccare post come AAAAAAAAAAAAAAAAAAAAAAAAAAAA e non ha un messaggio di errore personalizzato.
Non è sempre riproducibile. Userò molto la risposta via e-mail d’ora in poi e spero di poter fornire istruzioni riproducibili in seguito.
Potrebbe essere che siano necessarie più risposte per far rifiutare l’e-mail. Oppure dipende dal tempo. I messaggi più vecchi hanno più probabilità di essere rifiutati, tuttavia disallow reply by email after days è già impostato su 0.