EBUGでは、IRCとメーリングリスト間でメッセージをやりとりする IRC/SMTPゲートウェイを作成し、相互にメッセージのやり取りを行っています。
| &ref(): File not found: "migw-internal.gif" at page "IRC-SMTPゲートウェイ"; |
migw.pl は、IRCクライアントとして目的のチャンネルにJOINしており、 IRC内での発言を受信します。 受信された発言はメールに変換され、SMTPサーバに渡されます。
一方、メールからIRCへの転送は、メールサーバでの .forward あるいは .procmailrc などの設定により メールのヘッダおよび本文が minjector.pl というプログラムに引き渡されます。
minjector.plは、標準入力からメールのヘッダと本文を読み込み 一定の形式に変換した後、Unixドメインソケットを経由して migw.pl に 引き渡され、最後に IRCネットワークのJOINしているチャンネルで 発言されます。
メールユーザ側ではMLを作成することでメッセージの配信を行うようになっています。
動作のイメージとしては、以下のようになります。
| &ref(): File not found: "migw.gif" at page "IRC-SMTPゲートウェイ"; |
| MLからIRCへの中継 |
| &ref(): File not found: "migw-reply.gif" at page "IRC-SMTPゲートウェイ"; |
| IRCからMLへの中継 |