以下に、開示するメール処理サーバ、制御方法及び制御プログラムの実施例について、図面に基づいて詳細に説明する。なお、本実施例により開示する発明が限定されるものではない。各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
[メール処理サーバの構成]
実施例2に係るメール処理サーバ200について説明する。図2を用いて、実施例2に係るメール処理サーバ200の構成の一例を示す。図2は、実施例2に係るメール処理サーバの構成の一例を示すブロック図である。図2では、説明の便宜上、メール処理サーバ200に加えて、メール処理サーバ200を利用して電子メールを送受信する利用者端末500と、メール処理サーバ200と利用者端末500とが接続されるネットワーク600を示した。
利用者端末500は、ネットワーク600を介してメール処理サーバ200と接続される。利用者端末500は、例えば、携帯電話、PHS(Personal Handyphone System)端末、移動体通信端末、PDA(Personal Digital Assistant)、又は、ラップトップコンピュータなどが該当する。
利用者端末500は、利用者が電子メールを送受信する際に使用される。例えば、利用者端末500は、依頼メールの送信や転送、督促メールの送信などに使用される。図2に示す例では、利用者端末500は複数ある。複数ある利用者端末500は、それぞれ、異なる利用者によって使用される。ただし、本発明はこれに限定されるものではなく、同一の利用者端末500が、複数の異なる利用者によって使用されても良い。ここで、利用者とは、電子メールを利用する者を示す。任意の処理を依頼するメールである依頼メールを送信する利用者を「依頼者」とも称する。
図3を用いて、実施例2における利用者端末500とメール処理サーバ200との関係について簡単に説明する。図3は、実施例2における利用者端末とメール処理サーバとの関係を示す図である。図3の200は、メール処理サーバ200を示す。図3の500a〜500dは、それぞれ、利用者端末500を示す。図3に示すように、利用者端末500a〜500dは、同一のメール処理サーバ200を用いて、電子メールを送受信する。
図4を用いて、実施例2における依頼メールの送信先と転送先との一例を示す。図4は、実施例2における依頼メールの送信先と転送先との一例を示す図である。図4の矢印は、メールの発信元と宛先とを示す。矢印の根本が発信元を示し、矢印の先が宛先を示す。宛先とは、例えば、依頼メールを依頼者が送信する場合には依頼メールの送信先が該当する。また、例えば、依頼メールを転送する場合には依頼メールの転送先が該当し、つまり、転送メールの転送先を示す。
また、図4には、実線で記載された矢印と破線で記載された矢印とがある。実線で記載された矢印の先は、主宛先として設定された宛先を示す。主宛先として設定された宛先とは、例えば、TOに設定された送信先や転送先を示す。また、破線で記載された矢印の先は、複写宛先として設定された送信先を示す。複写宛先として設定された宛先とは、例えば、CC(Carbon Copy)やBCC(Blind Carbon Copy)に設定された送信先や転送先を示す。
図4の700、701〜704、711と712、721と722、731と732、741〜743は、それぞれ、利用者を示す。700は、依頼メールの発信元であり、依頼者を示す。図4に示す例では、依頼者が、利用者701〜704をTOに設定した上で依頼メールを送信した場合を示した。また、図4に示す例では、利用者701は、依頼者700から受信した依頼メールを転送する際に、利用者711をTOに設定し、利用者712をCCに設定した場合を示した。
また、図4に示す例では、利用者702は、依頼者700から受信した依頼メールを、利用者721をTOに設定した上で転送した場合を示した。その後、利用者721は、利用者702から転送された依頼メールを転送する際に、利用者722をTOに設定した場合を示した。
また、図4に示す例では、利用者703は、依頼者700から受信した依頼メールを転送する際に、利用者731と732とをTOに設定した場合を示した。また、図4に示す例では、利用者704は、依頼者700から受信した依頼メールを転送する際に、利用者742をTOに設定し、利用者741をCCに設定した場合を示した。その後、利用者741は、利用者704から転送された依頼メールを転送する際に、利用者743をTOに設定した場合を示した。以下では、図4に示すように依頼メールが転送された場合を例に説明するが、本発明はこれに限定されるものではない。
ここで、利用者端末500によって送信された電子メールや転送された電子メールが宛先に届くまでのルートについて簡単に説明する。利用者端末500は、電子メールを送信したり転送したりする場合には、メール処理サーバ200に電子メールを送る。その後、メール処理サーバ200は、利用者端末500から受信した電子メールを宛先となる利用者端末500に送信する。
以下では、利用者700、701〜704、711と712は、それぞれ、メールアドレス「700@fjcl.com」〜「704@fjcl.com」「711@fjcl.com」〜「712@fjcl.com」を有する場合を用いて説明する。また、利用者721と722、731と732、741〜743は、それぞれ、メールアドレス「721@fjcl.com」〜「722@fjcl.com」、「731@fjcl.com」〜「732@fjcl.com」「741@fjcl.com」〜「743@fjcl.com」を有する場合を用いて説明する。
メール処理サーバ200の説明に戻る。メール処理サーバ200は、図2に示す例では、受信部201と、送信部202と、記憶部300と、制御部400とを有する。受信部201は、制御部400と接続される。受信部201は、電子メールを受信する。具体的には、受信部201は、利用者端末500からの依頼メールや督促メールを受信する。また、受信部201は、受信した電子メールを制御部400に送る。送信部202は、制御部400と接続される。送信部202は、制御部400から送られた電子メールを電子メールの宛先となる利用者端末500に送信する。
記憶部300は、制御部400と接続される。記憶部300は、制御部400による各種処理に用いるデータを記憶する。記憶部300は、例えば、RAM(Random Access Memory)やROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、又は、ハードディスクや光ディスクなどの記憶装置である。記憶部300は、図2に示す例では、依頼テーブル301と、履歴テーブル302とを有する。
依頼テーブル301は、依頼メールを一意に識別する依頼メールID(Identification)ごとに、依頼者を識別する情報を記憶する。図5を用いて、依頼テーブル301に記憶された情報の一例を示す。図5は、実施例2における依頼テーブルに記憶された情報の一例を示す図である。
図5に示す例では、依頼テーブル301は、「依頼メールID」に対応付けて、「依頼者識別情報」と「依頼日付」と「期限」と「発信済みフラグ」と「タイトル」とを記憶する。「依頼者識別情報」は、依頼者を識別する情報を示す。図5に示す例では、依頼テーブル301が、「依頼者識別情報」としてメールアドレスを記憶する場合を例に示した。「依頼日付」は、依頼者によって任意の処理が依頼された日付を示す。以下では、依頼日付として、依頼メールが送信された日付を用いる場合を例に説明する。ただし、本発明はこれに限定されるものではなく、依頼日付として、例えば、メール処理サーバ200が依頼メールを受信した日時を用いても良い。「期限」は、依頼メールにより依頼された任意の処理の処理期限を示す。「発信済みフラグ」は、後述するように、制御部400によって警告メールが送信されたか否かを示す。発信済みフラグ「1」は、制御部400によって生成された警告メールが既に送信されたことを示し、発信済みフラグ「0」は、制御部400によって生成された警告督促メールが送信されていないことを示す。「タイトル」は、依頼メールのタイトルを示す。警告メールについては後述する。
図5に示す例では、依頼テーブル301は、依頼メールID「100」に対応付けて、依頼者識別情報「700@fjcl.com」と依頼日付「2009/11/1」と期限「2009/12/15」と発信済みフラグ「0」とタイトル「○○アンケート[依頼]」とを記憶する。つまり、図5に示す例では、依頼テーブル301は、依頼メールID「100」により一意に識別される依頼メールが、メールアドレス「700@fjcl.com」を有する依頼者によって送信されたことを記憶する。また、依頼テーブル301は、依頼メールID「100」により識別される依頼メールが、依頼者によって「2009/11/1」に送信され、依頼メールにより依頼された任意の処理の処理期限が「2009/12/15」であることを記憶する。また、依頼テーブル301は、依頼メールID「100」により識別される依頼メールのタイトルが、「○○アンケート[依頼]」であることを記憶する。
依頼テーブル301は、後述するように、依頼者によって送信された依頼メールをメール処理サーバ200が受信するごとに、制御部400によって情報が格納される。依頼テーブル301に情報を格納する処理の詳細については後述するため、ここでは説明を省略する。
履歴テーブル302は、依頼メールIDに対応付けて、転送メールの転送先を記憶する。つまり、履歴テーブル302は、依頼メールIDに対応付けて依頼メールの転送先を記憶する。図6を用いて、履歴テーブル302に記憶された情報の一例を示す。図6は、実施例2における履歴テーブルに記憶された情報の一例を示す図である。図6に示す例では、履歴テーブル302は、依頼メールIDに対応付けて、「転送日」と「転送元識別情報」と「直前転送元識別情報」と「最終転送先識別情報」とを記憶する。「転送元識別情報」は、依頼者が依頼メールを送信した送信先であって、依頼者から受信した依頼メールを転送した利用者を識別する情報を示す。「最終転送先識別情報」は、転送メールの転送先となった利用者であって、依頼メールを転送していない利用者を識別する情報を示す。「直前転送元識別情報」は、最終転送先となる利用者に依頼メールを転送した利用者を識別する情報を示す。「転送日」は、直前転送元識別情報によって識別される利用者により依頼メールが転送された日付を示す。図6に示す例では、履歴テーブル302が、「転送元識別情報」と「直前転送元識別情報」と「最終転送先識別情報」として、メールアドレスを記憶する場合を例に示した。
図6に示す例では、履歴テーブル302は、依頼メールID「100」に対応付けて、転送日「2009/11/15」と転送元識別情報「701@fjcl.com」と直前転送元識別情報「701@fjcl.com」と最終転送先識別情報「711@fjcl.com」とを記憶する。つまり、履歴テーブル302は、依頼メールID「100」により識別される依頼メールが、依頼者によって利用者701に送信され、利用者701によって依頼メールが転送されたことを記憶する。また、履歴テーブル302は、依頼メールID「100」により識別される依頼メールが、利用者701が利用者711に依頼メールを転送したことを記憶する。
ここで、履歴テーブル302は、後述するように、依頼メールを転送する電子メールをメール処理サーバ200が受信するごとに、制御部400によって情報が格納されたり更新されたりする。履歴テーブル302に情報を格納する処理の詳細については後述するため、ここでは説明を省略する。
制御部400は、受信部201、送信部202及び記憶部300と接続される。制御部400は、各種の処理手順などを規定したプログラムを記憶する内部メモリを有し、種々の処理を制御する。制御部400は、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、CPU(Central Processing Unit)、MPU(Micro Processing Unit)などの電子回路である。制御部400は、図2に示す例では、依頼テーブル作成処理部401と、転送先格納部402と、督促メール送信処理部403とを有する。
依頼テーブル作成処理部401は、受信部201が電子メールを受信すると、依頼メールIDが記載された電子メールか否かを判定する。例えば、依頼テーブル作成処理部401は、依頼テーブル301に記憶された依頼メールIDを読み出し、読み出した依頼メールIDが受信した電子メールに記載されているかを判定する。例えば、依頼テーブル301に依頼メールID「100」「200」「300」が登録済みの場合には、依頼テーブル作成処理部401は、依頼メールID「100」「200」「300」のうちいずれかが記載されているか否かを判定する。
依頼テーブル作成処理部401は、依頼メールIDが記載された電子メールでないと判定した場合に、受信したメールが新規の依頼メールか否かを判定する。例えば、依頼テーブル作成処理部401は、所定のキーワードが電子メールに含まれるか否かを判定することで、新規の依頼メールか否かを判定する。より詳細な一例をあげて説明すると、依頼テーブル作成処理部401は、電子メールのタイトルに「依頼」が含まれるか否かを識別する。ここで、依頼テーブル作成処理部401は、タイトルに「依頼」が含まれる電子メールを新規の依頼メールであると判定し、タイトルに「依頼」が含まれない電子メールを依頼メールでないと判定する。
依頼テーブル作成処理部401は、新規の依頼メールであると判定した電子メールから処理期限を取得する。例えば、依頼テーブル作成処理部401は、依頼メールのメール本文から、期限を示す語句を検索し、検索結果として得られた語句以降に出現した日付のうち最も未来を示す日付を取得することで、処理期限を取得する。より詳細な一例をあげて説明すると、依頼テーブル作成処理部401は、メール本文から「期限」や「納期」などの語句を検索する。そして、依頼テーブル作成処理部401は、検索結果として得られた語句以降に出現する日付を処理期限として取得する。日付は、例えば、「○○年○月○日」や「YYYY/MM/DD」などの書式で記載される。「○」や「Y」、「M」、「D」には、数字が記載される。
依頼テーブル作成処理部401は、新規の依頼メールであると判定した電子メールに対して、他の依頼メールから一意に識別する任意の依頼メールIDを付与する。そして、依頼テーブル作成処理部401は、付与した依頼メールIDに対応付けて、送信元や処理期限を依頼テーブル301に格納する。つまり、例えば、依頼テーブル作成処理部401は、付与した依頼メールIDに対応付けて、新規の依頼メールの送信元となる利用者を識別する識別情報を「依頼者識別情報」に格納する。
例えば、メール処理サーバ200が受信した電子メールのタイトルが「○○アンケート[依頼]」であり、メールの送信元が利用者700であり、メール本文に「期限 2009/12/15」が記載されていた場合を用いて説明する。また、メール処理サーバ200が受信した電子メールの送信日が、「2009/11/1」である場合を用いて説明する。この場合、依頼テーブル作成処理部401は、利用者700から受信した電子メールを新規の依頼メールと判定し、例えば、依頼メールID「100」を付与する。そして、依頼テーブル作成処理部401は、依頼メールID「100」に対応付けて、依頼者識別情報「700@fjcl.com」や処理期限「2009/12/15」を依頼テーブル301に格納する。また、図5に示す例では、依頼テーブル作成処理部401が、依頼者識別情報や処理期限に加えて、「タイトル」や「依頼日付」を格納する場合を示した。つまり、図5に示す例では、依頼テーブル作成処理部401は、依頼メールID「100」に対応付けて、タイトル「○○アンケート[依頼]」を依頼テーブル301に格納し、送信日「2009/11/1」を「依頼日付」として依頼テーブル301に格納する。
依頼テーブル作成処理部401は、依頼メールIDを依頼者に通知する。例えば、依頼テーブル作成処理部401は、依頼メールID「100」をメール本文やタイトルに記載したメールを利用者700に送信する。この結果、依頼者には、送信した電子メールが依頼メールIDを付与された上で管理されることが通知される。また、依頼テーブル作成処理部401は、依頼メールIDを依頼メールの送信先となる利用者にも通知する。具体的には、依頼テーブル作成処理部401は、依頼メールに依頼メールIDを追記した上で送信することで、依頼メールIDを送信先となる利用者にも通知する。例えば、依頼テーブル作成処理部401は、依頼メールID「100」が付与された旨の記載を依頼メールの本文やタイトルに追記した上で、追記後の依頼メールを利用者701〜704に送信する。この結果、利用者701〜704が受信する依頼メールには、依頼メールIDが記載されており、利用者701〜704によって依頼メールが転送される際には、依頼メールIDが記載された依頼メールが転送される。
転送先格納部402は、依頼メールIDが記載された電子メールであると依頼テーブル作成処理部401によって判定された場合に、受信した電子メールが督促メールであるか、又は、依頼メールを転送する電子メールである転送メールであるかを判定する。例えば、依頼テーブル301に記憶された依頼メールIDが記載された電子メールを受信部201が受信した場合に、転送先格納部402は、電子メールの送信元が依頼者であるか否かを識別することで、督促メールであるか転送メールであるかを判定する。つまり、督促メールの送信元は依頼者になる一方、転送メールの送信元が依頼メールを受信した利用者になることを用いて、転送先格納部402は、督促メールであるか転送メールであるかを判定する。
より詳細な一例をあげて説明すると、転送先格納部402は、受信した電子メールに記載された依頼メールIDを検索キーとして依頼テーブル301から依頼者識別情報を読み出し、読み出した依頼者識別情報により識別される依頼者からの電子メールであるかを識別する。ここで、転送先格納部402は、依頼者識別情報により識別される依頼者からの電子メールであると識別すると、督促メールであると判定し、依頼者識別情報により識別される依頼者からの電子メールでないと識別すると、転送メールであると判定する。
受信したメールに記載された依頼メールIDが「100」である場合を用いて説明する。転送先格納部402は、依頼メールID「100」を検索キーとして依頼者識別情報「700@fjcl.com」を読み出す。そして、転送先格納部402は、電子メールの送信元が「700@fjcl.com」であれば督促メールであると判定し、電子メールの送信元が「700@fjcl.com」でなければ転送メールであると判定する。
転送先格納部402は、転送メールであると判定した場合に、転送メールの転送先のうち主宛先として設定された転送先を取得し、取得した転送先を転送メールの転送元に対応付けて履歴テーブル302に格納する。つまり、転送先格納部402は、転送メールを受信部201が受信すると、受信した電子メールの転送元に対応付けて転送先を履歴テーブル302に格納する。具体的には、転送先格納部402は、転送メールの転送元を直前転送元識別情報に格納し、転送メールに主宛先として設定された転送先を最終転送先識別情報に格納する。
例えば、図4や図7の(1)を用いて、転送先格納部402が転送元や転送先を格納する点について説明する。図7は、実施例2における転送先格納部により格納される転送元や転送先の一例を示す図である。利用者701は、依頼メールID「100」が付与された依頼メールを転送する際に、図4に示すように、利用者711の「711@fjcl.com」をTOに設定し、また、利用者712の「712@fjcl.com」をCCに設定した場合を用いて説明する。また、利用者701が転送メールを「2009/11/15」に送信した場合を用いて説明する。
この場合、転送先格納部402は、転送メールの送信元となる利用者701「701@fjcl.com」を取得し、転送メールのTOに設定された「711@fjcl.com」を取得する。そして、転送元「701@fjcl.com」に対応付けて転送先「711@fjcl.com」を履歴テーブル302に格納する。つまり、図7の(1)に示す例では、依頼メールID「100」に対応付けて、履歴テーブル302の直前転送元識別情報に「701@fjcl.com」を格納し、履歴テーブル302の最終転送先識別情報に「711@fjcl.com」を格納する。また、図7の(1)に示す例では、転送先格納部402は、転送元となる「701@fjcl.com」を転送元識別情報に格納し、「2009/11/15」を転送日に格納する。転送元識別情報については後述する。
また、同様に、図4に示すように、利用者702は、依頼メールID「100」が付与された依頼メールを転送する際に、利用者721をTOに設定した場合を用いて説明する。この場合、図7の(1)に示すように、転送先格納部402は、依頼メールID「100」に対応付けて、転送元識別情報「702@fjcl.com」や直前転送元識別情報「702@fjcl.com」を格納する。また、転送先格納部402は、直前転送元識別情報「702@fjcl.com」に対応付けて、最終転送先識別情報「721@fjcl.com」を格納する。
ここで、転送メールに記載された依頼メールIDに対応付けて履歴テーブル302に記憶された最終転送先識別情報と、転送メールの送信元とが一致する場合について説明する。つまり、履歴テーブル302に記憶された最終転送先識別情報によって識別される利用者が、依頼メールを更に転送した場合について説明する。言い換えると、履歴テーブル302に格納された転送先から依頼メールを転送する電子メールを受信部201が受信した場合について説明する。この場合、転送先格納部402は、転送メールの転送先のうち主宛先として設定された転送先を取得し、履歴テーブル302に格納された転送先を取得した転送先に更新する。
具体的には、転送先格納部402は、転送メールの依頼メールIDを検索キーとして履歴テーブル302から最終転送先識別情報を取得し、転送メールの転送元が最終転送先識別情報により識別される利用者と一致するかを判定する。ここで、転送先格納部402は、一致すると判定した場合には、直前転送元識別情報と最終転送先識別情報とを更新する。一方、転送先格納部402は、一致しないと判定した場合には、既に説明したように、履歴テーブル302を更新するのではなく、転送元に対応付けて転送先を履歴テーブル302に新たに格納する。
例えば、図4に示すように、利用者702から依頼メールを受信した利用者721が、「2009/11/30」に、依頼メールID「100」が付与された依頼メールを、利用者722をTOに設定した上で転送した場合を用いて説明する。また、図7の(1)に示すように、履歴テーブル302は、依頼メールID「100」に対応付けて、転送元識別情報「702@fjcl.com」と、直前転送元識別情報「702@fjcl.com」と最終転送先識別情報「721@fjcl.com」が既に格納された場合を用いて説明する。
この場合、転送先格納部402は、依頼メールID「100」を検索キーとして、最終転送先識別情報「711@fjcl.com」「721@fjcl.com」「731@fjcl.com」「732@fjcl.com」「742@fjcl.com」を取得する。そして、転送先格納部402は、転送メールの転送元となる利用者721の「721@fjcl.com」が取得した最終転送先識別情報のいずれかと一致するか否かを判定する。ここで、図7の(1)に示すように、依頼メールID「100」には最終転送先識別情報「721@fjcl.com」が対応付けられており、転送先格納部402は、一致すると判定する。そして、転送先格納部402は、図7の(1)に示したレコードのうち最終転送先識別情報「721@fjcl.com」についてのレコードを更新する。つまり、図7の(2)に示すように、転送先格納部402は、直前転送元識別情報について、更新前の「702@fjcl.com」を受信した転送メールの転送元を識別する「721@fjcl.com」に更新する。また、図7の(2)に示すように、転送先格納部402は、最終転送先識別情報について、更新前の「721@fjcl.com」を受信した転送メールの転送先を識別する「722@fjcl.com」に更新する。また、図7の(2)に示す例では、転送先格納部402は、転送日を「2009/11/30」に更新する場合を示した。
ここで、転送先格納部402が格納する転送元識別情報について説明する。転送元識別情報は、一致しないと転送先格納部402が判定した場合に格納され、一致すると転送先格納部402が判定した場合には更新されない。つまり、一致しないと転送先格納部402が判定した場合に格納された転送元がそのまま維持される。ここで、転送先格納部402が一致しないと判定した場合に格納される転送元は、依頼者によって依頼メールの送信先とされた利用者であって、依頼メールの転送元となる利用者となる。他の利用者から転送された依頼メールを再度転送する利用者であれば、転送先格納部402が一致すると判定するからである。この結果、転送元識別情報は、上述したように、依頼者が依頼メールを送信した送信先であって、依頼者から受信した依頼メールを転送した利用者を識別する情報を示す。
また、転送先格納部402は、転送メールを転送先に転送する。具体的には、転送先格納部402は、転送メールを送信部202に送り、送信部202が転送メールを送信する。例えば、利用者711の「711@fjcl.com」がTOに設定された転送メールであって、利用者712の「712@fjcl.com」がCCに設定された転送メールを転送先格納部402が受信した場合を用いて説明する。この場合、送信部202は、依頼メール転送先となる「711@fjcl.com」や「712@fjcl.com」に依頼メールを送信する。
督促メール送信処理部403は、督促メールを受信部201が受信すると、履歴テーブル302に記憶された転送先を読み出し、読み出した転送先に督促メールを送信する。具体的には、督促メール送信処理部403は、転送先格納部402によって督促メールであると判定された場合に、督促メールに記載された依頼メールIDと督促メールの送信先を取得する。そして、督促メール送信処理部403は、取得した依頼メールIDと送信先との組み合わせを検索キーとして、履歴テーブル302から最終転送先識別情報を取得する。ここで、督促メール送信処理部403は、取得した送信先を転送元識別情報についての検索キーとして検索する。
例えば、依頼者が、依頼メールID「100」についての督促メールを利用者701に対して送信した場合を用いて説明する。この場合、督促メール送信処理部403は、督促メールから、依頼メールID「100」を取得し、送信先を示す識別情報として「701@fjcl.com」を取得する。そして、督促メール送信処理部403は、依頼メールID「100」と転送元識別情報「701@fjcl.com」との組み合わせを検索キーとして、履歴テーブル302から最終転送先識別情報「711@fjcl.com」を取得する。
つまり、督促メール送信処理部403は、依頼者が督促メールを送信した送信先となる利用者に対応付けられた最終転送先識別情報を取得する。最終転送先識別情報により識別される利用者は、依頼メールを他の利用者に転送しておらず、依頼メールに対応する担当者であると考えられる。このため、督促メール送信処理部403は、最終転送先識別情報を取得することで、依頼者が督促メールを送信した送信先に依頼した依頼メールに対応する利用者の識別情報を取得する。
督促メール送信処理部403は、督促メールと同一のメール本文を含むメールを生成し、生成した電子メールの宛先に取得した最終転送先識別情報を設定する。そして、督促メール送信処理部403は、生成したメールを送信部202に送り、送信部202が最終転送先識別情報に対して送信する。すなわち、督促メール送信処理部403は、督促メールと同一内容の電子メールを最終転送先識別情報によって識別される利用者に送信する。言い換えると、督促メール送信処理部403は、担当者に督促メールを送信する。
ここで、督促メール送信処理部403は、督促メールに依頼者によって設定された送信先に対して、督促メールを更に送信しても良い。つまり、例えば、送信部202は、受信部201が受信した督促メールを送信部202に送り、送信部202が、督促メールを利用者701に送信する。
督促メール送信処理部403は、処理期限までの期間が所定値以下になった依頼メールについて、処理期限が近いことを警告する警告メールを生成しても良い。具体的には、督促メール送信処理部403は、依頼テーブル301の期限と発信済みフラグとを参照し、期限までの期間が1週間以下である依頼メールIDであって、警告メールが送信済みでない依頼メールIDを取得する。そして、督促メール送信処理部403は、取得した依頼メールIDに対応付けられた最終転送先識別情報と転送元識別情報とを履歴テーブル302から取得し、取得した最終転送先識別情報と転送元識別情報とを宛先とする警告メールを生成する。そして、督促メール送信処理部403は、生成した警告メールを送信部202に送り、送信部202が警告メールを最終転送先識別情報と転送元識別情報とに送信する。
例えば、現在の日時が「2009/12/10」である場合を用いて説明する。督促メール送信処理部403は、依頼テーブル301から、現在の日時「2009/12/10」から1週間以内に期限が設定された依頼メールIDであって、発信済みフラグ「0」に対応付けられた依頼メールID「100」を取得する。そして、督促メール送信処理部403は、依頼メールID「100」に対応付けられた転送元識別情報「701@fjcl.com」「702@fjcl.com」「703@fjcl.com」「704@fjcl.com」を履歴テーブル302から取得する。また、督促メール送信処理部403は、依頼メールID「100」に対応付けられた最終転送先識別情報「711@fjcl.com」「722@fjcl.com」「731@fjcl.com」「732@fjcl.com」「742@fjcl.com」を取得する。そして、督促メール送信処理部403は、依頼メールID「100」についての依頼について処理期限が1週間をきった旨のメッセージをメール本文とする警告メールを生成し、取得した転送元識別情報や最終転送先識別情報を宛先に設定する。そして、督促メール送信処理部403は、生成した警告メールを送信部202に送り、送信部202が警告メールを送信する。
ただし、督促メール送信処理部403は、既に依頼者によって督促メールが送信された依頼メールIDについては、警告メールを送信しなくても良い。この場合、発信済みフラグは、依頼者によって督促メールが送信されるか警告メールが送信された場合に「1」になり、依頼者によって督促メールが送信されておらず警告メールも送信されていない場合に「0」になる。また、上述した説明では、期限から1週間以内になった依頼メールについて警告メールを送信する場合を例に説明したが、本発明はこれに限定されるものではなく、期限から任意の期間内になった依頼メールIDについて警告メールを送信して良い。例えば、3日以内になった依頼メールIDについて警告メールを送信しても良く、10日以内になった依頼メールIDについて警告メールを送信しても良い。
なお、メール処理サーバ200は、既知のパーソナルコンピュータやワークステーションなどの情報処理装置を利用して実現しても良い。例えば、PDAなどの情報処理装置に、図2に示した依頼テーブル301と、履歴テーブル302と、依頼テーブル作成処理部401と、転送先格納部402と、督促メール送信処理部403との各機能を搭載することによって実現しても良い。
[メール処理サーバによる処理]
次に、図8を用いて、実施例2に係るメール処理サーバによる処理の流れの一例を示す。図8は、実施例2に係るメール処理サーバによる処理の流れの一例を示すフローチャートである。
図8に示すように、メール処理サーバ200では、受信部201が電子メールを受信すると(ステップS101肯定)、依頼テーブル作成処理部401は、依頼メールIDがあるか否かを判定する(ステップS102)。つまり、依頼テーブル作成処理部401は、依頼テーブル301に記憶された依頼メールIDが記載されたメールであるか否かを判定する。
ここで、依頼テーブル作成処理部401は、依頼メールIDが記載された電子メールでないと判定した場合には(ステップS102否定)、新規の依頼メールであるかを判定する(ステップS103)。例えば、依頼テーブル作成処理部401は、メールのタイトルに「依頼」が含まれるか否かを識別し、タイトルに「依頼」が含まれるメールを新規の依頼メールであると判定し、タイトルに「依頼」が含まれないメールを新規の依頼メールでないと判定する。
そして、依頼テーブル作成処理部401は、新規の依頼メールであると判定した場合には(ステップS103肯定)、依頼メールであると判定したメールから処理期限を取得する(ステップS104)。例えば、依頼テーブル作成処理部401は、メール本文から「期限」や「納期」などの語句を検索し、検索結果として得られた語句以降に出現する日付を処理期限として取得する。
そして、依頼テーブル作成処理部401は、依頼メールIDを付与し(ステップS105)、付与した依頼メールIDに対応付けて、依頼メールの送信元を示す識別情報や処理期限を依頼テーブル301に格納する(ステップS106)。例えば、依頼テーブル作成処理部401は、依頼メールID「100」に対応付けて、依頼者識別情報「700@fjcl.com」や処理期限「2009/12/15」を依頼テーブル301に格納する。なお、図5に示す例では、依頼テーブル作成処理部401が、依頼者識別情報や処理期限に加えて、「タイトル」や「送信日」を格納する場合を示した。
そして、依頼テーブル作成処理部401は、依頼メールIDを依頼者に通知する(ステップS107)。例えば、依頼テーブル作成処理部401は、依頼メールID「100」をメール本文に記載したメールを利用者700に送信する。
そして、依頼テーブル作成処理部401は、依頼メールに依頼メールIDを追記した上で送信する(ステップS108)。例えば、依頼テーブル作成処理部401は、依頼メールID「100」が付与された旨の記載を依頼メールの本文やタイトルに追記した上で、追記後の依頼メールを利用者701〜704に送信する。なお、上述したステップS103において、依頼テーブル作成処理部401が、新規の依頼メールでないと判定した場合には(ステップS103否定)、そのまま処理を終了する。
ステップS102に戻り、依頼テーブル作成処理部401が、依頼メールIDが記載されたメールであると判定した場合について説明する(ステップS102肯定)。この場合、転送先格納部402は、督促メールであるか転送メールであるかを判定する(ステップS109)。例えば、転送先格納部402は、受信したメールに含まれる依頼メールIDを検索キーとして依頼テーブル301から依頼者識別情報を読み出し、読み出した依頼者識別情報により識別される依頼者からのメールであるかを識別する。ここで、転送先格納部402は、依頼者識別情報により識別される依頼者からのメールであると識別すると、督促メールであると判定する。一方、転送先格納部402は、依頼者識別情報により識別される依頼者からのメールでないと識別すると、督促メールでないと判定する。つまり、転送先格納部402は、依頼者識別情報により識別される依頼者からのメールでないと識別すると、転送メールであると判定する。
ここで、転送先格納部402は、督促メールでないと判定した場合には(ステップS109否定)、つまり、転送メールであると判定した場合には、主宛先として設定された転送先を取得する。そして、転送先格納部402は、転送メールの転送元に対応付けて取得した転送先を履歴テーブル302に格納し、又は、更新する(ステップS110)。
例えば、利用者701は、依頼メールID「100」が付与された依頼メールを、利用者711の「711@fjcl.com」をTOに設定した上で転送し、また、利用者712の「712@fjcl.com」をCCに設定した上で転送した場合を用いて説明する。この場合、転送先格納部402は、送信元となる利用者701「701@fjcl.com」を取得し、TOに設定された「711@fjcl.com」を取得する。そして、転送先格納部402は、依頼メールID「100」を検索キーとして、最終転送先識別情報を取得し、転送メールの転送元となる利用者721の「721@fjcl.com」が取得した最終転送先識別情報と一致するかを判定する。ここで、転送先格納部402は、一致しないと判定すると、転送先格納部402は、転送元「701@fjcl.com」に対応付けて転送先「712@fjcl.com」を履歴テーブル302に格納する。
また、例えば、利用者701は、利用者702から依頼メールを受信した利用者721が、依頼メールID「100」が付与された依頼メールを、利用者722をTOに設定した上で転送した場合を用いて説明する。また、履歴テーブル302は、依頼メールID「100」に対応付けて、転送元識別情報「702@fjcl.com」と直前転送元識別情報「702@fjcl.com」と最終転送先識別情報「721@fjcl.com」が既に格納された場合を用いて説明する。この場合、転送先格納部402は、依頼メールID「100」を検索キーとして、最終転送先識別情報を取得し、転送メールの転送元となる利用者721の「721@fjcl.com」が取得した最終転送先識別情報と一致するかを判定する。ここで、依頼メールID「100」には最終転送先識別情報「721@fjcl.com」が対応付けられており、転送先格納部402は、一致すると判定する。そして、転送先格納部402は、直前転送元識別情報について、更新前の「702@fjcl.com」を受信した転送メールの転送元を識別する「721@fjcl.com」に更新する。また、転送先格納部402は、最終転送先識別情報について、更新前の「721@fjcl.com」を受信した転送メールの転送先を識別する「722@fjcl.com」に更新する。
そして、転送先格納部402は、転送メールを送信部202に送り、送信部202が転送メールを送信する(ステップS111)。
ステップS109に戻り、転送先格納部402が、督促メールであると判定した場合について説明する(ステップS109肯定)。この場合、督促メール送信処理部403は、履歴テーブル302に記憶された最終転送先を読み出し(ステップS112)、読み出した転送先に督促メールを送信する(ステップS113)。また、転送先格納部402は、督促メールに利用者によって設定された送信先に対して、督促メールを送信しても良い。
例えば、依頼者が、依頼メールID「100」についての督促メールを利用者701に対して送信した場合を用いて説明する。この場合、督促メール送信処理部403は、督促メールから、依頼メールID「100」と送信先を示す識別情報として「701@fjcl.com」を取得する。そして、督促メール送信処理部403は、依頼メールID「100」と転送元識別情報「701@fjcl.com」を検索キーとして、履歴テーブル302から最終転送先識別情報「711@fjcl.com」を取得する。そして、督促メール送信処理部403は、受信した督促メールと同一の内容を有するメールであって宛先に「711@fjcl.com」を設定したメールを生成して送信部202に送り、送信部202が「711@fjcl.com」に対して送信する。
なお、上記の処理手順は、上記の順番に限定されるものではなく、処理内容を矛盾させない範囲で適宜変更しても良い。
[実施例2の効果]
上述したように、実施例2によれば、メール処理サーバ200は、転送メールを受信すると、転送メールの転送先のうち主宛先として設定された転送先を取得し、転送メールの転送元に対応付けて取得した転送先を履歴テーブル302に格納する。また、メール処理サーバ200は、督促メールを受信すると、履歴テーブル302に記憶された転送先を読み出し、読み出した転送先に督促メールを送信する。また、メール処理サーバ200は、受信した電子メールを電子メールの宛先に送信する。この結果、実施例1によれば、督促メールを担当者に選択的に送信可能である。
例えば、依頼者が部長に依頼メールを送信し、その後、部長が部下に依頼メールを転送して対応を任せることがある。このような場合に、依頼者が督促メールを部長に送信したとしても、部長が不在であったり督促メールを部長が読み飛ばしてしまうと、督促メールが部長から部下に転送されず、依頼者が急いでいたとしても部下に督促メールが届かなかった。また、部長が手動で転送する結果、実際に依頼メールを転送した部下とは違う部下に対して転送してしまうことも考えられる。実施例2によれば、メール処理サーバ200が担当者に選択的に督促メールを送信でき、督促メールを確実に担当者に送信することが可能である。
また、実施例2によれば、メール処理サーバ200は、履歴テーブル302に格納された転送先から依頼メールを転送する転送メールを受信すると、転送メールの転送先のうち主宛先として設定された転送先を取得する。そして、メール処理サーバ200は、履歴テーブル302に格納された転送先を取得した転送先に更新する。この結果、依頼メールが複数回転送されたとしても、担当者に対して選択的に送信可能である。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されても良い。そこで、以下では、その他の実施例を示す。
[督促メール]
例えば、上述した実施例では、督促メール送信処理部403が、最終転送先識別情報により識別される利用者と転送元識別情報により識別される利用者とに警告メールを送信する場合を用いて説明した。ただし、本願発明はこれに限定されるものではない。例えば、督促メール送信処理部403は、最終転送先識別情報により識別される利用者に警告メールを送信する一方、転送元識別情報により識別される利用者に警告メールを送信しなくても良い。
[依頼テーブルからの削除]
また、例えば、依頼テーブル作成処理部401は、期限から一定期間過ぎたレコードについて削除しても良い。例えば、依頼テーブル作成処理部401は、期限から1か月以上過ぎているレコードを削除しても良い。また、その際には、依頼テーブル作成処理部401は、削除したレコードの依頼メールIDに対応付けられたデータを履歴テーブル302から削除しても良い。
[メール処理サーバ]
また、例えば、上述の実施例では、異なる利用者端末500が、それぞれ、同一のメール処理サーバ200を用いて電子メールを送受信する場合を例に説明した。ただし、本発明はこれに限定されるものではない。例えば、各利用者端末500は、それぞれ異なるメール処理サーバを用いて電子メールを送受信しても良い。この場合、メール処理サーバ各々は、例えば、依頼テーブル301や履歴テーブル302を共有することで、メール処理サーバ200として機能する。
[システム構成]
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともできる。例えば、依頼テーブル301からレコードを削除する処理を手動で行っても良い。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については(図1〜図8)、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、依頼テーブル301をメール処理サーバ200の外部装置としてネットワーク経由で接続するようにしても良い。
[コンピュータ]
また、上述の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図9を用いて、上述の実施例と同様の機能を有するメール処理プログラムを実行するコンピュータの一例を示す。なお、図9は、実施例2に係るメール処理プログラムを実行するコンピュータの一例を示す図である。
図9に示すように、実施例2におけるコンピュータ3000は、通信部3006、CPU3010、ROM3011、HDD(Hard Disk Drive)3012、RAM3013をバス3009などで接続して構成されている。通信部3006は、図2の受信部201と送信部202とに対応する。また、図9には図示していないが、コンピュータ3000は、利用者が電子メールの送受信に用いる端末とネットワークを介して接続される。
ROM3011は、図2にて示した依頼テーブル作成処理部401と、転送先格納部402と、督促メール送信処理部403と同様の機能を発揮する制御プログラムを記憶する。つまり、図9に示すように、ROM3011は、依頼テーブル作成処理プログラム3011aと、転送先格納プログラム3011bと、督促メール送信処理プログラム3011cとを記憶する。なお、これらのプログラム3011a〜3011cについては、図2に示したメール処理サーバ200の各構成要素と同様、適宜統合又は分離しても良い。
そして、CPU3010が、これらのプログラム3011a〜3011cをROM3011から読み出して実行する。この結果、図9に示すように、各プログラム3011a〜3011cについては、依頼テーブル作成処理プロセス3010aと、転送先格納プロセス3010bと、督促メール送信処理プロセス3010cとして機能する。なお、各プロセス3010a〜3010cは、図2に示した、依頼テーブル作成処理部401と、転送先格納部402と、督促メール送信処理部403とにそれぞれ対応する。
そして、HDD3012には、依頼テーブル3012aと、履歴テーブル3012bとが設けられる。なお、各テーブル3012a〜3012bは、図2に示した、依頼テーブル301と、履歴テーブル302とにそれぞれ対応する。
そして、CPU3010は、依頼テーブル3012aと、履歴テーブル3012bとを読み出してRAM3013に格納する。そして、CPU3010は、RAM3013に格納された依頼データ3013aと、履歴データ3013bとを用いて、メール処理プログラムを実行する。
[その他]
なお、本実施例で説明したメール処理プログラムは、インターネットなどのネットワークを介して配布することができる。また、メール処理プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
以上の各実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)任意の処理を依頼する電子メールである依頼メールを転送する転送メールを受信部が受信すると、該転送メールの転送先のうち、電子メールの複写の宛先を示す複写宛先ではなく主宛先として該転送メールに設定された転送先を取得し、該転送メールの転送元に対応付けて取得した転送先を所定の記憶部に格納する転送先格納部と、
前記依頼メールに関する処理を督促する電子メールである督促メールを前記受信部が受信すると、前記転送先格納部によって前記所定の記憶部に格納された該転送メールの転送先を読み出し、読み出した転送先に該督促メールを送信部から送信する督促メール送信部と
を備えたことを特徴とするメール処理サーバ。
(付記2)前記転送先格納部は、前記所定の記憶部に格納された転送先から前記依頼メールを転送する転送メールを前記受信部が受信すると、該転送メールの転送先のうち前記主宛先として該転送メールに設定された転送先を取得し、前記所定の記憶部に格納された転送先を取得した転送先に更新することを特徴とする付記1に記載のメール処理サーバ。
(付記3)コンピュータが、
任意の処理を依頼する電子メールである依頼メールを転送する転送メールを受信部が受信すると、該転送メールの転送先のうち、電子メールの複写の宛先を示す複写宛先ではなく主宛先として該転送メールに設定された転送先を取得し、該転送メールの転送元に対応付けて取得した転送先を所定の記憶部に格納する転送先格納工程と、
前記依頼メールに関する処理を督促する電子メールである督促メールを前記受信部が受信すると、前記転送先格納工程によって前記所定の記憶部に格納された該転送メールの転送先を読み出し、読み出した転送先に該督促メールを送信部から送信する督促メール送信工程と
を実行することを特徴とする制御方法。
(付記4)前記転送先格納工程は、前記所定の記憶部に格納された転送先から前記依頼メールを転送する転送メールを前記受信部が受信すると、該転送メールの転送先のうち前記主宛先として該転送メールに設定された転送先を取得し、前記所定の記憶部に格納された転送先を取得した転送先に更新することを特徴とする付記3に記載の制御方法。
(付記5)任意の処理を依頼する電子メールである依頼メールを転送する転送メールを受信部が受信すると、該転送メールの転送先のうち、電子メールの複写の宛先を示す複写宛先ではなく主宛先として該転送メールに設定された設定された転送先を取得し、該転送メールの転送元に対応付けて取得した転送先を所定の記憶部に格納する転送先格納手順と、
前記依頼メールに関する処理を督促する電子メールである督促メールを前記受信部が受信すると、前記転送先格納手順によって前記所定の記憶部に格納された該転送メールの転送先を読み出し、読み出した転送先に該督促メールを送信部から送信する督促メール送信手順と
をコンピュータに実行させることを特徴とする制御プログラム。
(付記6)前記転送先格納手順は、前記所定の記憶部に格納された転送先から前記依頼メールを転送する転送メールを前記受信部が受信すると、該転送メールの転送先のうち前記主宛先として該転送メールに設定された転送先を取得し、前記所定の記憶部に格納された転送先を取得した転送先に更新することを特徴とする付記5に記載の制御プログラム。