警告 — このトピックは非常に特定のレアなユースケースに限定されたものであり、あなたがやるべきことではない可能性が高いです。推奨される設定については、以下の最初の 2 つのリンクを参照してください。
前提条件
Discourse を使用したチケットシステムのセットアップ方法について明確な記事がないかフォーラムを検索したところ、素晴らしいトピックがいくつか見つかりました:
- Configuring incoming email to create new topics or group messages
- Use Discourse as a Private Support/Ticket System
質問
残念ながら、私は一部のメールサーバー機能にあまり慣れておらず、reply+mailbox@server.com や somerandomcode+mailbox@server.com のサポートをどう設定すればよいかわかりません。そもそもこれがどうやって機能するのでしょうか? ![]()
異なるカテゴリに割り当てられた複数のメールをどのように使用すればよいのでしょうか?フォーラムの設定が 1 つのメールアドレスしかサポートしていない場合、どのように機能するのでしょうか?
はい、それは完璧に機能します。前述の 2 つのハウツー記事に基づいて、受信メールの仕組みと適切なフォーラム設定の原則を理解しました。前述の通り、主な点はメールサーバーの転送機能です。
基本的な完全機能メールサーバー
ゼロコストでメールサーバーをセットアップしたい方のために、iRedMail をお勧めします。
メールエイリアス
デフォルトのインストール後、Discourse に接続可能なメールサーバーが準備されます。上記のステップ 1 と 2、および iRedMail でメールエイリアスを使用する方法の次のステップに従ってください。
例えば、master@server.com というメールボックスと 2 つのカテゴリを作成したとします:
feature
feature -> internal [private]
POP ポーリング設定では、メールボックスの認証情報を使用する必要があります。
サーバーのシェルに接続し、postgres ユーザーを使用してデータベースに接続します(私は postgres を使用しています):
ssh login@server.com
sudo su - postgres
psql
次に vmail スキーマに切り替え、2 つのエイリアスを作成します:
postgres=# \c vmail
postgres=# INSERT INTO alias (address, domain, active)
VALUES ('feat@server.com', 'server.com', 1);
postgres=# INSERT INTO alias (address, domain, active)
VALUES ('staff@server.com', 'server.com', 1);
次のステップで転送先を作成します:
postgres=# INSERT INTO forwardings (address, forwarding,
domain, dest_domain,
is_list, active)
VALUES ('feat@server.com', 'master@server.com',
'server.com', 'server.com', 1, 1);
postgres=# INSERT INTO forwardings (address, forwarding,
domain, dest_domain,
is_list, active)
VALUES ('staff@server.com', 'master@server.com',
'server.com', 'server.com', 1, 1);
postgres=# \q または CTRL+D で終了
好きな DB 管理ツールで aliases と forwardings の 2 つのテーブルを確認できます:


active キーに注意してください。これは 1 でなければなりません。
設定の確認
メールエイリアスをカテゴリに割り当て、登録済みのユーザーのメールからメールを送信します。必要に応じて、以下の設定で匿名メールの送信とステージングユーザーの自動作成を許可できます:
- 匿名ユーザーからのメールを受け入れる(オプション、カテゴリ設定)
- ステージングユーザーを有効にする(true の場合、
approve unless stagedもチェックしてください) - POP3 ポーリング有効 = true
- POP3 ポーリングホスト(あなたのホストの FQDN)
- POP3 ポーリングポート(通常 995)
- POP3 ポーリングユーザー名(
master@server.com) - POP3 ポーリングパスワード
- サーバーから削除(オプション、元のメッセージをメールクライアントに残すために無効のままにしています)
- メール処理の失敗をログ記録(オプション、すべてのイベントを「Emails」タブで監視できるため)
- 受信メール有効 = true
- 受信メールの最小信頼レベル(フォーラム起動直後は 0 を使用し、
clean up inactive users after daysもチェックしてください) - メールプレフィックス(オプション、サイトタイトルが大文字の場合、自動返信にスパムスコアが追加される可能性があります)
- 転送されたメールを有効にする(オプション、2.4.0beta2 ではまだ BETA で、場合によってはメール本文が見つからないことがあります)
受信メールの確認
エイリアスにメールを送信し、以下を確認してください:
/admin/email/received
/admin/email/rejected
これで、master@server.com、feat@server.com、staff@server.com のいずれに送られたメールも、1 つのメールボックス master@server.com に格納されます。違いは、feat@ に送られたメールは feature カテゴリで処理され、staff@ に送られたメールは internal カテゴリで処理される点です。
新しいトピックが出現したことを確認してください! ![]()
補足メモ
- 主要なメール
master@をパブリックまたはプライベートカテゴリに割り当てても、すべてのメールは正しく処理されます(重複なし、プライバシー漏れなし) min topic title length(トピックタイトルの最小長)の設定は、メール件名の長さには影響しません。
