以下、電子メールシステムの一実施形態について、図1〜図29に基づいて詳細に説明する。図1には、一実施形態に係る電子メールシステム100が概略的に示されている。
本実施形態の電子メールシステム100は、図1に示すように、メール処理装置としてのサーバ10と、第1端末、第2端末としてのクライアント20と、を備える。サーバ10とクライアント20は、インターネットやLAN(Local Area Network)などのネットワーク80に接続されている。この電子メールシステム100は、クライアント20においてブラウザ上に表示されるWEBメールの画面(サーバ10から提供)内で利用者が入力や操作を行うことで、クライアント20間における電子メールのやり取りを可能にするシステムである。なお、本実施形態では、あるクライアント20の利用者が他のクライアントの利用者に対して電子メールを送信する場合、予め定められた承認者(上司等)による電子メールのチェックが行われるものとする。そして、承認者によって電子メールの送信が承認された場合にのみ、電子メールが送信先に送信されるものとする。なお、以下においては、電子メールを「メール」と略述するものとする。
図2(a)には、サーバ10のハードウェア構成が示されている。図2(a)に示すように、サーバ10は、CPU(Central Processing Unit)90、ROM(Read Only Memory)92、RAM(Random Access Memory)94、記憶部(ここではHDD(Hard Disk Drive))96、ネットワークインタフェース97、及び可搬型記憶媒体用ドライブ99等を備えている。これらサーバ10の構成各部は、バス98に接続されている。サーバ10では、ROM92あるいはHDD96に格納されているプログラム(メール処理プログラムを含む)、或いは可搬型記憶媒体用ドライブ99が可搬型記憶媒体91から読み取ったプログラム(メール処理プログラムを含む)をCPU90が実行することにより、図3に示すメール処理部40としての機能が実現される。メール処理部40は、メールの送受信、承認処理に関する各種処理を実行する。なお、図3には、サーバ10のHDD96等に格納されている利用者認証DB(database)30、メールDB32、格納部としての承認DB34、返信管理DB36も図示されている。なお、各DB30〜36の具体的なデータ構造等については後述する。
図2(b)には、クライアント20のハードウェア構成が示されている。図2(b)に示すように、クライアント20は、CPU190、ROM192、RAM194、記憶部(HDD)196、表示部193、入力部195、ネットワークインタフェース197、及び可搬型記憶媒体用ドライブ199等を備えており、クライアント20の構成各部は、バス198に接続されている。表示部193は、液晶ディスプレイ等を含み、入力部195は、キーボードやマウス、タッチパネル等を含む。クライアント20においては、CPU190がプログラムを実行することで、図3に示す表示処理部50及び入力処理部52としての機能が実現される。表示処理部50は、サーバ10のメール処理部40からの指示に応じて、クライアント20の表示部193上にメール作成、送受信に関する画面を表示したり、メールの承認に関する画面を表示したりする。入力処理部52は、クライアント20の利用者が入力部195を介して入力した情報を受け付け、当該情報をサーバ10のメール処理部40に対して送信する。
ここで、サーバ10が有する各種DBについて説明する。
図4には、利用者認証DB30のデータ構造の一例が示されている。利用者認証DB30は、利用者がログインする際の認証に用いる情報や、利用者に対して予め対応付けられている承認者の情報を格納するデータベースである。この利用者認証DB30は、図4に示すように、「利用者アドレス(利用者ID)」と、利用者IDに対応する「パスワード」、「利用者名称」及び「部署名」と、利用者に対して予め対応付けられている承認者のアドレス(「承認者アドレス」)及び「承認者名称」の各フィールドを有している。例えば、図4からは、利用者「田中」、「佐藤」、「鈴木」に対して承認者「黒田」が定められていること等がわかる。
図5、図6には、メールDB32のデータ構造の一例が示されている。メールDB32は、クライアント20間で送受信されたメールの情報を格納するデータベースであり、利用者ごとに用意される。なお、図5は、利用者「黒田」に対応するメールDBであり、図6のメールDB32は、利用者「田中」に対応するメールDBである。
メールDB32は、図5、図6に示すように、「利用者ID」、「受送信」、「メッセージID」、「発信者アドレス(利用者アドレス)」、「宛先」、「最新承認依頼日時」、「発信日時(承認日時)」、「メール情報(件名、本文)」の各フィールドを有する。
「利用者ID」のフィールドには、メールの送信又は受信を行った利用者の利用者IDが入力される。「受送信」のフィールドには、メールが利用者IDに対応する利用者によって送信されたのか受信されたのかの情報が入力される。「メッセージID」のフィールドには、メール毎に定義されるユニークなIDが入力される。図5、図6ではメールと対応づけがしやすいような文字列としているが、実際には英数字が無意味に並んだ文字列となる。「発信者アドレス(利用者アドレス)」のフィールドには、メールの差出人のメールアドレスが入力される。なお、「受送信」のフィールドが「送信」である場合には、発信者アドレスとして利用者IDが入力される。「宛先」のフィールドには、メールの宛先のメールアドレスが入力される。なお、「受送信」のフィールドが「受信」である場合には、宛先に利用者IDが含まれることになる。「最新承認依頼日時」のフィールドには、メールの発信者がメールを送信するために承認者に対して承認依頼を出した日時(承認依頼が複数回出された場合には最新の承認依頼の日時)が入力される。「発信日時(承認日時)」は、メールが送信先に対して送信された日時であり、承認が必要なメールの場合には承認者によって承認された日時が入力される。「メール情報(件名、本文)」のフィールドには、メールの件名及び本文そのものが入力される。なお、本実施形態では、利用者ごとにメールDB32を作成し、管理することとしているが、これに限らず、1つのメールDBにて、複数の利用者の送受信メール情報を管理することとしてもよい。
図7には、承認DB34の一例が示されている。承認DB34は、メールの承認依頼が出された場合に、そのメールの情報や承認結果などを格納するためのデータベースである。なお、承認DB34は、承認者ごとに用意されるものとする(図7は、承認者「黒田」の承認DB34を示している)。承認DB34は、「承認ID」、「メッセージID」、「承認結果」、「発信者アドレス(利用者アドレス)」、「宛先」、「修正後宛先」、「承認依頼日時」、「コメント」、「メール情報(件名、本文、修正後本文)」の各フィールドを有する。
「承認ID」のフィールドには、承認依頼ごとに定義されるユニークなIDが入力される。なお、図7の下から1行目と下から2行目には同一のメールに対する承認依頼の情報が格納されているが、承認IDは承認依頼ごとに定義されるIDであるので、これらの承認IDは異なっている。「メッセージID」のフィールドには、メール毎に定義されるユニークなIDが入力される。「承認結果」のフィールドには、承認者によって承認される前か否か、承認されたか承認されなかったかが入力される。図7では、「承認結果」のフィールドに、「承認依頼中」、「送信(承認)」、「差し戻し(承認不可)」のいずれかが入力される。「発信者アドレス(利用者アドレス)」のフィールドには、メールの差出人のメールアドレスが入力される。「宛先」のフィールドには、メールの宛先のメールアドレスが入力される。「修正後宛先」のフィールドには、承認者が宛先を修正した場合における修正後の宛先の情報が入力される。「承認依頼日時」のフィールドには、メールの発信者がメールを送信するために承認者に対して承認依頼を出した日時が入力される。「コメント」のフィールドには、承認者の承認時のコメントが入力される。「メール情報(件名、本文、修正後本文)」のフィールドには、メールの件名、本文、承認者が修正した場合における修正後の本文そのものが入力される。
図8には、返信管理DB36の一例が示されている。返信管理DB36は、返信メールが送信された場合に、返信メールの情報(現記事情報)と、返信元メールの情報(元記事情報)とを格納するデータベースである。返信管理DB36は、図8に示すように、「現記事情報」と「元記事情報」とを含み、「現記事情報」として、「メッセージID」と「発信者アドレス」のフィールドを有し、「元記事情報」として、「メッセージID」と「発信者アドレス」のフィールドを有している。
この返信管理DB36によれば、ある返信メールがどのメールに対する返信であるかが分かる。また、同一の話題に対してメール(返信メール)が複数回やり取りされている場合には、当該複数回やり取りされているメール(同一の話題で紐付いているメール)を遡って追跡することができる。
次に、本実施形態におけるメール処理部40の処理について、図9〜図14のフローチャートに沿って、その他図面を適宜参照しつつ詳細に説明する。
図9の処理では、まず、ステップS10において、メール処理部40は、メール利用要求をクライアント20から受信するまで待機する。クライアント20の利用者は、クライアント20の表示部193上に表示されているブラウザ上でWEBメールサービスのアドレスに対してアクセスすることによりメール利用要求を出すことができる。なお、メール利用要求は、クライアント20の入力処理部52から送信される。
メール処理部40は、入力処理部52から送信されてきたメール利用要求を受信すると(ステップS10の判断が肯定されると)、ステップS12に移行する。ステップS12では、メール処理部40は、利用者ID(メールアドレス)、パスワード入力画面のデータをクライアント20(表示処理部50)に対して送信する。この場合の利用者ID、パスワード入力画面は、図15(a)に示すような画面であるものとする。なお、クライアント20においては、表示処理部50が、利用者ID、パスワード入力画面を表示部193上に表示する。
次いで、ステップS14では、メール処理部40が、利用者ID、パスワードをクライアント20から受信するまで待機する。なお、利用者が利用者IDとパスワードを図15(a)の画面上で入力し、送信ボタンを押すと、入力処理部52は、利用者IDとパスワードをメール処理部40に送信する。
入力処理部52からメール処理部40に対して利用者IDとパスワードが送信されると(ステップS14の判断が肯定されると)、ステップS16に移行する。ステップS16では、メール処理部40が、利用者認証DB30(図4)を用いて利用者の認証を実行する。次いで、ステップS18では、メール処理部40が、認証がOKであったか否かを判断する。ここでの判断が否定された場合には、図9〜図14の全処理を終了する。なお、メール処理部40は、全処理を終了する前に、認証エラー画面(図15(b))のデータをクライアント20(表示処理部50)に対して送信してもよい。この場合、表示処理部50は、図15(b)の画面を表示部193上に表示する。
一方、ステップS18の判断が肯定された場合、すなわち認証がOKであった場合には、ステップS20に移行する。ステップS20では、メール処理部40は、メールDB32(図5や図6)を用いて、入力された利用者IDに対応する受信メール一覧画面のデータを生成して、クライアント20に送信する。この場合の受信メール一覧画面は、図16(a)、図16(b)に示すような画面であるものとする。具体的には、入力された利用者IDに対応するメールDBより、受送信が「受信」であるメール情報を取得し、発信者アドレス、発信日時、メール情報の件名を用いて、メール一覧画面を生成する。図16では、その際に発信者アドレスを差出人として記載している。なお、図16(a)の受信メール一覧画面が、図5のメールDB32(利用者が「黒田」の場合)に対応し、図16(b)の受信メール一覧画面が、図6のメールDB32(利用者が「田中」の場合)に対応している。クライアント20の表示処理部50は、画面のデータを受信した段階で、図16(a)や図16(b)のメール表示画面を表示部193上に表示する。その後は、図10のステップS30に移行する。
図10のステップS30に移行すると、メール処理部40は、メールの作成要求(新規作成、返信)をクライアント20から受信したか否かを判断する。この場合、メール処理部40は、図16(a)、図16(b)のメール表示画面上の「メール新規作成」ボタンや、「メール返信」ボタンが利用者によって押されたという情報を入力処理部52から受信したか否かを判断する。ここでの判断が肯定された場合には、ステップS32に移行するが、否定された場合には、ステップS40に移行する。
ステップS30の判断が肯定されてステップS32に移行すると、メール処理部40は、メール送信画面を作成し、クライアント20に送信する。ここで、利用者によって「メール新規作成」ボタンが押された場合には、メール処理部40は、図17(a)のメール送信画面(新規作成時)を作成し、クライアント20(表示処理部50)に対して送信する。また、利用者によって「メール返信」ボタンが押された場合には、メール処理部40は、図17(b)のメール送信画面(返信時)を作成し、クライアント20(表示処理部50)に対して送信する。なお、図17(b)のメール送信画面(返信時)においては、宛先、件名の欄にアドレス(返信元メールの送受信者のうち、メール送信しようとしている利用者を以外の利用者のアドレス)や件名(返信元メールの件名の先頭に「Re:」を付加したもの)が入力されており、記事入力画面に返信元メールの本文が引用形式にて入力されている。なお、メールの返信は、例えば、図16のような受信メール一覧画面より、ある件名をマウスなどのポインティングデバイスのシングルクリックにて選択した後に、「返信」ボタンの押下があった場合に行われる。具体的には、その選択メールに対応するメッセージIDと返信を示す情報がサーバ10のメール処理部40に送信される。その場合に、選択していたメールのメッセージIDを使い、メールDB32の受信欄からそのメールの情報(件名、本文など)が取得され、その件名にRe:を付加し、本文に引用符が付加されることで、返信時のメール送信画面が生成される。なお、図示しないが、図16の受信メール一覧画面より、件名をポインティングデバイスのダブルクリックなどで、メールの内容を表示させ、その後で「返信」ボタンを押下しても、同様に図17(b)の画面が表示される。
次いで、ステップS34では、メール処理部40が、クライアント20から本文などのメール情報および送信(承認)要求を受信するまで待機する。なお、利用者が図17(a)や図17(b)の画面上で宛先や件名、メール本文を入力・修正するなどして、「送信(承認依頼)」ボタンを押すと、入力処理部52は、該画面上に入力されている情報をメール処理部40に送信する。
入力処理部52からメール処理部40に対してメール本文等の情報が送信されると(ステップS34の判断が肯定されると)、ステップS36に移行する。ステップS36では、メール処理部40が、利用者認証DB30から、メールの送信者に対応する承認者のアドレスを取得する。次いで、ステップS38では、メール処理部40は、承認者のアドレスに対応する承認DB34(図7)に、メール情報を記録する。この場合、メール処理部40は、承認DB34「承認結果」のフィールドには、「承認依頼中」と入力するものとする(例えば、図7の最上段のレコード参照)。なお、承認対象のメールが、あるメールに対する返信メールである場合には、メール処理部40は、ステップS38において、そのメールのメッセージIDと発信者アドレスの情報と、返信元のメールのメッセージIDと発信者アドレスの情報を返信管理DB36に格納する。
次いで、ステップS40では、メール処理部40が、承認処理要求をクライアント20から受信したか否かを判断する。この場合、メール処理部40は、受信メール一覧画面(図16(a)参照)上の「承認処理」ボタンが利用者によって押されたという情報を入力処理部52から受信したか否かを判断する。ここでの判断が肯定された場合には、ステップS42に移行するが、否定された場合には、図14のステップS110に移行する。なお、図16(a)、図16(b)の受信メール一覧画面においては、図7の承認DB34に「承認依頼中」のメールが存在している場合にのみ、「承認処理」のボタンが表示されるものとする。
ステップS42に移行すると、メール処理部40は、利用者IDに対応する承認DB34から、未承認である「承認依頼中」のメール情報を取得し、承認一覧画面を作成する。図18には、図7の承認DB34に基づいて作成された承認一覧画面の一例が示されている。
次いで、ステップS44では、メール処理部40が、承認者によって承認一覧画面上のメールが選択されるまで待機する。なお、利用者(承認者)は、図18の画面において、承認処理を行うメールを入力部195を用いて選択する。そして、入力処理部52は、メールの選択情報をメール処理部40に対して送信する。上記のようにしてメールが選択されると、メール処理部40は、図11のステップS50に移行する。なお、ここでは、承認者が、図18の件名「○○システムについて」のメール(メッセージID:system5@xxx.ww)を選択したものとする。
図11のステップS50に移行すると、メール処理部40は、選択されたメールの情報を承認DB34から取得する。次いで、ステップS52では、メール処理部40が、取得したメールのメッセージIDが返信管理DB36の現記事情報のメッセージID欄に含まれているか否かを判断する。すなわち、メール処理部40は、選択したメールが、あるメールに対する返信メールであるかを判断する。ここでの判断が否定された場合には、ステップS66に移行するが、肯定された場合にはステップS54に移行する。なお、図8の返信管理DB36には、メッセージID:system5@xxx.wwが存在していないので、ここでの判断は否定され、ステップS66に移行する。
ステップS66に移行すると、メール処理部40は、現在の宛先アドレスに宛先更新ボタン(「宛先追加」ボタン及び「削除」ボタン)を設けた承認画面を作成する。そして、ステップS62では、メール処理部40が、承認画面(図19)のデータを承認者が利用するクライアント20(表示処理部50)に対して送信する。この場合、表示処理部50は、図19の画面を表示部193上に表示する。その後は、図12のステップS70に移行する。
なお、承認依頼に対応するメール(承認依頼者のアドレス:tanaka@xxx.ww)のメッセージIDが「system6@xxx.ww」であった場合には、図11の処理において、以下のような処理が実行される。
まず、ステップS52の処理では、メッセージID:system6@xxx.wwが返信管理DB36(図8)の現記事情報に含まれているので、ここでの判断が肯定され、ステップS54に移行する。そして、ステップS54では、メール処理部40は、対応する返信元情報のメッセージIDを取得する。現記事情報のメッセージIDが「system6@xxx.ww」であるので、対応する返信元情報のメッセージIDとしては「system4@xxx.ww」が取得される。
次いで、ステップS56では、メール処理部40が、返信元情報のメッセージIDの発信者が利用者アドレス(承認依頼者のアドレス)と同一か否かを判断する。この場合、返信元情報のメッセージID「system4@xxx.ww」の発信者アドレスは「satou@xxx.ww」であり、承認依頼者のアドレス「tanaka@xxx.ww」と異なるため、ステップS56の判断は否定され、ステップS64に移行する。そして、ステップS64では、メール処理部40が、返信元情報のメッセージIDが返信管理DB36の現記事情報のメッセージID欄に含まれているか否かを判断する。なお、メッセージID:system4@xxx.wwは、図8の返信管理DB36の現記事情報に含まれているので、ここでの判断は肯定され、ステップS54に戻る。
ステップS54に戻ると、メール処理部40は、対応する返信元情報のメッセージIDを取得する。現記事情報がメッセージID:system4@xxx.wwの場合には、対応する返信元情報のメッセージIDとして「system3@xxx.ww」が取得される。次いで、ステップS56では、メール処理部40が、返信元情報のメッセージIDの発信者が利用者アドレス(承認依頼者のアドレス)と同一か否かを判断する。なお、メッセージID:system3@xxx.wwの場合、発信者アドレスは「kuroda@xxx.ww」であり、承認依頼者のアドレス「tanaka@xxx.ww」と異なるため、ステップS56の判断は否定され、再度ステップS64に移行する。そして、ステップS64では、メール処理部40が、返信元情報のメッセージIDが返信管理DB36の現記事情報のメッセージID欄に含まれているか否かを判断する。なお、メッセージID:system3@xxx.wwの場合には、返信管理DB36の現記事情報のメッセージIDに含まれているので、ここでの判断は肯定され、ステップS54に戻る。
ステップS54に戻ると、メール処理部40は、再度、対応する返信元情報のメッセージIDを取得する。現記事情報がメッセージID:system3@xxx.wwの場合には、対応する返信元情報のメッセージIDとして「system2@xxx.ww」が取得される。
次いで、ステップS56では、メール処理部40が、返信元情報のメッセージIDの発信者が利用者アドレス(承認依頼者のアドレス)と同一か否かを判断する。なお、メッセージID:system2@xxx.wwの場合、発信者アドレスは「tanaka@xxx.ww」であり、承認依頼者のアドレス「tanaka@xxx.ww」と同一であるため、ステップS56の判断は肯定され、ステップS58に移行する。
なお、ステップS54→S56(否定)→S64(肯定)→S54→…のループでは、承認依頼メールに紐付いている返信元メールの中から、承認依頼者が直前に送信したメールを探し出しているといえる。すなわち、このようなメールが存在していた場合に、ステップS58に移行することになる。
ステップS58に移行すると、メール処理部40は、メールDB32からその返信元情報のメッセージIDに対応する宛先アドレスを取得する。メッセージID:system2@xxx.wwの場合、承認依頼者「tanaka@xxx.ww」のメールDB32(図6)から宛先アドレス「satou@xxx.ww」と「kuroda@xxx.ww」が取得される。
次いで、ステップS60では、メール処理部40が、取得した宛先アドレスの情報と、現在の宛先アドレスに宛先更新ボタン(「宛先追加」ボタン及び「削除」ボタン)を設けた承認画面(図20)を作成する。なお、取得した宛先アドレスの情報は、図20において「関連メールのうち、田中さんから発信された直前のメールの宛先」として表示される。そして、ステップS62では、メール処理部40が、承認画面のデータを承認者が利用するクライアント20(表示処理部50)に対して送信する。この場合、表示処理部50は、図20の画面を表示部193上に表示する。その後は、図12のステップS70に移行する。なお、承認者は、図20の承認画面を参照することで、承認依頼者が同一の話題に関するメールを前回送信した場合の宛先と今回の宛先とを比較することができる。これにより、承認者による承認処理を適切に支援することが可能である。
ところで、ステップS64の判断が否定された場合、すなわち、承認依頼メールに紐付いている返信元メールの中に、承認依頼者が直前に送信したメールが存在していなかった場合には、ステップS66に移行する。ステップS66に移行すると、メール処理部40は、前述と同様、図20の承認画面(直前のメール宛先の表示が無いもの)を作成し、ステップS62において、作成した承認画面のデータを承認者が利用するクライアント20(表示処理部50)に対して送信する。その後は、図12のステップS70に移行する。
なお、本実施形態では、ステップS62において、承認者が利用するクライアント20に対して図19の承認画面が送信されたとして、説明を続ける。
図12のステップS70に移行すると、メール処理部40は、宛先の削除要求をクライアント20から受信したか否かを判断する。ここでの判断が否定された場合には、ステップS74に移行し、メール処理部40は、宛先の追加要求をクライアント20から受信したか否かを判断する。ここでの判断が否定された場合には、ステップS82に移行し、メール処理部40が、承認結果を受信したか否かを判断する。ここでの判断が否定された場合には、ステップS70に戻る。このステップS70→S74→S82→S70…のループが実行されている間は、メール処理部40は、承認者によって図19の画面上の「削除」、「宛先追加」、「送信(承認)」、「変更送信」、「却下」ボタンのいずれかが押されるまで待機しているといえる。
メール処理部40が上記ループ(S70、S74、S82)を実行している間に、承認者によっていずれかの宛先アドレスに対応する「削除」ボタンが押されると、ステップS70の判断が肯定され、ステップS72に移行する。
ステップS72に移行すると、メール処理部40は、「削除」ボタンが押されたアドレス(削除アドレス)を網掛け表示した承認画面(図21)を作成する。また、メール処理部40は、作成した画面のデータを承認者が利用するクライアント20(表示処理部50)に対して送信する。なお、図21には、承認者が「商標部 山本」のアドレスに対応する「削除」ボタンを押したときの承認画面の例が示されている。表示処理部50は、図21の画面のデータを受信した段階で、当該画面を表示部193上に表示する。これにより、承認者は、削除したアドレスを確認した上で、承認作業を続行することができる。
一方、上記ループ(S70、S74、S82)を繰り返している間に、承認者によって「宛先追加」ボタンが押されると、ステップS74の判断が肯定され、ステップS76に移行する。
ステップS76に移行すると、メール処理部40は、利用者認証DB30を用いて現在の宛先に含まれていないアドレスの一覧画面(図22の画面150)を作成する。また、メール処理部40は、作成した画面のデータを承認者が利用するクライアント20(表示処理部50)に送信する。この場合、表示処理部50は、図22の画面を表示部193上に表示する。承認者は、図22の一覧画面150において、追加したいアドレスの「選択」欄にチェックを入れ、「追加」ボタンを押すことで、追加したいアドレスを選択することができる。
次いで、ステップS78では、メール処理部40が、承認者が利用するクライアント20(入力処理部52)からアドレスの選択を受信するまで待機する。メール処理部40は、アドレスの選択情報をクライアント20からを受信した段階で、ステップS80に移行する。ステップS80では、メール処理部40が、選択されたアドレスを追加表示した承認画面(図23)を作成し、当該画面のデータを承認者が利用するクライアント20に送信する。なお、図23には、承認者が「ライセンス部 山田」のアドレスを追加したときの承認画面の例が示されている。表示処理部50は、画面のデータを受信した段階で、図23の画面を表示部193上に表示する。これにより、承認者は、追加したアドレスを確認した上で、承認作業を続行することができる。
ところで、ループ(S70、S74、S82)を繰り返している間に、承認者によって「送信(承認)」、「変更送信」、「却下」のいずれかのボタンが押されると、ステップS82の判断が肯定され、図13のステップS90に移行する。なお、承認者は、宛先の追加・削除、メール本文の修正を行った後に、その内容を反映させたメールの送信を承認する場合には、「変更送信」ボタンを押すものとする。また、承認者は、承認依頼者から承認依頼のあったメールの宛先や本文を変更せずに承認する場合には「送信(承認)」ボタンを押すものとする。また、承認者は、「変更送信」ボタンや「却下」ボタンを押す場合には、その理由等を承認画面のコメント欄に入力することができる。
図13のステップS90では、メール処理部40は、承認結果を承認DB34に記録する。なお、承認結果が却下の場合や宛先等が変更された場合には、承認者が入力したコメントがあれば、承認DB34の「コメント」フィールドに記録する。また、承認者によって宛先が修正された場合には、承認DB34の「修正後宛先」フィールドに修正後の宛先を記録する。なお、図23の状態で承認者が「変更送信」ボタンを押した場合には、承認DB34が、図7の状態から図24の状態に変更される(変更部分は太字にて記載。ただし、「承認結果」フィールドは「承認依頼中」のままである)。
次いで、ステップS92では、メール処理部40が、承認結果がOKであったか否か、すなわち、承認者が「送信(承認)」ボタン及び「変更送信」ボタンのいずれかを押したか否かを判断する。ここでの判断が肯定された場合には、ステップS94に移行する。
ステップS94に移行すると、メール処理部40は、承認者が「変更送信」ボタンを押したか否かを判断する。ここでの判断が肯定された場合には、ステップS95に移行し、メール処理部40は、メール本文が変更(修正)されていれば、承認DB34の「修正後本文」のフィールドに変更後のメール本文を記録する。図25には、メール本文が変更(修正)された場合の承認DB34の例が示されている(ただし、「承認結果」フィールドは「承認依頼中」のままである)。
次いで、ステップS96では、メール処理部40が、修正された宛先及び/又はメール本文とともに承認されたメールの情報を、承認依頼者のメールDB32(送信区分)に格納する。図26には、図6のメールDB32に新たなメール情報(メッセージID:system5@xxx.wwのメール情報)が格納(追加)された状態が示されている。
また、ステップS98では、メール処理部40が、修正された宛先のメールDB32(受信区分)に承認者が承認したメールの情報を格納する。なお、ステップS98の処理が行われることで、メールが承認依頼者から宛先に対して送信されたことになる。したがって、メールを受信した利用者が、メールDB32に格納されたメールを受信メール一覧画面(図16(a)等)上で選択することで、クライアント20の表示部193上には、図27に示すようなメール表示画面が表示されることになる。その後は、メール処理部40は、ステップS100に移行し、承認DB34の「承認結果」フィールドを「送信(承認)」に変更するとともに、コメントを承認DB34のコメント欄に記録する。そして、図14のステップS110に移行する。
一方、図13のステップS94の判断が否定された場合、すなわち、承認者が「承認(送信)」ボタンを押した場合には、ステップS102に移行する。そして、ステップS102では、メール処理部40は、承認依頼者のメールDB32(送信区分)に、承認者によって承認されたメールの情報を格納する。また、ステップS104では、メール処理部40が、宛先のメールDB32(受信区分)に承認者によって承認されたメールの情報を格納する。なお、ステップS104により、メールが承認依頼者から宛先に対して送信されたことになる。
一方、図13のステップS92の判断が否定された場合、すなわち、承認結果がNG(却下)であった場合には、ステップS106に移行し、メール処理部40は、承認DB34の「承認結果」フィールドを「差戻し」に変更する。また、コメントがあれば、承認DB34のコメント欄に記録する。その後は、図14のステップS110に移行する。なお、前述のように、図10のステップS40の判断が否定された場合、すなわち、利用者が承認処理要求を出していない場合にも、図14のステップS110に移行する。
図14のステップS110に移行すると、メール処理部40は、クライアント20から、承認結果表示要求を受信したか否かを判断する。この場合、メール処理部40は、図16(a)、図16(b)の受信メール一覧画面上の「承認依頼状況閲覧」ボタンが利用者によって押されたという情報を入力処理部52から受信したか否かを判断する。ここでの判断が肯定された場合には、ステップS112に移行するが、否定された場合には、ステップS124に移行する。
ステップS110の判断が肯定されてステップS112に移行すると、メール処理部40は、承認結果表示要求を出した利用者(「承認依頼状況閲覧」ボタンを押した利用者)の承認者のアドレスを、利用者認証DB30から取得する。
次いで、ステップS114では、メール処理部40が、承認者の承認DB34から、利用者が発信者である承認結果とメールの件名を取得し、承認結果一覧画面を作成する。なお、承認結果一覧画面は、図28に示すような画面である。
次いで、ステップS116では、メール処理部40は、承認結果一覧画面(図27)のデータをクライアント20(表示処理部50)に対して送信する。なお、表示処理部50では、データ受信後、図28の画面を表示部193上に表示する。
次いで、ステップS118では、メール処理部40は、承認結果一覧画面の中から1つのメールが選択されるまで待機する。この場合、メールが選択された段階で、ステップS120に移行する。ステップS120に移行すると、メール処理部40は、承認DB34内のメール情報を用いて、承認結果確認画面(図29)を作成する。この場合、メール処理部40は、承認DB34の「修正後宛先」、「コメント」、「修正後本文」の各フィールドに情報が記録されている場合には、その情報を承認結果確認画面に反映させるものとする。そして、次のステップS122では、メール処理部40は、クライアント20(表示処理部50)に対して、承認結果確認画面のデータを送信する。なお、表示処理部50では、データ受信後、図29の画面を表示部193上に表示する。
ステップS122の処理の後、又はステップS110の判断が否定されてステップS124に移行すると、メール処理部40は、ログアウト要求を受信したか否かを判断する。ここでの判断が否定された場合には、図10のステップS30に戻り、ステップS30以降の処理・判断を繰り返す。そして、ステップS124の判断が肯定された場合、すなわち、利用者が図16(a)等の画面上で「ログアウト」ボタンを押したという情報を、メール処理部40が入力処理部52から受信した場合、図9〜図14の全処理が終了する。
なお、図9〜図14の処理では、利用者認証後は、利用者からの要求がない限り、ステップS30、S40、S110、S124の判断を繰り返す。そして、利用者からメール作成要求が出された場合に、メール処理部40は、ステップS32〜S38を実行し、利用者から承認処理要求が出された場合に、メール処理部40は、ステップS42〜S110を実行する。また、利用者から承認結果表示要求が出された場合に、メール処理部40は、ステップS112〜S122を実行し、利用者からログアウト要求が出された場合に、メール処理部40は、図9〜図14の全処理を終了する。
なお、上記説明から分かるように、サーバ10のメール処理部40により、承認者のクライアント20に対して、承認依頼に対応するメールを送信する第1送信部としての機能が実現されている。また、メール処理部40により、承認者のクライアント20からメールの宛先の変更を受信した場合に、宛先を変更した旨の情報を承認依頼者のクライアント20において閲覧可能な状態にするとともに、メールを変更後の宛先に送信する第2送信部、としての機能が実現されている。
以上、詳細に説明したように、本実施形態によると、サーバ10のメール処理部40は、承認依頼者のクライアント20から承認者のクライアント20に対してメールの承認依頼があった場合に、当該メール情報を承認DB34に格納し(S38)、承認者のクライアント20に対して、承認依頼に対応するメール(承認画面)を送信する(S62)。そして、メール処理部40は、承認者のクライアント20からメールの宛先の変更(追加/削除)を受信した場合に、宛先を変更した旨の情報を承認依頼者のクライアント20において閲覧可能な状態にする(修正後の宛先やコメントを承認DB34に格納する)(S90)とともに、メールを変更後の宛先に送信する(S98)。これにより、本実施形態では、承認依頼に対応するメールの宛先の変更が必要な場合であっても、承認依頼者に差し戻し、承認依頼者が宛先を変更した後、再度承認処理を行うという、承認者と承認依頼者との間のやりとりを省略することができる。したがって、本実施形態では、メール承認作業の簡素化を図ることが可能となる。
また、本実施形態では、メール処理部40は、承認者のクライアント20から承認依頼に対応するメールの宛先の変更とともにメールの本文の変更を受信した場合に、変更後のメールの本文情報を承認依頼者のクライアント20において閲覧可能な状態にする(修正後本文を承認DB34に格納する)(S95)とともに、変更後のメールの本文を変更後の宛先に送信する(S98)。これにより、本実施形態では、承認依頼に対応するメールの本文の変更(例えば宛先の変更に基づくメール本文の一部の変更など)が必要な場合であっても、承認依頼者に差し戻し、承認依頼者が宛先を変更した後、再度承認処理を行うという煩雑な処理を行わなくても、承認者が本文を修正して、変更後の宛先にメールを送信することができる。したがって、本実施形態では、この点からも、メール承認作業の簡素化を図ることが可能とである。
また、本実施形態では、メール処理部40は、承認依頼に対応するメールが返信メールである場合に、当該承認依頼に対応するメールに紐付く返信元メールのうち、承認依頼者が直前に送信したメールを特定し(S54,S56(肯定))、特定されたメールの情報を承認者のクライアント20に対して送信する(S60)。これにより、本実施形態では、承認者は、承認依頼者が送信しようとしているメールの宛先と、送信済のメールの宛先とを比較して承認作業を行うことができるので、メール承認作業をより簡素化することができる。
なお、上記実施形態では、メール処理部40は、承認依頼に対応するメールに紐付く返信元メールのうち、承認依頼者が直前に送信したメールを特定して、当該メールの宛先を承認画面に表示することとした。しかしながら、これに限られるものではなく、例えば、メール処理部40は、承認依頼に対応するメールの返信元メールの送受信者(承認依頼者を除く)の情報を承認者のクライアント20に対して送信することとしてもよい。その他、メール処理部40は、承認依頼に対応するメールに紐付く返信元メールのいずれかの送受信者(承認依頼者を除く)の情報を承認者のクライアント20に対して送信することとしてもよい。
なお、上記実施形態では、メール処理部40は、ステップS54〜S64の処理を行うことで、図20のような承認画面を生成する場合について説明したが、これに限られるものではない。例えば、メール処理部40は、ステップS54〜S64の処理を省略して、いずれの場合にも図19のような承認画面を生成するようにしてもよい。この場合、図3の返信管理DB36を省略することとしてもよい。
なお、上記実施形態では、承認画面において承認者がメール本文を修正できる場合について説明したが、これに限られるものではなく、承認者は、宛先のみを修正できるようにしてもよい。また、上記実施形態では、サーバ10側のメール処理部40にて、各種画面を生成し、クライアント20に送信しているが、画面生成のための情報をクライアント20に送信し、クライアント20がその情報を用いて画面を生成・表示してもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体(ただし、搬送波は除く)に記録しておくことができる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
なお、以上の実施形態の説明に関して、更に以下の付記を開示する。
(付記1) 第1端末から第2端末に対してメールの承認依頼があった場合に、当該メール情報を格納部に格納し、
前記第2端末に対して、前記承認依頼に対応するメールを送信し、
前記第2端末から前記メールの宛先の変更を受信した場合に、前記宛先を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記メールを変更後の宛先に送信する、処理をコンピュータに実行させることを特徴とするメール処理プログラム。
(付記2) 前記メールを変更後の宛先に送信する処理では、前記第2端末から、前記メールの宛先の変更とともに前記メールの本文の変更を受信した場合に、前記メールの本文を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記変更後のメールの本文を前記変更後の宛先に送信することを特徴とする付記1に記載のメール処理プログラム。
(付記3) 前記承認依頼に対応するメールが、あるメールに関連するメールである場合に、前記関連するメールの宛先の情報を取得する処理を前記コンピュータに更に実行させ、
前記承認依頼に対応するメールを送信する処理では、前記関連するメールの宛先の情報を前記第2端末に対して送信することを特徴とする付記1又は2に記載のメール処理プログラム。
(付記4) 前記関連するメールは、前記承認依頼に対応するメールに返信元として紐付くメールのうち、前記第1端末から送信されたメールであることを特徴とする付記3に記載のメール処理プログラム。
(付記5) 第1端末から第2端末に対してメールの承認依頼があった場合に、当該メール情報を格納する格納部と、
前記第2端末に対して、前記承認依頼に対応するメールを送信する第1送信部と、
前記第2端末から前記メールの宛先の変更を受信した場合に、前記宛先を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記メールを変更後の宛先に送信する第2送信部と、を備えるメール処理装置。
(付記6) 前記第2送信部は、前記第2端末から、前記メールの宛先の変更とともに前記メールの本文の変更を受信した場合に、前記メールの本文を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記変更後のメールの本文を前記変更後の宛先に送信することを特徴とする付記5に記載のメール処理装置。
(付記7) 前記承認依頼に対応するメールが、あるメールに関連するメールである場合に、前記関連するメールの宛先の情報を取得する取得部を更に備え、
前記第1送信部は、前記関連するメールの宛先の情報を前記第2端末に対して送信することを特徴とする付記5又は6に記載のメール処理装置。
(付記8) 前記関連するメールは、前記承認依頼に対応するメールに返信元として紐付くメールのうち、前記第1端末から送信されたメールであることを特徴とする付記7に記載のメール処理装置。
(付記9) 第1端末から第2端末に対してメールの承認依頼があった場合に、当該メール情報を格納部に格納する工程と、
前記第2端末に対して、前記承認依頼に対応するメールを送信する工程と、
前記第2端末から前記メールの宛先の変更を受信した場合に、前記宛先を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記メールを変更後の宛先に送信する工程と、をコンピュータが実行することを特徴とするメール処理方法。
(付記10) 前記メールを変更後の宛先に送信する工程では、前記第2端末から、前記メールの宛先の変更とともに前記メールの本文の変更を受信した場合に、前記メールの本文を変更した旨の情報を前記第1端末において閲覧可能な状態にするとともに、前記変更後のメールの本文を前記変更後の宛先に送信することを特徴とする付記9に記載のメール処理方法。
(付記11) 前記承認依頼に対応するメールが、あるメールに関連するメールである場合に、前記関連するメールの宛先の情報を取得する工程を前記コンピュータが更に実行し、
前記承認依頼に対応するメールを送信する工程では、前記関連するメールの宛先の情報を前記第2端末に対して送信することを特徴とする付記9又は10に記載のメール処理方法。
(付記12) 前記関連するメールは、前記承認依頼に対応するメールに返信元として紐付くメールのうち、前記第1端末から送信されたメールであることを特徴とする付記11に記載のメール処理方法。