説明

メールサーバー、電子メール配信方法、およびプログラム

【課題】 電子メールの重複配信の弊害を有効に解消することのできるメールサーバーを提供する。
【解決手段】 メール受信部21は、アカウントを有するコンピュータ宛の電子メールを受信する。比較部22は、メール受信部21にて受信された電子メールと重複する電子メールがメールボックス13Aに格納されているか否か判定する。格納処理部23は、メール受信部21にて受信された電子メールと重複する電子メールがメールボックス13Aに格納されていると比較部22にて判定されると、一方の電子メールをファイル化して他方の電子メールに添付し、メールボックス13Aに格納する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子メールを配信するサーバーの動作に関する。
【背景技術】
【0002】
宛先を指定することによりコンピュータ間で電子メールを送受信することができる。宛先の指定方法として、「To」を使った通常の宛先アドレスの指定方法の他、カーボンコピー「CC」を使った方法や、ブラインドカーボンコピー「BCC」を使った方法などがある。また、複数の宛先を効率良く指定する方法としてメーリングリストを使った方法がある。ユーザーは、これら様々な方法を使い分けまたは併用している。
【0003】
また、電子メールに本文として用件内容を記入するものの他、電子メールにファイルを添付することもできる。添付ファイルを利用すれば大容量データを容易に電子メールとして送ることができる。
【0004】
図8は、従来の一般的な電子メールが送られる仕組みを示す図である。図8を参照すると、Aさんのコンピュータ91からBさんのコンピュータ94へ電子メール95が送られる様子が示されている。その際、Toの宛先にはBさんを指定し、CCの宛先にはメーリングリストが指定されている。
【0005】
Aさんは、電子メール95を作成し、自分が属しているメールサーバー92へ送信する。メールサーバー92は、MTA(Mail Transfer Agent)転送サーバーである。この電子メール95には、差出人としてAさんのアドレス(a#san@a#corporation.co.jp)が、Toの宛先としてBさんのアドレス(b#san@b#corporation.co.jp)が、CCの宛先としてメーリングリストのアドレス(group@b#corporation.co.jp)が記入されている。このメーリングリストにはBさんが登録されているものとする。
【0006】
メールサーバー92は、電子メール95をメールキュー92Aに一旦蓄積した後、Toの宛先アドレスのドメイン名(b#corporation.co.jp)と、CCのアドレスのドメイン名(b#corporation.co.jp)に基づき、メールサーバー93へ転送する。メールサーバー93は、ドメイン名(b#corporation.co.jp)のMDA(Mail Delivery Agent)配信サーバーである。
【0007】
メールサーバー93は、電子メール95を受信すると、Toの宛先アドレス(b#san@b#corporation.co.jp)に基づき、Bさんのメールボックス93Aに配信する。また、メールサーバー93は、CCのアドレスがメーリングリストであると判断し、メーリングリストに登録されているメンバーへ配信する。Bさんはこのメーリングリストに登録されているので、電子メール95はBさんのメールボックス93Aに再び配信される。
【0008】
Bさんは、MUA(Mail User Agent)ユーザーである。Bさんのコンピュータ94は、Bさん自分のメールボックス93Aから電子メール95を読み込む。その際、電子メール95は、メールボックス93Aに2回配信されているので、コンピュータ94には電子メール95が2回読み込まれることとなる。
【0009】
上述したようにメーリングリストが利用されることで、同じ内容の電子メールが異なるルートから同じコンピュータに複数回届くことがある。その場合、ユーザーは同じ電子メールを複数回読んで確認する必要があり、作業が煩雑である。また、電子メールにファイルが添付されている場合、データ量が大きく、コンピュータのメモリの消費量が大きくなるだけでなく、電子メールの受信にかかる時間も長くなってしまう。このような同じ内容の電子メールの重複配信はメーリングリストの他、転送メールの利用によっても生じうる。
【0010】
重複配信の弊害を解決するために、電子メールを受信したコンピュータがメールの本文を比較し、重複配信された電子メールの削除を行う技術が特許文献1に開示されている。
【特許文献1】特開平10−222438号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
電子メールを受信したコンピュータが本文を比較するという、特許文献1に開示されているような従来の方法では、メールサーバーからの同じ内容の電子メールを受信するという問題は解決されず、依然として、重複して時間がかかってしまう。添付ファイルがある場合には、その時間の影響は大きなものとなってしまう。
【0012】
本発明の目的は、電子メールの重複配信の弊害を有効に解消することのできるメールサーバーを提供することである。
【課題を解決するための手段】
【0013】
上記目的を達成するために、本発明のメールサーバーは、アカウントを有するコンピュータ宛の電子メールを受信してメールボックスに格納するメールサーバーであって、
前記コンピュータ宛の電子メールを受信するメール受信部と、
前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されているか否か判定する比較部と、
前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると前記比較部にて判定されると、一方の電子メールをファイル化して他方の電子メールに添付して前記メールボックスに格納する格納処理部とを有している。
【0014】
本発明では、メールサーバーのメール受信部が電子メールを受信すると、比較部は、受信された電子メールと一致する電子メールがメールボックスに格納されているか否か判定し、同じ電子メールが既にメールボックスに格納されていれば、格納処理部は、一方の電子メールを削除すると共にファイル化して、他方の電子メールに添付してメールボックスに格納するので、重複してメールボックスに格納することがなく、メールサーバーからコンピュータに同じ内容の電子メールが繰り返し読み込まれることがなく、また、同じ内容の電子メールをユーザーが繰り返し確認する必要がない。
【発明の効果】
【0015】
本発明によれば、重複してメールボックスに格納することがなく、メールサーバーからコンピュータに同じ内容の電子メールが繰り返し読み込まれることがなく、また、同じ内容の電子メールをユーザーが繰り返し確認する必要がないので、電子メールの重複配信の弊害を有効に解消することができる。
【発明を実施するための最良の形態】
【0016】
本発明の一実施形態について図面を参照して詳細に説明する。
【0017】
図1は、本実施形態における電子メールが送られる仕組みを示す図である。図1を参照すると、Aさんのコンピュータ11からBさんのコンピュータ14へ電子メール15が送られる様子が示されている。その際、Toの宛先にはBさんを指定し、CCの宛先にはメーリングリストが指定されている。
【0018】
Aさんは、電子メール15を作成し、自分が属しているメールサーバー12へ送信する。メールサーバー12は、MTA(Mail Transfer Agent)転送サーバーである。この電子メール15には、差出人としてAさんのアドレス(a#san@a#corporation.co.jp)が、Toの宛先としてBさんのアドレス(b#san@b#corporation.co.jp)が、CCの宛先としてメーリングリストのアドレス(group@b#corporation.co.jp)が記入されている。このメーリングリストにはBさんが登録されているものとする。
【0019】
メールサーバー12は、電子メール15をメールキュー12Aに一旦蓄積した後、Toの宛先アドレスのドメイン名(b#corporation.co.jp)と、CCのアドレスのドメイン名(b#corporation.co.jp)に基づき、メールサーバー13へ転送する。
【0020】
メールサーバー13は、ドメイン名(b#corporation.co.jp)のMDA(Mail Delivery Agent)配信サーバーである。また、本実施形態では、メールサーバー13は、同じメールボックスへ配信すべき同じの電子メールを複数回繰り返して受信すると、一方の電子メールおよびそれに添付されているファイルを削除し、削除した電子メールの内容を他方の電子メールに添付する機能を有している。削除した電子メールの内容を他方の電子メールに添付するのは、重複する電子メールを削除した旨を宛先のユーザーに知らせるためであり、他方の電子メールの本文に削除した旨を表示する通知情報を追加してもよい。
【0021】
Toの宛先アドレスにより転送されてきた電子メール15と、CCのアドレスにより転送されてきた電子メール15とが同じ電子メールなので、メールサーバー13は、一方を削除し、その内容を他方に添付してBさんのメールボックス13Aに格納する。
【0022】
Bさんは、MUA(Mail User Agent)ユーザーである。Bさんのコンピュータ14は、Bさん自分のメールボックス13Aから電子メール15を読み込む。Bさんのメールボックス13Aには、同じ電子メールが複数回配信されていないので、コンピュータ14は、同じ電子メールを重複して読み込むことがない。また、メールボックス13Aから読み込まれた電子メール15には、メールサーバー13にて添付された内容が含まれているので、Bさんは、電子メール15の内容を確認すれば、ToのアドレスとCCのアドレスにより送信されたことを認識できる。
【0023】
図2は、本実施形態におけるMDA配信サーバーの構成を示すブロック図である。図2を参照すると、メールサーバー13は、メール受信部21、比較部22、格納処理部23、およびメールボックス13Aを有している。
【0024】
メール受信部21は、自身にアカウントを有するコンピュータ宛の電子メールを受信し、比較部22に送る。
【0025】
比較部22は、メール受信部21にて受信された電子メールをメールボックス13Aに格納されている電子メールと比較し、電子メールの一致を検出する。
【0026】
図3は、電子メールの構造を示す図である。図3(a)を参照すると、電子メールのメッセージ31は、ヘッダー部32およびボディ部33を有している。ヘッダー部32にはメッセージID、送信日時、件名、差出人アドレス、宛先アドレスなどが含まれる。ボディ部33には、本文および添付ファイルなどが含まれる。図3(b)には、具体的な電子メールのメッセージの一例が示されている。図3(b)の電子メールでは、ヘッダー部32において、件名(Subject)が「メーリングリストについて」であり、差出人アドレス(From)がa#san@a#corporation.co.jpであり、Toの宛先アドレスがb#san@b#corporation.co.jpであり、CCのアドレスがgroup@b#corporation.co.jpである。ボディ部33には、本文の他に、「添付1」および「添付2」の2つのファイルが添付されている。
【0027】
図4は、電子メールを比較する様子の一例を示す図である。比較部22は、図4に示すように、メール受信部21にて受信された電子メールを、メールボックス13Aに格納されている各電子メールのデータと順次比較する。その際、比較部22は、まず、電子メールのメッセージIDと送信日時を比較し、それらが一致した場合、添付ファイルがあれば、次に添付ファイルを比較する。
【0028】
ファイルの比較には様々な方法が可能である。
【0029】
ファイル比較方法の一例として、1バイト毎に比較し、一致/不一致を調べるバイナリコード比較方法がある。比較すべきファイルが無変換の状態であれば、そのまま1文字毎に比較すればよい。また、ファイルが符号化され、それらの符号化条件が異なる場合には、比較するファイルを復号し、復号された状態で比較すればよい。また、ファイルが符号化され、それらの符号化条件が同じ場合には、符号化された状態で1文字毎に比較すればよい。
【0030】
ファイル比較方法の他の例として、生成多項式を用いた演算結果を比較する方法がある。比較すべきファイルが無変換の状態であれば、そのままのファイルに生成多項式の演算を行い、得られた結果を比較すればよい。また、ファイルが符号化され、それらの符号化条件が異なる場合には、比較するファイルを復号し、復号された状態で生成多項式の演算を行い、得られた結果を比較すればよい。また、ファイルが符号化され、それらの符号化条件が同じ場合には、符号化された状態で生成多項式の演算を行い、得られた結果を比較すればよい。
【0031】
ファイル比較方法のさらに他の例として、ファイル名を比較する方法がある。電子メールの添付ファイルのファイル名は、「Content-Disposition: attachment; filename="ファイル名"」として表示されるので、それを比較すればよい。
【0032】
ファイル比較方法のさらに他の例として、ヘッダーに記述されている添付ファイルの説明の内容を比較する方法がある。添付ファイルの説明は、「Content-Description: <ファイル内容の説明>」として表示されるので、それを比較すればよい。
【0033】
以上の比較により、メッセージIDおよび送信日時が一致し、添付ファイルがあればそれも一致した場合、比較部22は、同じ電子メールであると判断する。
【0034】
格納処理部23は、比較部22にて電子メールの一致が検出された場合、電子メールに添付ファイルがあれば、受信した側の電子メールの添付ファイルを削除して内容のみをファイル化し、メールボックス13Aに格納されている側の電子メールに添付する。また、格納処理部23は、メールボックス13Aに格納されている側の電子メールの本文に、重複する電子メールを削除あるいは添付した旨を表示する通知情報を追加する。
【0035】
図5は、受信した電子メールを、メールボックスに格納されている電子メールに添付する様子の一例を示す図である。ここでは、受信した電子メール15(図5(a)参照)と、メールボックス13Aに格納されていた電子メール15′(図5(b)参照)とが一致したとする。格納処理部23は、電子メール15の添付ファイル(添付1および添付2)を削除し(図5(c)参照)、電子メール15をファイル化する。そして、格納処理部23は、電子メール15のファイルを、電子メール15′に添付ファイル(同メール(添付))として添付する(図5(d)参照)。さらに、格納処理部23は、重複する電子メールを添付した旨を表示する通知情報(添付通知メッセージ)を追加する。
【0036】
図6は、重複する電子メールが添付された電子メールのデータを示す図である。図6を参照すると、重複する電子メールが添付された電子メールには、もとから添付されていたファイルの他に、新たに追加ファイル(図6中の「追加」)が添付されている。また、重複する電子メールが添付された電子メールには、通知情報(図6中の「添付:メーリングリストについて」)が追加されている。
【0037】
メールボックス13Aは、メールサーバー13にアカウントを有するコンピュータ宛の電子メールを格納する。
【0038】
図7は、本実施形態におけるMDA配信サーバーの動作を示すフローチャートである。図7を参照すると、まず、メールサーバー13は、電子メールを受信すると(ステップ101)、メールボックス13A内に、その電子メールと比較していない電子メールのデータがあるか否か判定する(ステップ102)。
【0039】
メールボックス13A内に未比較の電子メールのデータが無ければ、メールサーバー13は、受信した電子メールをメールボックスル13Aに格納して(ステップ106)、処理を終了する。
【0040】
メールボックス13A内に未比較の電子メールのデータがあれば、メールサーバー13は、受信した電子メールと未比較の電子メールのデータとを比較し(ステップ103)、同じメールであるか否か判定する(ステップ104)。このとき、メールサーバー13は、電子メールのメッセージIDおよび送信日時が一致し、添付ファイルがあればそれも一致した場合に、同じ電子メールと判定する。
【0041】
同じ電子メールと判定されなければ、メールサーバー13は、ステップ102の処理に戻る。同じ電子メールと判定されれば、メールサーバー13は、受信された電子メールをファイル化し、メールボックス13Aに格納されている電子メールに添付する(ステップ105)。
【0042】
以上説明したように、本実施形態では、メールサーバー13のメール受信部21が電子メールを受信すると、比較部22は、受信された電子メールと一致する電子メールがメールボックス13Aに格納されているか否か判定し、同じ電子メールが既にメールボックス13Aに格納されていれば、格納処理部23は、その電子メールを削除すると共に、添付ファイルを除いた電子メールの内容をファイル化して、メールボックス13Aに格納されている電子メールに添付するので、電子メールおよび添付ファイルを重複してメールボックス13Aに格納することがなく、メールサーバー13からコンピュータ14に同じ内容の電子メールが繰り返し読み込まれることがなく、また、同じ内容の電子メールをユーザーが繰り返し確認する必要がなく、電子メールの重複配信の弊害を有効に解消することができる。
【0043】
このように、本実施形態によれば、電子メールおよび添付ファイルを重複してメールボックス13Aに格納することがないので、電子メール格納に要するメモリの消費量を低減することができる。また、メールサーバー13からコンピュータ14に同じ内容の電子メールが繰り返し読み込まれることがないので、電子メールの受信にかかる時間が短縮される。また、同じ内容の電子メールをユーザーが繰り返し確認する必要がないので、ユーザーの利便性が向上する。
【0044】
なお、本実施形態によるメールサーバー13の各部の機能は、図7に示した処理を有するソフトウェアプログラムをコンピュータによって実行することにより実現可能である。
【図面の簡単な説明】
【0045】
【図1】本実施形態における電子メールが送られる仕組みを示す図である。
【図2】本実施形態におけるMDA配信サーバーの構成を示すブロック図である。
【図3】電子メールの構造を示す図である。
【図4】電子メールを比較する様子の一例を示す図である。
【図5】受信した電子メールを、メールボックスに格納されている電子メールに添付する様子の一例を示す図である。
【図6】重複する電子メールが添付された電子メールのデータを示す図である。
【図7】本実施形態におけるMDA配信サーバーの動作を示すフローチャートである。
【図8】従来の一般的な電子メールが送られる仕組みを示す図である。
【符号の説明】
【0046】
11、14 コンピュータ
12、13メールサーバー
12A、13A メールボックス
15、15′ 電子メール
21 メール受信部
22 比較部
23 格納処理部
31 メッセージ
32 ヘッダー部
33 ボディ部
101〜106 ステップ

【特許請求の範囲】
【請求項1】
アカウントを有するコンピュータ宛の電子メールを受信してメールボックスに格納するメールサーバーであって、
前記コンピュータ宛の電子メールを受信するメール受信部と、
前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されているか否か判定する比較部と、
前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると前記比較部にて判定されると、一方の電子メールをファイル化して他方の電子メールに添付して前記メールボックスに格納する格納処理部とを有するメールサーバー。
【請求項2】
前記比較部は、電子メールの重複の判定において、メッセージIDおよび送信日時を比較する、請求項1記載のメールサーバー。
【請求項3】
前記比較部は、電子メールの重複の判定において、前記電子メールにファイルが添付されていれば、さらに前記ファイルを比較する、請求項2記載のメールサーバー。
【請求項4】
前記比較部は、前記ファイルの比較において、各バイトの一致を調べる、請求項3記載のメールサーバー。
【請求項5】
前記比較部は、前記ファイルの比較において、前記ファイルに所定の演算を行って得られた結果の一致を調べる、請求項3記載のメールサーバー。
【請求項6】
前記所定の演算は、生成多項式を用いた演算である、請求項5記載のメールサーバー。
【請求項7】
前記比較部は、比較すべき前記ファイルが互いに異なる符号化条件で符号化されていれば、それぞれの符号化条件で復号してから前記ファイルを比較する、請求項4〜6のいずれか1項に記載のメールサーバー。
【請求項8】
前記比較部は、比較すべき前記ファイルが同じ符号化条件で符号化されていれば、符号化された状態で前記ファイルを比較する、請求項4〜6のいずれか1項に記載のメールサーバー。
【請求項9】
前記格納処理部は、前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると前記比較部にて判定されると、前記一方の電子メールをファイル化するとき、該電子メールに添付されているファイルを削除して前記ファイル化を行う、請求項1〜8のいずれか1項に記載のメールサーバー。
【請求項10】
前記格納処理部は、前記メール受信部にて受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると前記比較部にて判定されると、前記一方の電子メールを削除あるいは添付した旨を表示する通知情報を前記他方の電子メールに追加する、請求項1〜9のいずれか1項に記載のメールサーバー。
【請求項11】
メールサーバーにおいて、アカウントを有するコンピュータ宛の電子メールを受信して、電子メールを配信するためのメールボックスに格納するための電子メール配信方法であって、
前記コンピュータ宛の電子メールを受信するステップと、
受信された前記電子メールと重複する電子メールが前記メールボックスに格納されているか否か判定するステップと、
受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると判定されると、一方の電子メールをファイル化して他方の電子メールに添付して前記メールボックスに格納するステップとを有する電子メール配信方法。
【請求項12】
電子メールの重複の判定において、メッセージIDおよび送信日時を比較する、請求項11記載の電子メール配信方法。
【請求項13】
電子メールの重複の判定において、前記電子メールにファイルが添付されていれば、さらに前記ファイルを比較する、請求項12記載の電子メール配信方法。
【請求項14】
前記ファイルの比較において、各バイトの一致を調べる、請求項13記載の電子メール配信方法。
【請求項15】
前記ファイルの比較において、前記ファイルに所定の演算を行って得られた結果の一致を調べる、請求項13記載の電子メール配信方法。
【請求項16】
前記所定の演算は、生成多項式を用いた演算である、請求項15記載の電子メール配信方法。
【請求項17】
比較すべき前記ファイルが互いに異なる符号化条件で符号化されていれば、それぞれの符号化条件で復号してから前記ファイルを比較する、請求項14〜16のいずれか1項に記載の電子メール配信方法。
【請求項18】
比較すべき前記ファイルが同じ符号化条件で符号化されていれば、符号化された状態で前記ファイルを比較する、請求項14〜16のいずれか1項に記載の電子メール配信方法。
【請求項19】
受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると判定されると、前記一方の電子メールをファイル化するとき、該電子メールに添付されているファイルを削除して前記ファイル化を行う、請求項11〜18のいずれか1項に記載の電子メール配信方法。
【請求項20】
受信された前記電子メールと重複する電子メールが前記メールボックスに格納されていると判定されると、前記一方の電子メールを削除あるいは添付した旨を表示する通知情報を前記他方の電子メールに追加する、請求項11〜19のいずれか1項に記載の電子メール配信方法。
【請求項21】
請求項11〜20のいずれか1項に記載の電子メール配信方法における各ステップをコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate