Situación
reply_by_email_enableddesactivado, no queremos que la gente responda por correo electrónico- una categoría solo para administradores para notificaciones de un sistema externo
- la categoría tiene una dirección de correo electrónico configurada
email_inestá habilitado- se envían correos electrónicos a la dirección de correo electrónico de la categoría
- los correos electrónicos están rebotando con
BadDestinationAddress
La causa
Después de una hora de depuración, encontré el siguiente commit de GitHub: FIX: Disallow replies to categories when reply by email disabled (#33… · discourse/discourse@e05ef50 · GitHub
ARREGLO: Deshabilitar respuestas a categorías cuando la respuesta por correo electrónico está deshabilitada (#33641)
Cuando la configuración
reply_by_email_enabledse establece enfalse, ya no incluimos un enlace de respuesta en las notificaciones por correo electrónico. Sin embargo, no impedimos los correos electrónicos reales a una direcciónemail_inconfigurada asociada con una categoría. Este cambio tiene en consideración la configuración enEmail::Receiver#check_address.
y el código afectado ya no devolverá una categoría si reply_by_email_enabled no está habilitado.
def self.check_address(address, include_verp = false)
# solo verificar grupo/categoría cuando 'email_in' está habilitado
if SiteSetting.email_in
group = Group.find_by_email(address)
return group if group
category = Category.find_by_email(address)
return category if category && SiteSetting.reply_by_email_enabled? # <-- añadido
end
¿Por qué? 
Tengo muchas preguntas:
- ¿Por qué este cambio? ¿En absoluto? Solo hace que el sistema sea más inflexible. Si no quiero que la gente envíe correos electrónicos a una categoría, ¿simplemente eliminaría la dirección de correo electrónico de la categoría?
- ¿Por qué está implementado de esta manera?
- ¿aparentemente la entrada de correo electrónico a los grupos no es un problema?
- si
reply_by_email_enabledes falso, ¿no hay necesidad de iterar a través de las categorías? - al eliminar la categoría de la lista de categorías, el error se convierte en
BadDestinationAddress, lo cual es MUY incorrecto y REALMENTE difícil de depurar
- La configuración de la que ahora depende repentinamente se llama respuesta por correo electrónico. Eso no es lo que estoy haciendo.
Además de la forma en que se implementó, sinceramente no veo el sentido.
No puedo pensar en NINGUNA situación en la que simplemente eliminar la dirección de correo electrónico de la categoría haría el trabajo si uno quiere evitar que la gente envíe correos electrónicos a una categoría. Y la implicación de esto es que ahora se ha vuelto imposible tener una categoría que reciba correos electrónicos sin habilitar la respuesta por correo electrónico en todo el sitio.
Si hay una razón realmente buena que me estoy perdiendo, no duden en recategorizar como Feature