To be able to sort automatically notification emails sent by Discourse, it would be great if they could have customs headers (or a subject tag) based on the message’s content/content:
For example, here is a list of headers Bugzilla sends with each notification email:
X-Bugzilla-Reason: CC AssignedTo
X-Bugzilla-Type: dep_changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Classification: Other
X-Bugzilla-ID: 1014331
X-Bugzilla-Product: mozilla.org
X-Bugzilla-Component: Server Operations
X-Bugzilla-Version: other
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: foobar@email.com
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Resolution: FIXED
X-Bugzilla-Priority: –
X-Bugzilla-Assigned-To: email@email.com
X-Bugzilla-Target-Milestone: —
X-Bugzilla-Flags:
X-Bugzilla-OS: Linux
X-Bugzilla-Changed-Fields: Status Resolution
X-Bugzilla-Changed-Field-Names: bug_status resolution
FYI, there is now a category-specific List-Id header sent along with unsubscribe headers, and the ability to add your own generic headers for all notifications with the email custom headers site setting.
Для тех, кто интересуется, как настроить пользовательский заголовок электронной почты, вот инструкция.
Перейдите в Панель настроек >> Электронная почта или воспользуйтесь ссылкой ниже: https://forums.example.com/admin/site_settings/category/email — замените доменное имя на свой собственный.
Найдите параметр email custom headers и задайте свои значения. Всё готово!
Я не вижу в коде места, где что-то вроде %{optional_tags} подставлялось бы в заголовок, добавленный в настройку сайта «email custom headers». То, что я нахожу, — это метод, используемый для установки значения пользовательских заголовков:
Он вызывается из:
Я постараюсь получить у команды Discourse больше деталей о том, как предполагается использовать эту настройку и какие значения могут подставляться в пользовательские заголовки.
Здесь есть некоторая сложность с шаблонами по сравнению с настройкой email_subject, которую я до конца не понимаю — похоже, что последняя не используется, если есть шаблон, но я не уверен, когда шаблона нет! Но aside от этого, главное в том, что если бы функция, создающая пользовательские заголовки, использовала тот же шаблон, это сработало бы, и пользовательские заголовки могли бы содержать полезную динамическую информацию.