Situação
reply_by_email_enableddesativado, nós não queremos que as pessoas respondam por e-mail- uma categoria apenas para administradores para notificações de um sistema externo
- a categoria tem um endereço de e-mail configurado
email_inestá ativado- e-mails são enviados para o endereço de e-mail da categoria
- e-mails estão retornando com
BadDestinationAddress
A causa
Após uma hora de depuração, encontrei o seguinte commit do Discourse: FIX: Disallow replies to categories when reply by email disabled (#33… · discourse/discourse@e05ef50 · GitHub
FIX: Disallow replies to categories when reply by email disabled (#33641)
Quando a configuração
reply_by_email_enabledé definida comofalse, não incluímos mais um link de resposta nas notificações por e-mail. No entanto, não impedimos e-mails reais para um endereçoemail_inconfigurado associado a uma categoria. Esta alteração leva em consideração a configuração emEmail::Receiver#check_address.
e o código afetado não retornará mais uma categoria se reply_by_email_enabled não estiver ativado.
def self.check_address(address, include_verp = false)
# only check for a group/category when 'email_in' is enabled
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? # <-- added
end
Por quê? 
Eu tenho tantas perguntas:
- por que essa mudança? De jeito nenhum? Isso só torna o sistema mais inflexível. Se eu não quero que as pessoas enviem e-mail para uma categoria, eu simplesmente removeria o endereço de e-mail da categoria?
- por que isso é implementado dessa forma?
- aparentemente, receber e-mail em grupos não é um problema?
- se
reply_by_email_enabledfor falso, não há necessidade de iterar pelas categorias? - ao remover a categoria da lista de categorias, o erro se torna
BadDestinationAddress, o que é MUITO errado e REALMENTE difícil de depurar
- a configuração da qual isso agora depende subitamente se chama responder por e-mail. Isso não é o que estou fazendo.
Além da forma como isso foi implementado, eu honestamente não vejo o sentido.
Eu não consigo pensar em NENHUMA situação em que simplesmente remover o endereço de e-mail da categoria resolveria o problema se alguém quisesse impedir que as pessoas enviassem e-mails para uma categoria. E a implicação disso é que agora se tornou impossível ter uma categoria recebendo e-mails sem ativar a resposta por e-mail em todo o site.
Se houver uma razão muito boa que estou perdendo, sinta-se à vontade para recategorizar como Feature