図1は、本実施形態に係る情報処理システムとしてのメッセージ送信システム10の構成概略図である。メッセージ送信システム10は、複数のクライアント端末12、コンテンツ管理サーバ14、及び、情報処理装置としてのメッセージ送信サーバ16を含んで構成される。複数のクライアント端末12、コンテンツ管理サーバ14、及びメッセージ送信サーバ16は、LANあるいはインターネットなどの通信回線18を介して互いに通信可能に接続されている。
メッセージ送信システム10は、利用者(ユーザ)に対して電子メッセージの送信サービスを提供するシステムである。メッセージ送信システム10によれば、送信元ユーザは、予めコンテンツ管理サーバ14にコンテンツを記憶させておくことで、送信先ユーザに対して、当該コンテンツのリンク情報(アクセス先、例えばURLなど)を含む電子メッセージを送信することができる。送信先ユーザは、受信した電子メッセージに含まれるリンク情報に基づいて、コンテンツ管理サーバ14に記憶されたコンテンツにアクセスすることができる。
クライアント端末12は、メッセージ送信システム10を利用するユーザが使用する端末である。クライアント端末12は、一般的なコンピュータであってよく、例えばパーソナルコンピュータあるいはタブレット端末などである。クライアント端末12は、ROM、RAM、あるいはハードディスクなどから構成される記憶部、通信モジュールなどから構成される通信部、マウスあるいはキーボードなどから構成される入力部、液晶パネルなどから構成される表示部、及び、CPUなどから構成される制御部などを含んで構成される。
コンテンツ管理サーバ14は、ユーザに対してコンテンツ(電子データ)管理サービスを提供するサーバである。なお、本明細書においては、「コンテンツ」という用語と「電子データ」という用語は同義である。コンテンツ管理サービスとは、例えば、ユーザからアップロードされたコンテンツを記憶し、ユーザからの要求に応じて記憶したコンテンツに対する処理を行い、あるいはユーザからの要求に応じてコンテンツを送信するサービスである。
本実施形態では、コンテンツ管理サービスが管理するコンテンツは電子文書であるが、コンテンツ管理サービスが管理するコンテンツは電子文書に限られず、動画像データ、静止画像データ、音声データなどであってもよい。
ユーザは、コンテンツ管理サービスにユーザ登録をすることで、当該コンテンツ管理サービスを利用可能となる。なお、コンテンツ管理サービスは、クラウドサービスであり、コンテンツ管理サービスは、複数のサーバにより提供されてもよい。つまり、コンテンツ管理サーバ14は複数のサーバにより構成されてもよい。
図2は、コンテンツ管理サーバ14の構成概略図である。本実施形態では、コンテンツ管理サーバ14はサーバコンピュータであるが、以下に説明する機能を発揮する限りにおいて、コンテンツ管理サーバ14はどのような装置であってもよい。
通信部20は、例えばネットワークアダプタなどを含んで構成される。通信部20は、通信回線18を介して、クライアント端末12あるいはメッセージ送信サーバ16と通信する機能を発揮する。
記憶部22は、例えばROM、RAM、あるいはハードディスクなどを含んで構成される。記憶部22には、コンテンツ管理サーバ14の各部を動作させるためのプログラムが記憶される。さらに、図2に示すように、記憶部22には、リソースDB(データベース)24及びコンテンツDB26が定義される。
リソースDB24には、コンテンツ管理サーバ14が提供するコンテンツ管理サービスにユーザ登録したユーザに関する情報が記憶される。例えば、ユーザを識別するユーザID、ユーザ名、ユーザの連絡先あるいは電子メッセージ送付先(メールアドレスあるいは電話番号など)、ユーザ登録した日(登録日)及び、ユーザがコンテンツ管理サービスにログインする際に必要なパスワードなどが関連付けられて記憶される。また、リソースDB24には、複数のユーザから構成されるグループ単位(例えば企業単位)の情報を記憶してもよい。その場合は、例えば、グループを識別するグループID、グループ名、グループの代表者のユーザ名、代表者の連絡先(メールアドレスあるいは電話番号など)、登録日、及び、グループに含まれるユーザのユーザIDなどが関連付けられて記憶される。
コンテンツDB26には、コンテンツ管理サービスが管理するコンテンツ及びコンテンツの属性情報が記憶される。例えば、コンテンツの属性情報としては、コンテンツを一意に識別するコンテンツID(本実施形態では文書ID)、コンテンツ名(本実施形態では文書名)、登録日、コンテンツのリンク情報すなわちアクセス先、及びコンテンツに対する利用権限を有するユーザを示す利用権限情報などが関連付けられて記憶される。
図3に、コンテンツDB26の内容の例が示されている。図3に示す通り、本実施形態では、コンテンツDB26には、コンテンツID、コンテンツ名、登録日、コンテンツのリンク情報(本実施形態ではURL)、並びに、利用権限情報として、当該コンテンツを読み出し可能なユーザのユーザID及び当該コンテンツに書き込み可能なユーザのユーザIDが互いに関連付けられている。図3の1番目のレコードは、コンテンツ名「文書ファイル1」が示す電子文書のアクセス先のURLが「http://xxx.co.jp/Contents/0000」であり、当該コンテンツに対しては、ユーザA及びユーザBが読み出し可能であり、ユーザAが書き込み可能であることが示されている。
コンテンツDB26において、利用権限を有するユーザがグループで示されていてもよい。例えば、図3の3番目のレコードには、コンテンツ名「文書ファイル2」が示す電子文書に対しては、グループXに含まれるユーザが読み出し及び書き込みが可能であることが示されている。
制御部28は、例えばCPUなどを含んで構成される。制御部28は、記憶部22に記憶されたプログラムに従って、コンテンツ管理サーバ14の各部を制御する。また、図2に示されるように、制御部28は、リソース情報管理部30及びコンテンツ管理部32としても機能する。
リソース情報管理部30は、当該コンテンツ管理サーバ14が提供するコンテンツ管理サービスを利用するユーザあるいはグループに関する情報の管理を行う。具体的には、リソース情報管理部30は、ユーザによるコンテンツ管理サービスに対するユーザ登録処理に応じて、リソースDB24に各種情報を登録する。また、リソース情報管理部30は、登録済みのユーザがコンテンツ管理サービスにアクセスした際に、ユーザのコンテンツ管理サービスの利用に先立って、ユーザを認証する認証処理を行う。認証処理は、例えばユーザにユーザID及びパスワードを入力させることで行う。
コンテンツ管理部32は、当該コンテンツ管理サーバ14が提供するコンテンツ管理サービスが管理するコンテンツの管理を行う。例えば、コンテンツ管理部32は、ユーザからアップロードされたコンテンツ及び当該コンテンツの属性情報をコンテンツDB26に登録する。また、ユーザからの要求に応じて、コンテンツDB26に登録されたコンテンツあるいはその属性情報の内容を変更する。また、ユーザからの要求に応じて、コンテンツDB26に登録されたコンテンツをユーザに提供する。すなわち、当該ユーザが利用するクライアント端末12にコンテンツを送信する。
コンテンツの利用権限については、例えば、当該コンテンツがコンテンツDB26に登録される際に、当該コンテンツをアップロードしたユーザの指示に基づいて決定し、コンテンツDB26に当該コンテンツに対するユーザの利用権限を登録する。もちろん、コンテンツの利用権限はその他の方法によって決定されてもよい。
メッセージ送信サーバ16は、ユーザ間における電子メッセージの送信サービスを提供するサーバである。ユーザは、電子メッセージ送信サービスにユーザ登録をすることで、当該電子メッセージ送信サービスを利用可能となる。なお、電子メッセージ送信サービスは、クラウドサービスであり、電子メッセージ送信サービスは、複数のサーバにより提供されてもよい。つまり、メッセージ送信サーバ16は複数のサーバにより構成されてもよい。
図4は、メッセージ送信サーバ16の構成概略図である。本実施形態では、メッセージ送信サーバ16はサーバコンピュータであるが、以下に説明する機能を発揮する限りにおいて、メッセージ送信サーバ16はどのような装置であってもよい。
通信部40は、例えばネットワークアダプタなどを含んで構成される。通信部40は、クライアント端末12あるいはコンテンツ管理サーバ14と通信する機能を発揮する。
記憶部42は、例えばROM、RAM、あるいはハードディスクなどを含んで構成される。記憶部42には、メッセージ送信サーバ16の各部を動作させるための情報処理プログラムが記憶される。さらに、図4に示すように、記憶部42には通知情報DB44が定義される。通知情報DB44の内容については後述する。
制御部46は、例えばCPUなどを含んで構成される。制御部46は、記憶部42に記憶された情報処理プログラムに従って、メッセージ送信サーバ16の各部を制御する。また、図4に示されるように、制御部46は、メッセージ送信部48、メッセージ処理部50、通知処理部52、及び通知情報管理部54としても機能する。
メッセージ送信部48は、送信元ユーザからのメッセージ送信要求(メッセージリクエスト)に基づいて、送信先ユーザに対して電子メッセージを送信する処理を行う。メッセージリクエストには、送信元ユーザのユーザID、送信先ユーザのユーザID、メッセージ送付先、及び電子メッセージ(メッセージ本文)などが含まれる。
本実施形態では、電子メッセージ送信サービスにおいては、送信元ユーザ及び送信先ユーザは、両ユーザで共通の画面で電子メッセージのやりとりをおこなう。具体的には、本実施形態における電子メッセージ送信サービスは、テキストチャットサービスを提供する。
図5には、クライアント端末12の表示部に表示される、電子メッセージ送信サービスが提供するテキストチャット画面の例が示されている。テキストチャット画面は、送信元ユーザ及び送信先ユーザを含むチャットグループ(3名以上のユーザが含まれていてもよい)に含まれる複数のユーザで共通のメッセージ表示領域60を含む。チャットグループに含まれる複数のユーザは、送信元ユーザによって予め選択されてよい。なお、チャットグループに含まれるユーザであれば誰でも、他のユーザを当該チャットグループに追加できるようになっていてもよい。
メッセージ表示領域60には、チャットグループに含まれる各ユーザが送信した電子メッセージが表示される。上述のように、メッセージ表示領域60は、チャットグループに含まれる複数のユーザで共通となっているため、送信元ユーザのメッセージ表示領域60には送信元ユーザが送信した電子メッセージも表示される。
また、テキストチャット画面には、送信元ユーザが電子メッセージを入力する入力欄62及び送信ボタン64が含まれる。送信元ユーザが入力欄62にメッセージ本文を入力した上で送信ボタン64を押下すると、クライアント端末12からメッセージリクエストがメッセージ送信サーバ16に送信される。メッセージ送信サーバ16は、当該メッセージリクエストに基づいて、チャットグループに含まれる複数のユーザで共通のメッセージ表示領域60に、電子メッセージの送信者を明示した上で当該電子メッセージを表示させる。このようにすることで、送信元ユーザは、チャットグループに含まれる他のユーザ(すなわち送信先ユーザ)に電子メッセージを送信することができる。
図5に示す通り、送信元ユーザが送信する電子メッセージには、コンテンツ管理サーバ14に記憶されているコンテンツのリンク情報であるURLを含めることができる。コンテンツのURLを含む電子メッセージを受けとった送信先ユーザは、当該URLを選択することで、当該コンテンツにアクセスすることができる。
なお、電子メッセージ送信サービスにおいては、テキストチャットに限られず、他の方法で電子メッセージを送信するようにしてもよい。例えば、メッセージリクエストにおいて送信先ユーザのメールアドレスを指定して、電子メール形式で電子メッセージを送信するようにしてもよい。
メッセージ処理部50は、メッセージ送信サーバ16がクライアント端末12から受信した電子メッセージに、コンテンツ管理サーバ14に登録されたコンテンツ(以下「登録コンテンツ」と記載する)のリンク情報が含まれているか否かを判定する。本実施形態では、メッセージ処理部50は、電子メッセージにURLが含まれいる場合には当該URLを抽出し、コンテンツ管理サーバ14へ送信する。コンテンツ管理サーバ14のコンテンツ管理部32は、コンテンツDB26(図3参照)を参照して、受信したURLがコンテンツDB26に登録されているか否かを判定し、判定結果をメッセージ送信サーバ16に送信する。メッセージ処理部50は、当該判定結果に基づいて、電子メッセージに登録コンテンツのリンク情報が含まれているか否かを判定する。
電子メッセージに登録コンテンツのリンク情報が含まれている場合、メッセージ処理部50は、当該メッセージリクエストの送信先ユーザが、当該登録コンテンツの利用権限を有するか否かを判定する。本実施形態では、メッセージ処理部50は、受信したメッセージリクエストに含まれる送信先ユーザのユーザID及び抽出したリンク情報を含む利用権限確認リクエストをコンテンツ管理サーバ14に送信する。コンテンツ管理サーバ14のコンテンツ管理部32は、コンテンツDB26(図3)の利用権限情報を参照して、利用権限確認リクエストに含まれるユーザIDが示すユーザが、利用権限確認リクエストに含まれるURLが示す登録コンテンツに対する利用権限を有するか否か(ここでは読み出し可能であるか否か)を判定する。コンテンツ管理サーバ14の通信部20は、当該送信先ユーザの当該登録コンテンツの利用権限を示す判定結果をメッセージ送信サーバ16に送信する。このように、通信部20は、利用権限送信部としても機能する。メッセージ処理部50は、当該判定結果に基づいて、当該メッセージリクエストの送信先ユーザが、当該登録コンテンツの利用権限を有するか否かを判定する。
当該メッセージリクエストの送信先ユーザが当該登録コンテンツの利用権限を有さない場合、メッセージ処理部50は、当該電子メッセージから、当該登録コンテンツのリンク情報を削除する。本実施形態では、メッセージ処理部50は、電子メッセージから登録コンテンツのURLを削除する。
その上で、メッセージ送信部48は、登録コンテンツのリンク情報が削除された電子メッセージを送信先ユーザに送信する。本実施形態では、メッセージ送信部48は、登録コンテンツのURLが削除された電子メッセージをメッセージ表示領域60に表示させる。
図6には、送信元ユーザが、図5の入力欄62に示される、登録コンテンツのURLを含む電子メッセージを送信した場合であって、当該電子メッセージの送信先ユーザが当該登録コンテンツの利用権限を有さない場合におけるメッセージ表示領域60の表示例が示されている。図6のメッセージ表示領域60に示されるように、送信元ユーザである「Aさん」が送信した電子メッセージ70は、メッセージ処理部50によって登録コンテンツのURLが削除されたものとなっている。図5の入力欄62に示す通り、送信元ユーザが入力したメッセージ本文には、登録コンテンツのURLの他に、「この資料を改訂してください」という文が含まれているため、メッセージ送信部48は、当該文はメッセージ表示領域60に表示させ、つまり送信先ユーザに送信する。
また、メッセージ処理部50は、登録コンテンツのURLを削除した場合に、当該URLに代えて、URLが削除されたことを示す文を当該電子メッセージに挿入するようにしてもよい。例えば、図6の電子メッセージ70に示される通り、当該URLに代えて「(リンク情報は削除されました)」という文を挿入するようにしてもよい。さらに、メッセージ送信部48は、メッセージ処理部50が電子メッセージから登録コンテンツのURLを削除した場合に、確認的に、システムからの電子メッセージとして、送信元ユーザが送信した電子メッセージからリンク情報が削除されたことを示す電子メッセージを送信先ユーザに送信するようにしてもよい。例えば、図6に示す通り、メッセージ送信部48は、「メッセージに含まれるURLに対しアクセス不可能なユーザがいたため、リンク情報を削除しました。」という内容のシステムからの電子メッセージ72をメッセージ表示領域60に表示させる。
以上のように、送信元ユーザの電子メッセージに含まれるリンク情報が示す登録コンテンツに対する利用権限を当該該電子メッセージの送信先ユーザが有さない場合、メッセージ処理部50によりリンク情報が削除された上で、メッセージ送信部48が当該送信先ユーザに対して当該電子メッセージを送信する。これにより、登録コンテンツの利用権限を有さない送信先ユーザに対して、当該登録コンテンツのリンク情報が送信されることが防止される。
メッセージ送信サービスにおいては、送信元ユーザは、複数の送信先ユーザに同一の電子メッセージを送信することができる。本実施形態では、チャットグループに3人以上のユーザが含まれている場合に、送信元ユーザから電子メッセージが複数の送信先ユーザに送信されることとなる。
電子メッセージに登録コンテンツのリンク情報が含まれている場合であって、複数の送信先ユーザのうちの一部のユーザが当該登録コンテンツの利用権限を有さず、複数の送信先ユーザのうちの残りのユーザが当該登録コンテンツの利用権限を有する場合を考える。この場合、メッセージ送信部48は、当該登録コンテンツの利用権限を有さない送信先ユーザに対しては、メッセージ処理部50によりリンク情報が削除された電子メッセージを送信し、当該登録コンテンツの利用権限を有する送信先ユーザに対しては、メッセージ処理部50により処理されてない、すなわち当該登録コンテンツのリンク情報を含む電子メッセージを送信する。
本実施形態では、メッセージ表示領域60は、チャットグループに含まれるユーザで共通の画面となっていることから、チャットグループに含まれるユーザの中に、送信元ユーザが送信した電子メッセージに含まれるURLが示す登録コンテンツの利用権限を有さない送信先ユーザが1人でもいる場合には、メッセージ送信部48は、図6と同様に、当該URLが削除された電子メッセージ70をメッセージ表示領域60に表示させる。その上で、当該登録コンテンツの利用権限を有する送信先ユーザに対しては、図7に示すように、メッセージ表示領域60とは別の別画面80に当該URLを含む電子メッセージ82を表示させる。当該別画面80は、当該登録コンテンツの利用権限を有するユーザのみが閲覧可能な画面(例えば当該登録コンテンツの利用権限を有するユーザが利用するクライアント端末12のみに表示される画面)である。このようにして、メッセージ送信部48は、当該登録コンテンツの利用権限を有するユーザのみに、URLを含む電子メッセージを送信する。
また、メッセージ送信部48は、別画面80に表示された電子メッセージ82が、どのチャットグループに対して送信されたものであるかが送信先ユーザが把握しやすいように、システムからの電子メッセージとして、電子メッセージ82がどのチャットグループに対して送信されたものであるかを示す電子メッセージ84を別画面80に表示させてもよい。
図4に戻り、通知処理部52は、送信先ユーザの中に、電子メッセージに含まれるリンク情報が示す登録コンテンツの利用権限を有さないユーザがいる場合に、当該電子メッセージの送信に先立って、当該電子メッセージの送信元ユーザに対して通知を送信する。当該通知は、送信元ユーザに対して、送信先ユーザの中に当該登録コンテンツの利用権限を有さないユーザがいることを知らせるためのものである。
本実施形態では、通知処理部52は、送信元ユーザが利用するクライアント端末12に対して、通知画面表示指示を送信して、当該クライアント端末12の表示部に、図8に示すような通知ウィンドウ90を表示させる。図8に示す通り、通知ウィンドウ90には、送信元ユーザが選択した送信先ユーザのうち、電子メッセージに含まれるリンク情報が示す登録コンテンツの利用権限を有さない送信先ユーザが記載されていてもよい。
送信元ユーザは、通知処理部52からの通知に対して、その後のメッセージ送信サーバ16の処理を指示することができる。本実施形態では、図8に示す通り、通知ウィンドウ90には「はい」ボタン、「いいえ」ボタン、及び「削除せず送信」ボタンの3つのボタンが用意されており、送信元ユーザは、いずれかのボタンを選択することで、メッセージ送信サーバ16に指示を送信することができる。
送信元ユーザが「はい」ボタンを選択すると、クライアント端末12からメッセージ送信サーバ16に対して、URLを削除した電子メッセージの送信指示が送信される。当該指示を受けたメッセージ送信部48は、登録コンテンツのURLが削除された電子メッセージを当該登録コンテンツの利用権限を有さない送信先ユーザに送信する。上述の通り、このとき、メッセージ送信部48は、当該登録コンテンツの利用権限を有する送信先ユーザに対しては、登録コンテンツのURLが削除されていない電子メッセージを送信してもよい。
送信元ユーザが「いいえ」ボタンを選択すると、クライアント端末12からメッセージ送信サーバ16に対して、当該電子メッセージの送信キャンセル指示が送信される。当該指示を受けたメッセージ送信部48は、いずれの送信先ユーザに対しても、当該電子メッセージを送信しない。この場合、送信元ユーザのクライアント端末12の表示部には、送信元ユーザが電子メッセージを送信する前の画面(図5参照)が表示される。
送信元ユーザが「削除せず送信」ボタンを選択すると、クライアント端末12からメッセージ送信サーバ16に対して、URLを削除しない電子メッセージの送信指示が送信される。当該指示を受けたメッセージ送信部48は、登録コンテンツの利用権限がない送信先ユーザに対しても、当該登録コンテンツのリンク情報(本実施形態ではURL)を含む電子メッセージを送信する。つまり、送信元ユーザは、コンテンツ管理サーバ14のコンテンツDB26において、登録コンテンツの利用権限がないと登録されている送信先ユーザに対して、登録コンテンツの利用を許可する場合に、「削除せず送信」ボタンを選択して、当該送信先ユーザに登録コンテンツのリンク情報を送信することができる。これは、例えば、コンテンツ管理サーバ14においては、送信先ユーザが登録コンテンツの利用権限を有さない、と登録されているものの、当該送信先ユーザが信頼できる者であることを送信元ユーザが予め分かっている場合に有用である。
通知情報管理部54は、メッセージ送信サーバ16が受信したメッセージリクエストに係る電子メッセージのうち、メッセージ処理部50によってメッセージ本文から登録コンテンツのリンク情報が削除された上で送信先ユーザに送信された電子メッセージと、当該電子メッセージの属性情報とを関連付けて通知情報DB44に登録する。なお、通知情報DB44には、URLが削除されていない状態の電子メッセージが登録される。
図9に、通知情報DB44の内容の例が示されている。図9に示す通り、本実施形態では、通知情報DB44には、電子メッセージの属性情報として、電子メッセージを一意に識別する電子メッセージID、通知情報DB44への電子メッセージの登録日時、電子メッセージに含まれていたリンク情報(本実施形態ではURL)、リンク情報が削除された電子メッセージが送信された(つまりリンク情報が送信されなかった)送信先ユーザである未送信ユーザのユーザID、及び、再送日時が互いに関連付けられている。再送日時は、電子メッセージの再送処理(後述)を行うか否かの判定に用いる情報であり、電子メッセージの通知情報DB44への登録時においては、登録日時から所定時間後の時刻が設定される。
また、通知情報管理部54は、通知情報DB44に登録された未送信ユーザIDが示す送信先ユーザ、つまり、登録コンテンツのリンク情報が削除された電子メッセージが送信された送信先ユーザの、当該登録コンテンツの利用権限を確認する。このように、通知情報管理部54は利用権限確認部としても機能する。未送信ユーザIDが示す送信先ユーザは、当該登録コンテンツの利用権限を有さなかったために、リンク情報が削除された電子メッセージが送信されたのではあるが、当該リンク情報が削除された電子メッセージが送信された後に、当該送信先ユーザが当該登録コンテンツの利用権限を取得する場合が考えられる。したがって、通知情報管理部54は、当該送信先ユーザが当該登録コンテンツの利用権限を有することとなったか否かを確認するために、当該確認処理を行う。
具体的には、通知情報管理部54は、通知情報DB44に登録された電子メッセージの中から処理対象の電子メッセージを選択する。本実施形態では、通知情報管理部54は、再送日時が現在時刻よりも過去である電子メッセージを処理対象として選択する。なお、処理対象の電子メッセージの選択方法は他の方法を採用することができる。
その上で、通知情報管理部54は、処理対象の電子メッセージの未送信ユーザIDとリンク情報(本実施形態ではURL)を含む利用権限確認リクエストをコンテンツ管理サーバ14に送信する。コンテンツ管理サーバ14のコンテンツ管理部32は、コンテンツDB26(図3)の利用権限情報を参照して、利用権限確認リクエストに含まれるユーザIDが示すユーザが、利用権限確認リクエストに含まれるURLが示す登録コンテンツに対する利用権限を有するか否か(ここでも読み出し可能であるか否か)を判定し、判定結果をメッセージ送信サーバ16に送信する。通知情報管理部54は、当該判定結果に基づいて、当該送信先ユーザが、当該登録コンテンツの利用権限を有するか否かを確認する。
登録コンテンツのリンク情報が削除された電子メッセージが送信された送信先ユーザが、当該登録コンテンツの利用権限を取得したことを通知情報管理部54が確認した場合、メッセージ送信部48は、通知情報DB44に登録された電子メッセージ及び未送信ユーザIDに基づいて、リンク情報が削除されていない当該電子メッセージを当該送信先ユーザに送信する。これにより、当該送信先ユーザの当該登録コンテンツに対する利用権限が有りに変更された場合に、送信元ユーザが再度当該電子メッセージの送信操作を行う必要なく、当該電子メッセージが当該送信先ユーザに送信される。
通知情報管理部54は、通知情報DB44を更新する処理を行う。具体的には、電子メッセージが未送信ユーザに再送された場合、通知情報管理部54は、再送された電子メッセージの未送信ユーザIDから、当該電子メッセージが再送されたユーザのユーザIDを削除する。また、通知情報管理部54は、再送された電子メッセージの再送日時を現在時刻から所定時間後の時刻に更新する。上述の通り、本実施形態では、通知情報管理部54は、再送日時が現在時刻よりも過去である電子メッセージを処理対象として選択するから、再送日時を更新することにより、電子メッセージに未送信ユーザがいる限り、通知情報管理部54による当該未送信ユーザの利用権限の確認処理が繰り返しあるいは間欠的に実行されることとなる。
電子メッセージの再送前に、再送された電子メッセージの未送信ユーザIDが1名だった場合、当該電子メッセージの再送後においては最早当該電子メッセージの未送信ユーザはいなくなるため、通知情報管理部54は、通知情報DB44から当該電子メッセージ及び当該電子メッセージの属性情報を削除する。
また、未送信ユーザIDの利用権限を確認した結果、未送信ユーザIDが登録コンテンツの利用権限を未だ有さないと判定された場合には、通知情報管理部54は、確認処理の対象となった電子メッセージの再送日時のみを更新する。
以下、図10に示すフローチャートに従って、メッセージ送信システム10における電子メッセージの送信処理の流れについて説明する。
ステップS10において、メッセージ送信サーバ16は、送信元ユーザのクライアント端末12から、送信元ユーザのユーザID、送信先ユーザのユーザID、メッセージ送付先、及び電子メッセージ(メッセージ本文)などを含むメッセージリクエストを受信する。
ステップS12において、メッセージ処理部50は、ステップS10で受信した送信先ユーザのユーザID、及び、電子メッセージから抽出したリンク情報を含む利用権限確認リクエストをコンテンツ管理サーバ14に送信することで、当該電子メッセージに登録コンテンツのリンク情報が含まれいているか否かを判定する。
当該電子メッセージにリンク情報が含まれていない場合、あるいは、リンク情報が含まれていても登録コンテンツのリンク情報ではない場合(ステップS12で「いいえ」)はステップS26に進む。当該電子メッセージに登録コンテンツのリンク情報が含まれている場合(ステップS12で「はい」)はステップS14に進む。
ステップS14において、メッセージ処理部50は、ステップS10で受信したメッセージリクエストに含まれる送信先ユーザのユーザID及びステップS12で抽出したリンク情報を含む利用権限確認リクエストをコンテンツ管理サーバ14に送信する。
ステップS16において、コンテンツ管理サーバ14のコンテンツ管理部32は、コンテンツDB26の利用権限情報に基づいて、ステップS14で受信した利用権限確認リクエストに含まれるユーザIDが示すユーザが、利用権限確認リクエストに含まれるリンク情報が示す登録コンテンツに対する利用権限を有するか否かを判定する。
ステップS18において、コンテンツ管理部32は、ステップS16における判定結果をメッセージ送信サーバ16に送信する。
ステップS20において、メッセージ処理部50は、ステップS18で受信した判定結果に基づいて、ステップS10で受信したメッセージリクエストに含まれる送信先ユーザの中に、ステップS12で抽出したリンク情報が示す登録コンテンツの利用権限が無いユーザがいるか否かを判定する。送信先ユーザの全員が当該登録コンテンツの利用権限を有する場合(ステップS20で「いいえ」)はステップS26に進み、送信先ユーザの中に当該登録コンテンツの利用権限を有さないユーザがいる場合(ステップS20で「はい」)はステップS22に進む。
ステップS22において、通知処理部52は、送信元ユーザに対して、送信先ユーザの中に当該登録コンテンツの利用権限を有さないユーザがいることを通知する。
ステップS24において、メッセージ送信部48は、ステップS22で送信元ユーザへの通知に対する送信元ユーザの指示を判定する。
例えば図8の「削除せず送信」ボタンが押下され、送信元ユーザの指示が、リンク情報を削除しない電子メッセージの送信指示である場合(ステップS24で「そのまま送信」)は、ステップS26に進み、ステップS26において、メッセージ送信部48は、ステップS10で受信したメッセージリクエストに含まれる全ての送信先ユーザに対して、リンク情報を含む電子メッセージを送信する。
例えば図8の「いいえ」ボタンが押下され、送信元ユーザの指示が、当該電子メッセージの送信キャンセル指示である場合(ステップS24で「送信不可」)は、メッセージ送信部48は、当該電子メッセージをいずれの送信先ユーザに送信せずに処理を終了する。
例えば図8の「はい」ボタンが押下され、送信元ユーザの指示が、リンク情報を削除した電子メッセージの送信指示である場合(ステップS24で「リンク情報削除」)は、ステップS28に進む。
ステップS28において、メッセージ処理部50は、当該電子メッセージから登録コンテンツのリンク情報を削除する。
ステップS30において、メッセージ送信部48は、当該登録コンテンツの利用権限を有さない送信先ユーザに対して、ステップS28でリンク情報が削除された電子メッセージを送信する。ここで、メッセージ送信部48は、当該登録コンテンツの利用権限を有する送信先ユーザに対しては、リンク情報を含む電子メッセージを送信してもよい。
ステップS32において、通知情報管理部54は、ステップS30で送信された電子メッセージ及び当該電子メッセージに関する属性情報を通知情報DB44に登録する。
次に、図11に示すフローチャートに従って、メッセージ送信システム10における電子メッセージの再送処理の流れについて説明する。
ステップS40において、通知情報管理部54は、通知情報DB44に登録された電子メッセージの中から、再送日時が現在時刻よりも過去である電子メッセージを処理対象として選択する。
ステップS42において、通知情報管理部54は、ステップS40で選択した処理対象の電子メッセージの未送信ユーザIDとリンク情報を含む利用権限確認リクエストをコンテンツ管理サーバ14に送信する。
ステップS44において、コンテンツ管理サーバ14のコンテンツ管理部32は、コンテンツDB26(図3)の利用権限情報を参照して、ステップS42で受信した利用権限確認リクエストに含まれるユーザIDが示すユーザが、当該利用権限確認リクエストに含まれるURLが示す登録コンテンツに対する利用権限を有するか否かを判定する。
ステップS46において、コンテンツ管理部32は、ステップS44における判定結果をメッセージ送信サーバ16に送信する。
ステップS48において、メッセージ送信部48は、ステップS46で受信した判定結果に基づいて、当該コンテンツに対する未送信ユーザの利用権限が有りになったか否かを判定する。未送信ユーザの利用権限が有る場合(ステップS48で「はい」)はステップS50に進み、未送信ユーザの利用権限が無い場合(ステップS48で「いいえ」)はステップS54に進む。
ステップS50において、メッセージ送信部48は、リンク情報を含む処理対象の電子メッセージを当該未送信ユーザに送信する。
ステップS52において、通知情報管理部54は、通知情報DB44を参照し、処理対象の電子メッセージに、他の未送信ユーザがいるか否かを判定する。他の未送信ユーザがいる場合(ステップS52で「はい」)はステップS54に進み、他の未送信ユーザがいない場合、すなわち処理対象の電子メッセージの未送信ユーザが元々1人であった場合(ステップS52で「いいえ」)はステップS56に進む。
ステップS54において、通知情報管理部54は、通知情報DB44において、処理対象の電子メッセージの属性情報を更新する。具体的には、当該電子メッセージの未送信ユーザからステップS50で電子メッセージが送信されたユーザのユーザIDを削除し、再送日時を更新する。なお、ステップS48からステップS50及びS52を介さずにステップS54に進んだ場合は、通知情報管理部54は、当該電子メッセージの再送日時のみを更新する。
ステップS56において、通知情報管理部54は、通知情報DB44から処理対象の電子メッセージ及びその属性情報を削除する。
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
例えば、上記実施形態では、コンテンツ管理サーバ14とメッセージ送信サーバ16は別サーバとなっているが、コンテンツ管理サーバ14とメッセージ送信サーバ16が一体となっており、1つのサーバによりコンテンツ管理サーバ14とメッセージ送信サーバ16の機能を発揮するようにしてもよい。