メッセージを一覧表示する画面においては、利用者の所望の順(例えば受信日時の降順)でソートされていることが想定される。また、メッセージを一覧表示する画面の表示領域内に表示可能なメッセージの件数は限られているため、新たなメッセージを何件も受信することによって、未読メールが表示画面内に表示されなくなる。その結果、未読のまま残されるメッセージが生じ、利用者が未読であることを忘れてしまえば、未読の状態のまま放置されることになるであろう。そこで、利用者が過去に受信したメッセージを閲覧する動作をキッカケとして、未読のメッセージに気づかせる仕組を提供する。
例えば、督促メールのように過去に受信済みのメッセージと関連するメッセージAを受信し、利用者から該メッセージAに関連するメッセージX(=過去に受信済みのメール)を指定する指示を受け付けた場合について考える。メッセージXを一覧表示画面内に一度に表示できるメッセージ件数と、利用者の指定によるソート順においてメッセージXの近くにある未読のメッセージが、なるべく多く表示領域内に含まれるように一覧表示させるメッセージの表示開始位置と表示終了位置を決定する。
なお、利用者がメッセージXに気づいていない状況ということは、メッセージXの前後に受信したメッセージについてもメッセージX同様に受信してはいるが読めていない状況であろうという考えに基づく。
図1は、情報を管理するシステムの一実施例を示す図である。図1のシステムは情報管理装置1と端末2を有し、情報管理装置1と端末2はネットワーク3を介して通信を行う。
情報管理装置1は、例えば、ウェブサーバなどであり、端末2とネットワーク3を介して接続されている。図1では説明を分かりやすくするために端末を2つしか示していないが、実際には複数の端末(クライアント)とネットワーク3を介して通信をする。
端末2は、送信側の利用者が所有する端末でネットワーク3を介して情報管理装置1にメッセージを送信する。また、端末2は受取側の利用者が所有する端末でネットワーク3を介して情報管理装置1から後述する表示頁情報などを受信する。例えば、端末2の有するブラウザなどを用いて、情報管理装置1からネットワーク3を介して表示頁情報などを取得する。そして、端末2は取得した表示頁情報に基づいて、利用者に提示する表示を生成し、生成した表示を画面に出力する。
ネットワーク3は、例えば、インターネット、Local Area Network(LAN)、無線LANなどのネットワークが考えられる。
情報管理装置について説明する。
図2は、情報管理装置のハードウェアの一実施例を示す図である。情報管理装置1はウェッブサーバなどを用いて実現することが考えられる。情報管理装置1は、図2に示す制御部201、記憶部202、記録媒体読取装置203、入出力インタフェース204(入出力I/F)、通信インタフェース205(通信I/F)などをそれぞれ備えている。また、上記各構成部はバス206によってそれぞれ接続されている。
制御部201はCentral Processing Unit(CPU)、マルチコアCPU、プログラマブルなデバイス(Field Programmable Gate Array(FPGA)、Programmable Logic Device(PLD)など)を用いることが考えられる。
記憶部202は、例えばRead Only Memory(ROM)、Random Access Memory(RAM)などのメモリやハードディスクなどが考えられる。なお、記憶部202にはパラメータ値、変数値などのデータを記録してもよいし、実行時のワークエリアとして用いてもよい。また、記憶部202以外に情報管理装置1の外部に他の記憶部を設けてもよく、例えば、データベースなどを設けることが考えられる。
記録媒体読取装置203は、制御部201の制御に従って記録媒体207に対するデータのリード/ライトを制御する。そして、記録媒体207に記録媒体読取装置203の制御で書き込まれたデータを記録させたり、記録媒体207に記録されたデータを読み取らせたりする。また、着脱可能な記録媒体207は、コンピュータで読み取り可能なnon-transitory(非一時的)な記録媒体として、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)などがある。光ディスクには、Digital Versatile Disc(DVD)、DVD−RAM、Compact Disc Read Only Memory(CD−ROM)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、Magneto-Optical disk(MO)などがある。なお、記憶部202もnon-transitory(非一時的)な記録媒体に含まれる。
入出力インタフェース204には、入出力部208が接続され、入力された情報を受信し、バス206を介して制御部201に送信する。また、制御部201からの命令に従ってディスプレイの画面上に操作情報などを表示する。入出力部208の入力装置は、例えば、キーボード、ポインティングデバイス(マウスなど)、タッチパネルなどが考えられる。なお、入出力部208の出力部であるディスプレイは、例えば、液晶ディスプレイなどが考えられる。また、出力部はCathode Ray Tube(CRT)ディスプレイ、プリンタなどの出力装置であってもよい。
通信インタフェース205は、Local Area Network(LAN)接続やインターネット接続や無線接続を行うためのインタフェースである。また、通信インタフェース205は必要に応じ、他のコンピュータとの間のLAN接続やインターネット接続や無線接続を行うためのインタフェースである。
このようなハードウェア構成を有するコンピュータを用いることによって、後述する情報管理を行う各種処理機能が実現される。その場合情報管理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体207に記録しておくことができる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの記録媒体207が販売される。また、プログラムをサーバコンピュータの記憶装置に記録しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、記録媒体207に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶部202に記憶する。そして、コンピュータは、自己の記憶部202からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、記録媒体207から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
情報管理装置1の制御部と記憶部について説明する。
図3は、情報管理装置の制御部と記憶部の一実施例を示す図である。図3に示す制御部201はメッセージ処理部301、要求処理部302、認証部303、関連表示生成部304、所在表示生成部305、指定表示生成部306、表示提供部307を有している。
メッセージ処理部301は、端末2との間のメッセージのやり取りを制御する処理などを実行する。例えば、ウェッブサーバが有する機能を実行する。要求処理部302は端末2からの要求を受信し、受信した要求内容を判定する。認証部303は、利用者がログインしたときに認証を行う。
関連表示生成部304は、受信したメッセージに関連するメッセージがある場合、関連するメッセージの所在を示す関連メッセージ情報を生成する。
所在表示生成部305は、受信した第1のメッセージに関連する関連メッセージ情報が選択されると、関連メッセージ情報の示す第2のメッセージを特定する。続いて、後述するメッセージ情報を参照し、第2のメッセージの受信日時に近い受信日時に関連付けられている複数の第3のメッセージと第2のメッセージを決められた件数取得して複数のグループを生成する。それとともに、グループごとに第2のメッセージのグループ内での表示順が異なるように第3のメッセージを選択し、グループごとに第2のメッセージと第3のメッセージ各々の確認情報を参照し、読まれていない第2のメッセージと第3のメッセージ各々の数を求める。その結果、最も多いグループを特定し、特定したグループに含まれるメッセージに関連する頁数と受信日時と特定情報と関連メッセージ情報を画面に表示させるための表示頁情報を生成する。なお、グループは、例えば、後述する図17に示す表示最適領域情報1701などである。
メッセージ情報には、受信したメッセージに含まれるメッセージ内容と、メッセージを受信した受信日時と、メッセージが利用者により読まれたか否かを示す確認情報と、を関連付けて前記受信日時の順に記憶している。
表示頁情報には、受信日時と、特定情報と、関連メッセージ情報と、頁数と、表示情報とを関連付けて受信日時の順に記憶している。特定情報は、メッセージ内容に含まれるメッセージを特定する情報で、後述する「件名」「差出人」などに記憶される情報である。関連メッセージ情報はメッセージに関連するメッセージの所在を示す情報で、例えば、頁数(何頁目)と件数(何通目)を示す情報ある。頁数は、メッセージごとに関連付けられた受信日時と特定情報と関連メッセージ情報とが表示される頁数を示す情報である。表示情報は、頁数と受信日時と特定情報と関連メッセージ情報を画面に表示させるため情報である。
指定表示生成部306は、指定された頁または指定されたメッセージを表示させるための表示頁情報を生成する。
表示提供部307は表示頁情報を端末2に出力(送信)する。そして、端末2で表示頁情報に基づいて画面が表示される。
図3に示す記憶部202は後述する利用者情報308、メッセージ情報309、関連表示情報310、所在表示情報311、指定頁情報312、指定メッセージ情報313、表示最適領域情報314などを有している。
端末について説明する。
図4は、端末のハードウェアの一実施例を示す図である。端末2はパーソナルコンピュータ、コンピュータを備えたモバイル機器などを用いて実現することが考えられる。端末2は、図4に示す制御部401、記憶部402、記録媒体読取装置403、入出力インタフェース404(入出力I/F)、通信インタフェース405(通信I/F)などをそれぞれ備えている。また、上記各構成部はバス406によってそれぞれ接続されている。
制御部401はCentral Processing Unit(CPU)、マルチコアCPU、プログラマブルなデバイス(Field Programmable Gate Array(FPGA)、Programmable Logic Device(PLD)など)を用いることが考えられる。
記憶部402は、例えばRead Only Memory(ROM)、Random Access Memory(RAM)などのメモリやハードディスクなどが考えられる。なお、記憶部402にはパラメータ値、変数値などのデータを記録してもよいし、実行時のワークエリアとして用いてもよい。
記録媒体読取装置403は、制御部401の制御に従って記録媒体407に対するデータのリード/ライトを制御する。そして、記録媒体407に記録媒体読取装置403の制御で書き込まれたデータを記録させたり、記録媒体407に記録されたデータを読み取らせたりする。また、着脱可能な記録媒体407は、コンピュータで読み取り可能なnon-transitory(非一時的)な記録媒体として、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)などがある。光ディスクには、Digital Versatile Disc(DVD)、DVD−RAM、Compact Disc Read Only Memory(CD−ROM)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、Magneto-Optical disk(MO)などがある。なお、記憶部402もnon-transitory(非一時的)な記録媒体に含まれる。
入出力インタフェース404には、入出力部408が接続され、入力された情報を受信し、バス406を介して制御部401に送信する。また、制御部401からの命令に従ってディスプレイの画面上に操作情報などを表示する。入出力部408の入力装置は、例えば、キーボード、ポインティングデバイス(マウスなど)、タッチパネルなどが考えられる。なお、入出力部408の出力部であるディスプレイは、例えば、液晶ディスプレイなどが考えられる。また、出力部はCathode Ray Tube(CRT)ディスプレイ、プリンタなどの出力装置であってもよい。
通信インタフェース405は、Local Area Network(LAN)接続やインターネット接続や無線接続を行うためのインタフェースである。また、通信インタフェース205は必要に応じ、他のコンピュータとの間のLAN接続やインターネット接続や無線接続を行うためのインタフェースである。
このようなハードウェア構成を有するコンピュータを用いることによって、後述する情報管理を行う各種処理機能が実現される。その場合情報管理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体407に記録しておくことができる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの記録媒体407が販売される。また、プログラムをサーバコンピュータの記憶装置に記録しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、記録媒体407に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶部402に記憶する。そして、コンピュータは、自己の記憶部402からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、記録媒体407から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
端末の制御部と記憶部について説明する。
図5は、制御部の一実施例を示す図である。図5に示す制御部401はデータ取得部501、送信情報生成部502、表示画面生成部503を有している。データ取得部501は、例えば、利用者がブラウザなどを用いて入力したメッセージを取得する。送信情報生成部502は、情報管理装置1に送信する情報を生成する。
表示画面生成部503は、情報管理装置1から後述するメッセージ一覧表示画面を表示させるために用いる表示頁情報を受信して、表示頁情報に基づいてメッセージ一覧表示画面を端末2の出力部(表示部)に表示させる。
情報管理装置の動作について説明する。
図6、図7は、情報管理装置の動作の一実施例を示すフロー図である。ステップS601では、要求処理部302が端末2から送信される要求を、ネットワーク3を介して通信インタフェース205から受信する。要求は、例えば、後述するログイン要求、関連所在表示要求、指定頁表示要求、指定メッセージ表示要求などがある。
ステップS602では、要求処理部302がログイン要求であるか否かを判定し、ログイン要求を受信した場合(Yes)にはステップS603に移行し、ログイン要求以外の要求の場合(No)にはステップS608に移行する。ログイン要求はログインをする際に端末2から送信される情報で、ログイン情報であることを示す情報(コード)、利用者を識別する利用者識別情報(利用者ID)、認証に用いるパスワードなどが含まれている。
ステップS603(認証処理)では、認証部303がログイン情報に含まれる利用者IDとパスワードを用いて、記憶部202に記憶されている利用者情報308を参照し、パスワードが一致する利用者を特定する。
図8は、利用者情報のデータ構造の一実施例を示す図である。図8の利用者情報801は、「利用者ID」「パスワード」「表示件数N」などに記憶される情報を有している。「利用者ID」には利用者を識別する情報として、本例ではメールアドレス「123@○○.ne.jp」「124@○○.ne.jp」「125@○○.ne.jp」・・・・などが記憶されている。なお、利用者IDはメールアドレスに限定されるものではない。「パスワード」には「利用者ID」に記憶される情報各々に関連付けてパスワードが記憶されている。本例ではパスワードとして「XXXXXX」「YYYYYY」「ZZZZZZ」・・・・などが記憶されている。「表示件数N」には、端末2の画面に表示する後述するメッセージ一覧表示画面の1頁に表示するメッセージを特定するための表示情報の件数が記憶されている。本例では、メールアドレス各々に対応付けて「5」「6」「10」・・・・が記憶されている。
ステップS604では、関連表示生成部304が認証した利用者の表示件数Nを、利用者情報より取得する。図8の場合、認証された利用者の利用者ID「123@○○.ne.jp」に対応する頁表示件数「5」を取得する。
ステップS605では、関連表示生成部304が認証した利用者のメッセージ情報より、受信日時が最新のメッセージをN件分取得する。メッセージ情報は、認証した利用者へ届いたメッセージとメッセージに関する情報を、認証した利用者ごとに記憶したものである。
図9は、メッセージ情報のデータ構造の一実施例を示す図である。図9のメッセージ情報901は、「利用者ID」「受信日時」「メッセージ内容」「未開封」などに記憶される情報を有している。「利用者ID」には利用者を識別する情報として、本例ではメールアドレス・・・・「123@○○.ne.jp」・・・・が記憶されている。なお、利用者IDはメールアドレスに限定されるものではない。「受信日時」には端末2から送信されたメッセージを情報管理装置1が受信した日時を示す情報が記憶されている。本例では、2011年1月20日13時42分を示す「2011/01/20/13:42:00」、2011年1月23日14時を示す「2011/01/23/14:00:00」などが記憶されている。「メッセージ内容」にはメッセージの内容が記憶されている。図9のメッセージ情報901では、例えば、メールヘッダ(メッセージ内容より上の情報)とメッセージ内容が記憶されている。本例では便宜上メッセージ内容と記載しているが、実際にはメッセージ内容と記載している箇所にメッセージの本文に対応する情報が記憶されている。「未開封」には確認情報が記憶され、利用者によりメッセージが読まれた場合(開封)には読まれたことを示す確認情報「1」が記憶され、読まれていない場合(未開封)には読まれていないことを示す確認情報「0」が記憶される。
続いて、ステップS605で関連表示生成部304は、受信日時が最新のメッセージN件分を端末2に表示するための表示頁情報を生成する。
図10は、表示頁情報のデータ構造の一実施例を示す図である。図10の表示頁情報1001は、「頁」「受信日時」「件名」「差出人」「関連MSG所在」「表示情報」などに記憶される情報を有する。「頁」には指定された頁が記憶される。「受信日時」には、メッセージに対応する受信日時が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「受信日時」が記憶されている。本例では、受信日時を表す「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」が記憶されている。
「件名」には、メッセージに対応する件名が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「メッセージ内容」にある「Subject」に対応する文字列が記憶されている。本例では、件名として文字列「月曜はロッカー整理」「FW:どうする?」「○金手続き例、参考にして」「○金請求手続案内」「最近、スランプなんだ」が記憶されている。「差出人」には、メッセージに対応する差出人が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「メッセージ内容」にある「From」に対応する文字列が記憶されている。本例では、差出人として文字列「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」が記憶されている。「関連MSG所在」には、メッセージに関連する他のメッセージの所在が記憶される。「表示情報」には、メッセージを一覧表示するために必要な情報が記憶されている。本例では、該情報として「data1」「data2」「data3」「data4」「data5」が記憶されている。
ステップS606では、関連表示生成部304が頁と関連メッセージ情報を生成して、表示頁情報の「頁」と「関連MSG所在」それぞれに記憶する。例えば、図10の表示頁情報1002に示すように、「頁」に・・・・「5」「5」「5」「5」「5」・・・・が記憶され、「件名」の「FW:どうする?」に対応する「関連MSG所在」に関連メッセージ情報「6ページ2通目」が記憶される。
「頁」の項目に表示される内容は、受信した日時順に記憶されているメッセージ情報を、利用者情報の表示件数(メッセージ一覧表示画面の1頁に表示する件数)を用いて決定した頁数が記憶されている。例えば、1頁に表示する表示件数が5件であれば、受信日時が新しいメッセージ順に1〜5件を1頁目に表示し、6〜10件目を2頁目に表示し、11〜15件を3頁目に表示し、16〜20件目を4頁目に表示し、21〜25件を5頁目に表示し、26〜30件を6頁目に表示する。関連メッセージ情報の生成方法については後述する。
ステップS607では、表示提供部307が後述する各種の表示頁情報を端末2へ送信する。表示頁情報を受信した端末2は、表示頁情報に基づいて表示画面を表示する。
図11は、メッセージ一覧表示画面の一実施例を示す図である。表示画面1101(例えば、ウィンドウ)は端末2の表示画面生成部503により生成され、端末2の表示部(出力部)に表示される表示画面である。端末2は情報管理装置1から送信される指定頁表示に対応する表示頁情報を受信し、該表示頁情報を用いて表示領域1102を表示する。本例は、5頁目を示す図である。
表示領域1102の「頁」には、本例では表示頁情報1002に含まれる「頁」に対応する「5」が表示されている。表示領域1102の「受信日時」には、本例では表示頁情報に含まれる「受信日時」に対応する「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」が表示されている。表示領域1102の「件名」には、本例では表示頁情報に含まれる「件名」に対応する「2010/11/09/13:42」「FW:どうする?」「松井○喜」が表示されている。表示領域1102の「差出人」には、本例では表示頁情報に含まれる「差出人」に対応する「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」が表示されている。表示領域1102の「関連MSG所在」には、本例では表示頁情報に含まれる「関連MSG所在」に対応する「6ページ2通目」が表示されている。なお、表示領域1102に表示される表示画面のサイズ、枠線の太さ、文字列のフォントサイズや種類、開封/未開封を示す情報などは、表示頁情報に含まれる「表示情報」の「data1」〜「data5」などの情報により決定される。
ステップS608では、ステップS601で取得した要求処理部302が関連所在表示要求であるか否かを判定し、関連所在表示要求である場合(Yes)にはステップS609に移行し、関連所在表示要求でない場合(No)にはステップS610に移行する。関連所在表示要求は、端末2の画面上に表示されたメッセージ一覧表示画面を用いて利用者により選択されたメッセージのメッセージ識別情報と該メッセージに関連するメッセージのメッセージ識別情報を含んでいる。メッセージ一覧表示画面の表示方法は、情報管理装置1からメッセージ一覧表示画面を表示するために生成された表示頁情報を端末2が受信し、該表示頁情報を用いて端末2の表示部(出力部)に表示される。
ステップS609では、所在表示生成部305が後述する所在表示に対応する表示頁情報を生成する。その後、ステップS606に移行する。
ステップS610では、ステップS601で取得した要求処理部302が指定頁表示要求であるか否かを判定し、指定頁表示要求である場合(Yes)にはステップS611に移行し、指定頁表示要求でない場合(No)にはステップS612に移行する。指定頁表示要求は、利用者が端末2を用いて指定した頁(指定頁M)と表示件数Nを有している。
ステップS611では、指定表示生成部306が認証された利用者のメッセージ情報の((指定頁M−1)×表示件数N)+1件目からN件分のメッセージ情報を取得し、指定頁表示に対応する表示頁情報を生成する。
例えば、指定頁Mが5で、表示件数Nが5である場合、4×5+1=21を求めて21件目から5件分のメッセージ(指定頁情報312)を取得する。続いて、取得した5件分のメッセージを一覧表示(指定頁表示に対応する表示画面)するための表示頁情報を生成する。その後、ステップS606に移行する。
ステップS612では、要求処理部302が指定メッセージ表示要求であるか否かを判定し、指定メッセージ表示要求である場合(Yes)にはステップS613に移行し、指定メッセージ表示要求でない場合(No)にはステップS601に移行する。指定メッセージ表示要求は、利用者が図11に示した表示画面を用いて指定したメッセージを示す情報を有している。例えば、図11の表示領域1102の「2010/11/09/13:42」「FW:どうする?」「松井○喜」を有する行が選択されると、該行に対応するメッセージを取得するための指定メッセージ表示要求が、端末2から情報管理装置1に送信される。
ステップS613では、指定表示生成部306が指定されたメッセージ情報の指定メッセージ表示に対応する表示頁情報を生成する。例えば、記憶部202のメッセージ情報901から「メッセージ内容」に記憶されているメッセージを表示させるための情報(指定メッセージ情報313)を取得し、取得した情報を含む指定メッセージ表示に対応する表示頁情報を生成する。その後、ステップS607に移行する。
関連表示生成部の動作(図6のステップS606)について説明する。
関連表示生成部304は、ステップS605、S609、S611で生成された表示頁情報に、頁、関連メッセージ情報、リンク情報を追加する。
図12は、関連表示生成部の動作の一実施例を示すフロー図である。ステップS1201では、関連表示生成部304がメッセージをカウントするために用いる変数であるメッセージ件数Lを1に設定する。
ステップS1202では、関連表示生成部304がメッセージ件数Lの示すメッセージ情報の「メッセージ内容」から関連検出情報を検索する。関連検出情報は、例えば、「In−Reply−To」「References」などが考えられる。In−Reply−To」は、返信時にどのメッセージへの返信かを示し、通常はメッセージ識別情報が指定される。Referencesは、返信などで関係している他のメッセージの一覧を示す場合に用い、通常はMessage−IDが複数指定される。多くのメーラーではここの値を用いて、スレッド表示を行う。
ステップS1203で関連表示生成部304が、関連検出情報があるか否かを判定し、関連検出情報がある場合(Yes)にはステップS1204に移行し、関連検出情報がない場合(No)にはステップS1208に移行する。
ステップS1204では、関連表示生成部304が関連検出情報に対応するメッセージ識別情報を取得し、関連メッセージ情報とする。図9のメッセージ情報901の受信日時「2011/01/20/13:42:00」に対応する「メッセージ内容」に記憶されている情報を検索した場合、「In−Reply−To」を検出する。続いて、「In−Reply−To」に対応するメッセージ識別情報「2011020100906163100001@○○.ne.jp」を取得する。
ステップS1205では、関連表示生成部304が関連メッセージ情報と一致するメッセージ識別情報を有するメッセージを検索する。例えば、メッセージ情報の「メッセージ内容」に記憶されているメッセージを識別するための「Message−ID」を検索する。続いて、関連メッセージ情報と一致する「Message−ID」に対応するメッセージ識別情報を検索する。
ステップS1206では、関連表示生成部304が関連メッセージ情報と一致するメッセージ識別情報を有するメッセージであるか否かを判定し、一致するメッセージ識別情報を有するメッセージである場合(Yes)にはステップS1207に移行する。ない場合(No)にはステップS1208に移行する。
ステップS1207では、関連表示生成部304が一致したメッセージ識別情報を有するメッセージが何頁目の何通目になるかを求める。何頁目の何通目になるかを求める方法は、利用者各々に対応する利用者情報の「表示件数N」に記憶されている1頁に表示する件数と、メッセージ件数Lを用いて、頁(何頁目)と頁内における件数(何通目)を求める。例えば、表示件数Nが5件で、関連メッセージ情報と一致するメッセージ識別情報を有するメッセージが最新の受信日時から27件目(メッセージ件数L)に受信された場合、6頁(何頁目)の2件数(何通目)にする。
続いて、関連表示生成部304が求めた頁(何頁目)と頁内における件数(何通目)を用いて、関連表示に対応する表示頁情報を生成する。
図13は、表示頁情報のデータ構造を示す図である。図13の表示頁情報1301は、「頁」「受信日時」「件名」「差出人」「関連MSG所在」「表示情報」などに記憶される情報を有する。「頁」には頁が記憶される。本例では頁数として・・・・「5」「6」・・・・が記憶されている。「受信日時」には、メッセージ各々に対応する受信日時が記憶されている。例えば、メッセージ各々に対応する記憶部202に記憶されているメッセージ情報の「受信日時」が記憶されている。本例では、受信日時を表す・・・・「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」・・・・が記憶されている。「件名」には、メッセージ各々に対応する件名が記憶されている。本例では、件名として文字列・・・・「月曜はロッカー整理」「FW:どうする?」「○金手続き例、参考にして」「○金請求手続案内」「最近、スランプなんだ」・・・・が記憶されている。「差出人」には、メッセージに対応する差出人が記憶されている。本例では、差出人として文字列・・・・「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」・・・・が記憶されている。
「関連MSG所在」には、メッセージに関連する他のメッセージの所在が記憶されている。本例では、「2010/11/09/13:42」「FW:どうする?」「松井○喜」を有する行に対応するメッセージに関連する他のメッセージの所在「6ページ2通目」が記憶されている。例えば、上記した関連表示生成部304が求めた頁(何頁目)と頁内における件数(何通目)を用いて、6頁の2件目を示す情報「6ページ2通目」を生成する。
「表示情報」には、メッセージを一覧表示するために必要な情報が記憶されている。本例では、該情報として・・・・「data1」「data2」「data3」「data4」「data5」「data6」「data7」・・・・が記憶されている。なお、関連表示に対応する表示頁情報に基づいて表示される端末2の表示画面は、表示頁情報に含まれる「表示情報」の・・・・「data1」〜「data7」・・・・などの情報を用いて生成される。例えば、表示画面のサイズ、枠線の太さ、文字列のフォントサイズや種類、開封/未開封を示す情報などが決定される。なお、「表示情報」の・・・・「data1」〜「data7」・・・・などの情報はリンク情報を含んでいる。リンク情報は、例えば、図11の表示領域1102に示すように「6ページ2通目」が表示されている場合、端末2の画面に表示された「6ページ2通目」を選択すると6頁に表示を切り替える処理を実行させるリンク情報を含んでいる。
ステップS1208では、関連表示生成部304がメッセージ件数L=L+1を求める。
ステップS1209では、関連表示生成部304がメッセージ件数Lと表示件数Nを比較し、L>Nである場合には関連表示生処理を終了(Yes)し、L≦Nである場合(No)にはステップS1202に移行する。
所在表示生成部の動作について説明する。
図14、図15は、所在表示生成部の動作の一実施例を示すフロー図である。図16は、メッセージ情報のデータ構造の一実施例を示す図である。
ステップS1401では、所在表示生成部305が関連所在表示要求に含まれる元のメッセージ識別情報と該メッセージ識別情報に関連する関連メッセージ情報を取得する。図11の表示画面1101の「関連MSG所在」に記憶されている「6ページ2通目」が利用者に選択されると、端末2から情報管理装置1に関連所在表示要求が送信される。
ステップS1402では、所在表示生成部305が関連メッセージ情報をメッセージ識別情報としてもつメッセージを、認証した利用者のメッセージ情報を参照して特定する。例えば、図16のメッセージ情報1601の「メッセージ内容」各々を参照し、「メッセージ内容」に記憶されている「Message−ID」に対応するメッセージ識別情報と取得した関連メッセージ情報が一致しているメッセージを特定する。
図16のメッセージ情報1601は、「利用者ID」「受信日時」「メッセージ内容」「未開封」などに記憶される情報を有している。「利用者ID」には利用者を識別する情報として、本例ではメールアドレス・・・・「123@○○.ne.jp」・・・・が記憶されている。なお、利用者IDはメールアドレスに限定されるものではない。「受信日時」には端末2から送信されたメッセージを情報管理装置1が受信した日時を示す情報が記憶されている。本例では、受信日時を示す情報が新しい順に・・・・「r_date1」〜「r_date37」・・・・が記憶されている。「メッセージ内容」にはメッセージの内容が記憶されている。本例では、メッセージ内容を示す情報・・・・「Message1」〜「Message37」・・・・が記憶されている。例えば、図9のメッセージ情報901に示したメールヘッダとメッセージ内容などが記憶されている。「未開封」には確認情報が記憶され、利用者によりメッセージが読まれた場合(開封)には読まれたことを示す確認情報「1」が記憶され、読まれていない場合(未開封)には読まれていないことを示す確認情報「0」が記憶される。
ステップS1403では、所在表示生成部305がメッセージ一覧表示画面に表示するメッセージの表示件数Nを利用者情報308から取得する。本例では、表示件数Nを5とする。
ステップS1404では、所在表示生成部305が特定したメッセージの位置(行数R)を、メッセージ情報を用いて取得する。例えば、図16のメッセージ情報1601の認証した利用者の「利用者ID」が「123@○○.ne.jp」の場合、「123@○○.ne.jp」に関連する1つ以上のメッセージ各々の受信日時を新しい順に数えて、ステップS1402で特定したメッセージの位置(行数R)を求める。図16の例では、メッセージ情報1601の認証した利用者の27行目に関連メッセージ情報がある。
ステップS1405では、所在表示生成部305が後述する表示最適領域情報314を初期化する。図17は、表示最適領域情報のデータ構造とメッセージ一覧表示画面の一実施例を示す図である。図17の記憶部202に記憶されている表示最適領域情報1701は、「表示対象位置」「未開封数」に記憶される情報を有している。
ステップS1406では、所在表示生成部305がメッセージをカウントするために用いる変数であるPを1に設定する。
ステップS1407では、所在表示生成部305が行数Rと表示件数NとカウントPを用いて、R−N+Pを求める。続いて、メッセージ情報の認証した利用者のメッセージ各々のうち、受信日時が新しい順にR−N+P番目のメッセージを特定する。例えば関連メッセージ情報の27行目で、表示件数Nが5で、カウントPが1〜5となる場合、図16ではP=1のとき23行目、P=2のとき24行目、P=3のとき25行目、P=4のとき26行目、P=5のとき27行目が求められる。
続いて、R−N+P番目からN件分の行について未開封の行の合計を求める。図16の場合、23行目〜27行目においては未開封の行の合計は1行である。24行目〜28行目においては未開封の行の合計は2行である。25行目〜29行目においては未開封の行の合計は3行である。26行目〜30行目においては未開封の行の合計は3行である。27行目〜31行目においては未開封の行の合計は3行である。
ステップS1408では、所在表示生成部305が行数Rと表示件数NとカウントPを用いて、R−N+Pを表示対象位置とし、未開封の行数を未開封数とし表示最適領域情報に記憶する。図16の場合、図17の「表示対象位置」にはステップS1407で求められる行「23−27」「24−28」「25−29」「26−30」「27−31」が記憶されている。「未開封数」には、ステップS1407で求められる合計が「表示対象位置」に関連付けられて記憶されている。本例では、「23−27」に関連付けて合計「1」、「24−28」に関連付けて合計「2」、「25−29」に関連付けて合計「3」、「26−30」に関連付けて合計「3」、「27−31」に関連付けて合計「3」が記憶されている。
図15のステップS1409では、所在表示生成部305がメッセージをカウントするために用いる変数であるPに1を加算(P=P+1)して、次のメッセージを選択する。
ステップS1410では、所在表示生成部305がカウントPと件数Nを比較し、P>Nである場合(Yes)にはステップS1411し、P≦Nである場合(No)にはステップS1407に移行する。
ステップS1411では、所在表示生成部305が表示最適領域情報から、未開封数が一番多い「表示対象位置」の情報を抽出する。図16と図17の例では未開封数が一番多い合計3に関連する「表示対象位置」の情報(グループ)「25−29」「26−30」「27−31」を抽出する。しかし、本例では3つ抽出されているのでどれかを1つを選択する。選択方法は、例えば、27行目が表示の中心近くに表示される「25−29」を選択することが考えられる。ただし、上記選択方法に限定されるものではなく、最も合計が多いグループが複数ある場合、27行目のメッセージの順が中心より前にあるグループを特定してもよい。
ステップS1412では、所在表示生成部305が選択した表示対象位置に対応する行のメッセージを、メッセージ情報を参照して検出し、表示頁情報の該メッセージ各々の「頁」「受信日時」「件名」「差出人」「関連MSG所在」に記憶させる情報を取得して、表示頁情報を生成する。
端末2が表示頁情報を受信する、表示頁情報に基づいて図17に示す表示画面1702が表示される。なお、「subject28」「subject29」は件名を示している。また、「ccc」「ddd」は差出人を示している。
実施形態1によれば、関連するメッセージをメッセージ一覧表示画面の表示領域内に表示する際に、受信日時が新しい順に表示領域内の何番目の行として表示させるかを、関連するメッセージの付近に存在する未読メッセージの個数により決定する。その結果、関連するメッセージの付近に存在する未読メッセージがあることを把握することができるという効果を奏する。
なお、関連するメッセージを示す上記メッセージ一覧表示画面の表示領域内に表示された「6ページ2通目」などは文字列をクリッカブルな状態で表示してもよい。また、表示するリンクボタンなどを用意してもよい。
さらに、過去のメールは関連するメッセージで無ければならない必要はなく、現在表示中のメッセージ一覧の中には含まれていないメッセージであって、過去受信済みのメッセージであれば、どれが表示対象として選択されても本願の仕組を動作させるキッカケとして利用できる。
実施形態2について説明する。
実施形態2は、実施形態1で説明した情報管理装置1が実行した表示に関する処理を端末2で行う場合である。実施形態2における端末2の制御部と記憶部について説明する。図18は、実施形態2の端末の制御部と記憶部の一実施例を示す図である。図18に示す制御部401はメッセージ処理部1801、関連表示生成部1802、所在表示生成部1803、指定表示生成部1804、表示画面生成部1805を有している。
メッセージ処理部1801は、端末2にメッセージが届いたときメッセージを受信日時と関連付けて記憶する処理などを実行する。また、例えば、電子メールを制御する機能を実行する。
関連表示生成部1802は、受信したメッセージに関連するメッセージがある場合、関連するメッセージの所在を示す関連メッセージ情報を生成する。
所在表示生成部1803は、受信した第1のメッセージに関連する関連メッセージ情報が選択されると、関連メッセージ情報の示す第2のメッセージを特定する。続いて、メッセージ情報を参照し、第2のメッセージの受信日時に近い受信日時に関連付けられている複数の第3のメッセージと前記第2のメッセージを決められた件数取得して複数のグループを生成する。それとともに、グループごとに第2のメッセージのグループ内での表示順が異なるように第3のメッセージを選択し、グループごとに第2のメッセージと第3のメッセージ各々の確認情報を参照し、読まれていない第2のメッセージと第3のメッセージ各々の数を求める。その結果、最も多いグループを特定し、特定したグループに含まれるメッセージに関連する受信日時と特定情報と関連メッセージ情報を画面に表示させるための表示頁情報を生成する。なお、グループは、例えば、後述する図29に示す表示最適領域情報2901などである。
メッセージ情報には、受信したメッセージに含まれるメッセージ内容と、メッセージを受信した受信日時と、メッセージが利用者により読まれたか否かを示す確認情報と、を関連付けて前記受信日時の順に記憶している。
表示画面情報には、受信日時と、特定情報と、関連メッセージ情報と、スクロール表示位置と、表示情報と、を関連付けて前記受信日時の順に記憶している。特定情報は、メッセージ内容に含まれるメッセージを特定する情報である。関連メッセージ情報は、メッセージに関連するメッセージの所在を示す情報である。スクロール表示位置は、メッセージごとに関連付けられた受信日時と特定情報と関連メッセージ情報とが表示されることを示す情報である。表示情報は、受信日時と特定情報と関連メッセージ情報を画面に表示させるための情報である。
指定表示生成部1804は、指定された頁または指定されたメッセージを表示させるための表示画面情報を生成する。
表示画面生成部1805は、後述する表示画面情報を受信して、表示画面情報に基づいてメッセージ一覧表示画面を端末2の出力部(表示部)に表示させる。
図18に示す記憶部402は後述するメッセージ情報1806、関連表示情報1807、所在表示情報1808、指定表示情報1809、指定メッセージ情報1810、表示最適領域情報1811などを有している。
端末の動作について説明する。
図19、図20は、実施形態2の端末の動作の一実施例を示すフロー図である。ステップS1901では、端末2の入出力部408から入力される指示(要求)を入出力インタフェース404から受信する。要求は、例えば、後述する一覧表示要求、関連所在表示要求、スクロール表示要求、指定メッセージ表示要求などがある。
ステップS1902では、メッセージ情報1806が一覧表示要求であるか否かを判定し、一覧表示要求を受信した場合(Yes)にはステップS1903に移行し、一覧表示要求以外の要求の場合(No)にはステップS1907に移行する。一覧表示要求はメッセージ一覧表示画面を入出力部408に表示部に表示させるための情報が含まれている。
ステップS1903では、関連表示生成部1802がメッセージ一覧表示画面に表示するメッセージの表示件数を取得する。例えば、現在表示されているメッセージ一覧表示画面に表示されている件数を表示件数Nとすることが考えられる。また、表示件数Nは固定値でもよい。
図21は、実施形態2のメッセージ一覧表示画面の一実施例を示す図である。表示画面2101(例えば、ウィンドウ)は端末2の表示画面生成部1805により生成され、端末2の表示部(出力部)に表示される表示画面である。端末2は表示画面情報を用いて表示領域2102を表示する。
表示領域2102の「受信日時」には、本例では表示画面情報に含まれる「受信日時」に対応する「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」が表示されている。表示領域2102の「件名」には、本例では表示画面情報に含まれる「件名」に対応する「2010/11/09/13:42」「FW:どうする?」「松井○喜」が表示されている。表示領域2102の「差出人」には、本例では表示画面情報に含まれる「差出人」に対応する「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」が表示されている。表示領域2102の「関連MSG所在」には、本例では表示画面情報に含まれる「関連MSG所在」に対応する「27通目」が表示されている。なお、表示領域2102に表示される表示画面のサイズ、枠線の太さ、文字列のフォントサイズや種類、開封/未開封を示す情報などは、後述する表示画面情報に含まれる「表示情報」の「data1」〜「data5」などの情報により決定される。
ステップS1904では、関連表示生成部1802がメッセージ情報より受信した全メッセージに関連する情報を取得する。メッセージ情報は、利用者へ届いたメッセージとメッセージに関する情報を記憶したものである。
図22は、実施形態2のメッセージ情報のデータ構造の一実施例を示す図である。図22のメッセージ情報2201は、「受信日時」「メッセージ内容」「未開封」などに記憶される情報を有している。「受信日時」には端末2から送信されたメッセージを情報管理装置1が受信した日時を示す情報が記憶されている。本例では、2011年1月20日13時42分を示す「2011/01/20/13:42:00」、2011年1月23日14時を示す「2011/01/23/14:00:00」などが記憶されている。「メッセージ内容」にはメッセージの内容が記憶されている。図22のメッセージ情報2201では、例えば、メールヘッダ(メッセージ内容より上の情報)とメッセージ内容が記憶されている。本例では便宜上メッセージ内容と記載しているが、実際にはメッセージ内容と記載している箇所にメッセージの本文に対応する情報が記憶されている。「未開封」には確認情報が記憶され、利用者によりメッセージが読まれた場合(開封)には読まれたことを示す確認情報「1」が記憶され、読まれていない場合(未開封)には読まれていないことを示す確認情報「0」が記憶される。
続いて、ステップS1904で関連表示生成部1802は取得したメッセージに関連する情報を用いて現在のスクロール位置に該当するN件分の表示画面情報を生成する。
図23は、実施形態2の表示画面情報のデータ構造の一実施例を示す図である。図23の表示画面情報2301は、「スクロール表示位置」「受信日時」「件名」「差出人」「関連MSG所在」「表示情報」などに記憶される情報を有する。「スクロール表示位置」には現在のスクロール位置において表示させるメッセージであることを示す情報が記憶される。本例では、現在のスクロール位置において表示させるメッセージであることを示す情報を示す「1」が記憶され、表示しないメッセージには「0」が記憶されている。
「受信日時」には、メッセージに対応する受信日時が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「受信日時」が記憶されている。本例では、受信日時を表す「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」が記憶されている。
「件名」には、メッセージに対応する件名が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「メッセージ内容」にある「Subject」に対応する文字列が記憶されている。本例では、件名として文字列「月曜はロッカー整理」「FW:どうする?」「○金手続き例、参考にして」「○金請求手続案内」「最近、スランプなんだ」が記憶されている。「差出人」には、メッセージに対応する差出人が記憶されている。例えば、メッセージに対応する記憶部202に記憶されているメッセージ情報の「メッセージ内容」にある「From」に対応する文字列が記憶されている。本例では、差出人として文字列「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」が記憶されている。「関連MSG所在」には、メッセージに関連する他のメッセージの所在が記憶される。「表示情報」には、メッセージを一覧表示するために必要な情報が記憶されている。本例では、該情報として「data1」「data2」「data3」「data4」「data5」が記憶されている。
ステップS1905では、関連表示生成部1802がスクロール表示位置と関連メッセージ情報を生成して、表示画面情報の「スクロール表示位置」と「関連MSG所在」それぞれに記憶する。「スクロール表示位置」の項目には、図21のスクロール表示領域2103の表示位置に対応した箇所のメッセージを表示させる情報が記憶されている。例えば、図23の表示画面情報2302に示すように、「スクロール表示位置」に・・・・「1」「1」「1」「1」「1」・・・・が記憶される。また、「件名」の「FW:どうする?」に対応する「関連MSG所在」には関連メッセージ情報「27通目」が記憶される。
ステップS1906では、表示画面生成部1805が後述する各種の表示画面情報を端末2へ送信する。表示画面情報を受信した端末2は、表示画面情報に基づいて表示画面を表示する。
ステップS1907では、所在表示生成部1803がステップS1901で取得した要求が関連所在表示要求であるか否かを判定し、関連所在表示要求である場合(Yes)にはステップS1908に移行し、関連所在表示要求でない場合(No)にはステップS1909に移行する。関連所在表示要求は、端末2の画面上に表示されたメッセージ一覧表示画面を用いて利用者により選択されたメッセージのメッセージ識別情報と該メッセージに関連するメッセージのメッセージ識別情報を含んでいる。メッセージ一覧表示画面の表示方法は、メッセージ一覧表示画面を表示するために生成された表示画面情報を用いて端末2の表示部(出力部)に表示される。
ステップS1908では、所在表示生成部1803が後述する所在表示に対応する表示画面情報を生成する。その後、ステップS1905に移行する。
ステップS1909では、ステップS1901で取得した要求がスクロール表示要求であるか否かを判定し、スクロール要求である場合(Yes)にはステップS1910に移行し、スクロール表示要求でない場合(No)にはステップS1911に移行する。スクロール表示要求は、利用者がメッセージ一覧表示画面のスクロール領域を用いて、表示させたいメッセージを選ぶために表示画面をスクロールさせたときに、スクロールした表示位置に対応するメッセージを表示させる情報を含んでいる。該情報は、現在のメッセージ一覧表示画面のサイズ(H1)とメッセージ1件あたりの表示サイズ(H2)により決まる表示件数Nを有している。
ステップS1910では、指定表示生成部1804が現在のスクロール表示位置に対応するN件分の表示をする表示画面情報を生成する。
例えば、スクロール表示位置に対応する表示件数Nが5である場合、スクロール表示位置に対応する5件分のメッセージ(指定表示情報1809)を取得する。続いて、取得した5件分のメッセージを一覧表示するための表示画面情報を生成する。その後、ステップS1905に移行する。
ステップS1911では、指定メッセージ表示要求であるか否かを判定し、指定メッセージ表示要求である場合(Yes)にはステップS1912に移行し、指定メッセージ表示要求でない場合(No)にはステップS1901に移行する。指定メッセージ表示要求は、利用者が図21に示した表示画面を用いて指定したメッセージを示す情報を有している。例えば、図21の表示領域2102の「2010/11/09/13:42」「FW:どうする?」「松井○喜」を有する行が選択されると、該行に対応するメッセージを取得するための指定メッセージ表示要求が生成される。
ステップS1912では、指定表示生成部1804が指定されたメッセージ情報の指定メッセージ表示に対応する表示画面情報を生成する。例えば、記憶部402のメッセージ情報2201から「メッセージ内容」に記憶されているメッセージを表示させるための情報(指定メッセージ情報1810)を取得し、取得した情報を含む指定メッセージ表示に対応する表示画面情報を生成する。その後、ステップS1906に移行する。
関連表示生成部の動作(図19のステップS1905)について説明する。
関連表示生成部1802は、ステップS1904、S1908、S1910で生成された表示画面情報に、スクロール表示位置、関連メッセージ情報、リンク情報を追加する。
図24は、実施形態2の関連表示生成部の動作の一実施例を示すフロー図である。ステップS2401では、関連表示生成部1802がメッセージをカウントするために用いる変数であるメッセージ件数Lを1に設定する。
ステップS2402では、関連表示生成部1802がメッセージ件数Lの示すメッセージ情報の「メッセージ内容」から関連検出情報を検索する。関連検出情報は、例えば、「In−Reply−To」「References」などが考えられる。In−Reply−To」は、返信時にどのメッセージへの返信かを示し、通常はメッセージ識別情報が指定される。Referencesは、返信などで関係している他のメッセージの一覧を示す場合に用い、通常はMessage−IDが複数指定される。多くのメーラーではここの値を用いて、スレッド表示を行う。
ステップS2403で関連表示生成部1802が、関連検出情報があるか否かを判定し、関連検出情報がある場合(Yes)にはステップS2404に移行し、関連検出情報がない場合(No)にはステップS2408に移行する。
ステップS2404では、関連表示生成部1802が関連検出情報に対応するメッセージ識別情報を取得し、関連メッセージ情報とする。図22のメッセージ情報2201の受信日時「2011/01/20/13:42:00」に対応する「メッセージ内容」に記憶されている情報を検索した場合、「In−Reply−To」を検出する。続いて、「In−Reply−To」に対応するメッセージ識別情報「2011020100906163100001@○○.ne.jp」を取得する。
ステップS2405では、関連表示生成部1802が関連メッセージ情報と一致するメッセージ識別情報を有するメッセージを検索する。例えば、メッセージ情報の「メッセージ内容」に記憶されているメッセージを識別するための「Message−ID」を検索する。続いて、関連メッセージ情報と一致する「Message−ID」に対応するメッセージ識別情報を検索する。
ステップS2406では、関連表示生成部1802が関連メッセージ情報と一致するメッセージ識別情報を有するメッセージであるか否かを判定し、一致するメッセージ識別情報を有するメッセージである場合(Yes)にはステップS2407に移行する。ない場合(No)にはステップS2408に移行する。
ステップS2407では、関連表示生成部1802が一致したメッセージ識別情報を有するメッセージが何件目になるかを求める。
続いて、関連表示生成部1802が求めた何通目を用いて、関連表示に対応する表示画面情報を生成する。
図25は、実施形態2の表示画面情報のデータ構造を示す図である。図25の表示画面情報2501は、「スクロール表示位置」「受信日時」「件名」「差出人」「関連MSG所在」「表示情報」などに記憶される情報を有する。「スクロール表示位置」には表示させるメッセージを示す情報が記憶される。本例では・・・・「1」「1」「1」「1」「1」・・・・が記憶されている。「受信日時」には、メッセージ各々に対応する受信日時が記憶されている。例えば、メッセージ各々に対応する記憶部402に記憶されているメッセージ情報の「受信日時」が記憶されている。本例では、受信日時を表す・・・・「2011/01/04/14:00」「2010/11/09/13:42」「2010/10/04/11:20」「2010/09/06/16:31」「2010/09/06/15:58」・・・・が記憶されている。「件名」には、メッセージ各々に対応する件名が記憶されている。本例では、件名として文字列・・・・「月曜はロッカー整理」「FW:どうする?」「○金手続き例、参考にして」「○金請求手続案内」「最近、スランプなんだ」・・・・が記憶されている。「差出人」には、メッセージに対応する差出人が記憶されている。本例では、差出人として文字列・・・・「広岡○朗」「松井○喜」「野茂○雄」「○金機構」「鈴木○郎」・・・・が記憶されている。
「関連MSG所在」には、メッセージに関連する他のメッセージの所在が記憶されている。本例では、「2010/11/09/13:42」「FW:どうする?」「松井○喜」を有する行に対応するメッセージに関連する他のメッセージの所在「27通目」が記憶されている。例えば、上記した関連表示生成部1802が求めた件数(何通目)を用いて、27件目を示す情報「27通目」を生成する。
「表示情報」には、メッセージを一覧表示するために必要な情報が記憶されている。本例では、該情報として・・・・「data1」「data2」「data3」「data4」「data5」「data6」「data7」・・・・が記憶されている。なお、関連表示に対応する表示画面情報に基づいて表示される端末2の表示画面は、表示画面情報に含まれる「表示情報」の・・・・「data1」〜「data7」・・・・などの情報を用いて生成される。例えば、表示画面のサイズ、枠線の太さ、文字列のフォントサイズや種類、開封/未開封を示す情報などが決定される。なお、「表示情報」の・・・・「data1」〜「data7」・・・・などの情報はリンク情報を含んでいる。リンク情報は、例えば、図21の表示領域2102に示すように「27通目」が表示されている場合、端末2の画面に表示された「27通目」を選択すると27件目が表示されるように切り替える処理が実行させるリンク情報を含んでいる。
ステップS2408では、関連表示生成部1802がメッセージ件数L=L+1を求める。
ステップS2409では、関連表示生成部1802がメッセージ件数Lと表示件数Nを比較し、L>Nである場合には関連表示生処理を終了(Yes)し、L≦Nである場合(No)にはステップS2402に移行する。
所在表示生成部の動作について説明する。
図26、図27は、実施形態2の所在表示生成部の動作の一実施例を示すフロー図である。図28は、実施形態2のメッセージ情報のデータ構造の一実施例を示す図である。
ステップS2601では、所在表示生成部1803が関連所在表示要求に含まれる元のメッセージ識別情報と該メッセージ識別情報に関連する関連メッセージ情報を取得する。図21の表示画面2101の「関連MSG所在」に記憶されている「27通目」が利用者により選択されると、関連所在表示要求が生成される。
ステップS2602では、所在表示生成部1803が関連メッセージ情報をメッセージ識別情報としてもつメッセージを、メッセージ情報を参照して特定する。例えば、図22のメッセージ情報2201の「メッセージ内容」各々を参照し、「メッセージ内容」に記憶されている「Message−ID」に対応するメッセージ識別情報と取得した関連メッセージ情報が一致しているメッセージを特定する。
図28のメッセージ情報2801は、「受信日時」「メッセージ内容」「未開封」などに記憶される情報を有している。「受信日時」には端末2から送信されたメッセージを情報管理装置1が受信した日時を示す情報が記憶されている。本例では、受信日時を示す情報が新しい順に・・・・「r_date1」〜「r_date35」・・・・が記憶されている。「メッセージ内容」にはメッセージの内容が記憶されている。本例では、メッセージ内容を示す情報・・・・「Message1」〜「Message35」・・・・が記憶されている。例えば、図22のメッセージ情報2201に示したメールヘッダとメッセージ内容などが記憶されている。「未開封」には確認情報が記憶され、利用者によりメッセージが読まれた場合(開封)には読まれたことを示す確認情報「1」が記憶され、読まれていない場合(未開封)には読まれていないことを示す確認情報「0」が記憶される。
ステップS2603では、所在表示生成部1803がメッセージ一覧表示画面に表示するメッセージの表示件数Nを取得する。本例では、表示件数Nを5とする。現在のメッセージ一覧表示画面のサイズ(H1)とメッセージ1件あたりの表示サイズ(H2)により決まる表示件数Nを有している。
ステップS2604では、所在表示生成部1803が特定したメッセージの位置(行数R)を、メッセージ情報を用いて取得する。例えば、図28のメッセージ情報2801のメッセージ各々の受信日時を新しい順に数えて、ステップS2602で特定したメッセージの位置(行数R)を求める。図28の例では、メッセージ情報2801の27行目に関連メッセージ情報がある。
ステップS2605では、所在表示生成部1803が後述する表示最適領域情報を初期化する。図29は、実施形態2の表示最適領域情報のデータ構造のメッセージ一覧表示画面の一実施例を示す図である。図29の記憶部402に記憶されている表示最適領域情報2901は、「表示対象位置」「未開封数」に記憶される情報を有している。
ステップS2606では、所在表示生成部1803がメッセージをカウントするために用いる変数であるPを1に設定する。
ステップS2607では、所在表示生成部1803が行数Rと表示件数NとカウントPを用いて、R−N+Pを求める。続いて、メッセージ情報の認証した利用者のメッセージ各々のうち、受信日時が新しい順にR−N+P番目のメッセージを特定する。例えば関連メッセージ情報の27行目で、表示件数Nが5で、カウントPが1〜5となる場合、図28ではP=1のとき23行目、P=2のとき24行目、P=3のとき25行目、P=4のとき26行目、P=5のとき27行目が求められる。
続いて、R−N+P番目からN件分の行について未開封の行の合計を求める。図28の場合、23行目〜27行目においては未開封の行の合計は1行である。24行目〜28行目においては未開封の行の合計は2行である。25行目〜29行目においては未開封の行の合計は3行である。26行目〜30行目においては未開封の行の合計は3行である。27行目〜31行目においては未開封の行の合計は3行である。
ステップS2608では、所在表示生成部1803が行数Rと表示件数NとカウントPを用いて、R−N+Pを表示対象位置とし、未開封の行数を未開封数とし表示最適領域情報に記憶する。図28の場合、図29の「表示対象位置」にはステップS2607で求められる行「23−27」「24−28」「25−29」「26−30」「27−31」が記憶されている。「未開封数」には、ステップS2607で求められる合計が「表示対象位置」に関連付けられて記憶されている。本例では、「23−27」に関連付けて合計「1」、「24−28」に関連付けて合計「2」、「25−29」に関連付けて合計「3」、「26−30」に関連付けて合計「3」、「27−31」に関連付けて合計「3」が記憶されている。
図27のステップS2609では、所在表示生成部1803がメッセージをカウントするために用いる変数であるPに1を加算(P=P+1)して、次のメッセージを選択する。
ステップS2610では、所在表示生成部1803がカウントPと件数Nを比較し、P>Nである場合(Yes)にはステップS2611し、L≦Nである場合(No)にはステップS2607に移行する。
ステップS2611では、所在表示生成部1803が表示最適領域情報から、未開封数が一番多い「表示対象位置」の情報を抽出する。図28と図29の例では未開封数が一番多い合計3に関連する「表示対象位置」の情報(グループ)「25−29」「26−30」「27−31」を抽出する。しかし、本例では3つ抽出されているのでどれかを1つを選択する。選択方法は、例えば、27行目が表示の中心近くに表示される「25−29」を選択することが考えられる。ただし、上記選択方法に限定されるものではなく、最も合計が多いグループが複数ある場合、27行目のメッセージの順が中心より前にあるグループを特定してもよい。
ステップS2612では、所在表示生成部1803が選択した表示対象位置に対応する行のメッセージを、メッセージ情報を参照して検出し、表示画面情報の該メッセージ各々の「受信日時」「件名」「差出人」「関連MSG所在」に記憶させる情報を取得して、表示画面情報を生成する。
端末2が表示画面情報に基づいて図29に示す表示画面2902を表示させる。なお、「subject28」「subject29」は件名を示している。また、「ccc」「ddd」は差出人を示している。
実施形態2によれば、関連するメッセージをメッセージ一覧表示画面の表示領域内に表示する際に、受信日時が新しい順に表示領域内の何番目の行として表示させるかを、関連するメッセージの付近に存在する未読メッセージの個数により決定する。その結果、関連するメッセージの付近に存在する未読メッセージがあることを把握することができるという効果を奏する。
なお、関連するメッセージを示す上記メッセージ一覧表示画面の表示領域内に表示された「27通目」などは文字列をクリッカブルな状態で表示してもよい。また、表示するリンクボタンなどを用意してもよい。
さらに、過去のメールは関連するメッセージで無ければならない必要はなく、現在表示中のメッセージ一覧の中には含まれていないメッセージであって、過去受信済みのメッセージであれば、どれが表示対象として選択されても本願の仕組を動作させるキッカケとして利用できる。
また、本発明は、上記実施の形態に限定されるものでなく、本発明の要旨を逸脱しない範囲内で種々の改良、変更が可能である。