(58)【調査した分野】(Int.Cl.,DB名)
前記通信部は、前記ユーザ特定部が特定した前記第1のユーザに対応する端末と、前記ユーザ特定部が特定した前記第2のユーザに対応する端末とのうち、少なくとも1つに、前記第1のユーザと前記第2のユーザとの間で情報を交換することを薦める旨のメッセージを送信し、
前記判別部は、前記通信履歴に基づいて、前記メッセージの送信後の所定期間内に前記第1のユーザと前記第2のユーザとの間で情報が交換されたか否かを判別し、
前記関連付け更新部は、前記判別部により情報が交換されたと判別された場合、前記関連付けテーブルを更新し、前記第1のユーザと前記第2のユーザとを関連付ける、
ことを特徴とする請求項1に記載の情報処理装置。
前記通信履歴は、情報の送信元であるユーザと、情報の送信先であるユーザと、前記情報の送信元であるユーザが前記情報の送信先であるユーザに情報を送信した日時と、を対応付けた情報を含み、
前記参照情報は、前記交換された情報を参照したユーザと、当該ユーザが当該交換された情報を参照した日時と、を対応付けた情報を含み、
前記第1のユーザが前記第2のユーザに初めて情報を送信し、当該情報を受信した前記第2のユーザが前記第1のユーザに初めて情報を送信した日時を前記通信履歴から抽出し、さらに、前記第1のユーザと前記第2のユーザ双方が前記交換された情報を参照した日時を前記参照情報から抽出し、当該送信した日時から当該参照した日時までに経過した期間を算出する期間算出部、を備え、
前記第3の判別部は、前記期間算出部により算出された期間が予め定められた期間より短いか否かを判別し、
前記通信部は、前記第3の判別部により予め定められた期間より短くないと判別された場合に、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする請求項5に記載の情報処理装置。
前記ユーザ特定部が特定した前記第1のユーザと前記第2のユーザとが、前記関連付けテーブル記憶部が記憶する前記関連付けテーブルにおいて既に関連付けられているか否かを判別する関連付け判別部、を備え、
前記通信部は、前記関連付け判別部により前記第1のユーザと前記第2のユーザとが関連付けられていると判別された場合、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について図面を参照して説明する。
【0014】
(実施形態1)
本実施形態に係る情報処理装置を、
図1に示すサーバ10を例に説明する。このサーバ10は、通信ネットワークNを介して複数の情報端末20に接続されており、情報端末20にSNS等のコミュニティサービスを提供する。
【0015】
一般に、コミュニティサービスにおいて、ユーザ同士を友人として登録する(ユーザ同士と友人として関連付ける)には、ユーザA(SNSを利用するユーザ)が、ユーザB(SNSを利用するユーザ)に、自身を友人として登録するように申請し、ユーザBがこれを承認することが必要である。サーバ10は、さらに、一定の交流があると判別されたユーザ双方にメッセージの交換(交信:相互に送信・受信)を推奨し、これに応じてメッセージが交換されれば、両ユーザを友人として関連付ける機能を有する。以下、サーバ10の構成と機能を説明する。
【0016】
サーバ10は、
図2に示すように、通信部100と、記憶部200と、制御部300とを備える。
【0017】
通信部100は、ネットワークカード等を備え、通信ネットワークNに接続する情報端末20と情報を送受信する。
【0018】
記憶部200は、フラッシュメモリ、ハードディスク等の記憶装置を備え、後述する関連付け更新プログラム201を含むプログラム、及びプログラムを実行する上で必要なデータ(例えば、後述する通信履歴情報202、ユーザ・情報端末テーブル203、関連付けテーブル204)等を記憶する。
【0019】
関連付け更新プログラム201は、ユーザの承認なしでユーザの関連付けを更新するためのプログラムである。
【0020】
通信履歴情報202は、サーバ10と情報端末20との通信及び情報端末20間のサーバ10を介した通信の履歴を示す情報であり、
図3A、
図3Bに例示するように、通信(送信)日時、送信元、送信先等を特定する情報を含む。
【0021】
ユーザ・情報端末テーブル203は、コミュニティサービスを利用するユーザと情報端末20とを対応付ける情報を記録する。ユーザ・情報端末テーブル203は、
図4に例示するように、各ユーザのユーザID(IDentification) と情報端末20とを対応付けているテーブルである。
【0022】
関連付けテーブル204は、サーバ10が提供するコミュニティサービスを利用するユーザのうち、友人関係にあるユーザ同士(また、例えば、家族やサークルの仲間であるユーザ同士)を関連付ける情報を記録する。
図5A、
図5Bに例示するように、関連付けテーブル204は、IDカラム、ユーザ1カラム、ユーザ2カラム等を含む。IDカラムは、関連付けテーブル204が有するレコードを一意に識別する識別子を格納するカラムである。ユーザ1カラムは、関連付けられた2つのユーザのうち、一方のユーザを示す情報を格納するカラムである。ユーザ2カラムは、関連付けられた2つのユーザのうち、ユーザ1カラムに格納されていないユーザを示す情報を格納するカラムである。本実施例においては、ユーザ1カラム、ユーザ2カラムには、ユーザを示す情報としてユーザIDを格納する。
図5A、
図5Bに示す例では、ID=1に対応するレコードがユーザAとユーザCを関連付けており、ID=2に対応するレコードがユーザBとユーザDを関連付けている。関連付けテーブル204に友人として登録されているユーザ間では、相互の個人情報を閲覧することが可能である。友人として登録されているレコードが関連付けテーブル204から削除されると、それまで友人と登録されていたユーザの間で個人情報の相互閲覧等ができなくなる。
【0023】
図2に示す制御部300は、CPU(Central Processing Unit)、基本動作プログラムを記憶するROM(Read Only Memory)、ワークエリアとなるRAM(Random Access Memory)等を備え、記憶部200等が記憶するプログラムに従って種々の処理を実行する。例えば、制御部300は、関連付け更新プログラム201に従って後述する関連付け更新処理を実行する。また、制御部300は、関連付け更新プログラム201に従って動作することで、ユーザ特定部301、通信制御部302、関連付け判別部303、関連付け更新部304として機能する。
【0024】
ユーザ特定部301は、
図3に例示する通信履歴情報202が記憶する通信履歴に基づいて、メッセージを交換したユーザを関連付け対象(友人)の候補として特定する。例えば、通信履歴にユーザAとユーザBとが情報を交換したことが記録されていれば、ユーザ特定部301は、当該ユーザA及びユーザBを関連付け対象の候補として特定する。
【0025】
通信制御部302は、通信部100を制御し、ユーザ特定部301により特定されたユーザに対応する情報端末20のうち、少なくとも1つに、当該特定されたユーザ間で情報を交換することを薦める旨のメッセージを含むメール(推奨[斡旋]メール)を送信する。
【0026】
関連付け判別部303は、ユーザ特定部301により特定されたユーザが、
図5A、
図5Bに例示する関連付けテーブル204において既に関連付けられているか否かを判別する。
【0027】
関連付け更新部304は、ユーザ特定部301により特定されたユーザが、関連付け判別部303により関連付けられていないと判別された場合に、関連付けテーブル204を更新し、ユーザ特定部301が特定したユーザを関連付ける。
【0028】
次に、このような構成を有するサーバ10の動作について説明する。サーバ10は、コミュニケーションサービス全般を提供する。ここでは特に、サーバ10が提供する機能のうち、特徴的な、いわゆる友人登録に関連する機能を中心に、
図6のシーケンス図及び
図7のフローチャートを参照して説明する。なお、理解を容易にするため、通信ネットワークNに接続する複数の情報端末20のうち、情報端末20A及び情報端末20Bを例にとり説明する。
【0029】
サーバ10の制御部300は、サーバ10を介した通信(例えば、情報端末20Aと情報端末20Bとがサーバ10を介してメッセージを送受信すること、又は、サーバ10から情報端末20A又は情報端末20Bへメールを送信すること)が実行される度に、この通信の履歴を通信履歴情報202に記録する。
【0030】
例えば、
図6に示すように、情報端末20Bが情報端末20Aに、サーバ10を介してメッセージを送信したとする(ステップS100)。ここで、メッセージの送信とは、メールを送ること、公開しているブログにコメントを書き込むこと、掲示板にコメントすること等を広く含む。このとき、サーバ10(
図2に示す制御部300)は、
図3Aの(1)に示すように、メッセージの送信(通信)日時(2013/2/1 13:10:00)、メッセージの送信元(情報端末20B)、メッセージの送信先(情報端末20A)を示す情報を通信履歴情報202に記録する。
【0031】
また、
図6に示すように、情報端末20Bからメッセージを受信した情報端末20Aが、情報端末20Bに、サーバ10を介してメッセージを送信したとする(ステップS101)。このとき、サーバ10(
図2に示す制御部300)は、
図3Aの(2)に示すように、メッセージの送信日時(2013/2/1 13:20:00)、メッセージの送信元(情報端末20A)、メッセージの送信先(情報端末20B)を通信履歴情報202に記録する。
【0032】
サーバ10(
図2に示すユーザ特定部301)は、予め設定されている負荷の小さい時刻になると、通信履歴が記録されている通信履歴情報202を読み出し(なお、読み出すタイミングは当該時刻に限らず、任意のタイミングでよい)、通信履歴に基づいて、メッセージを交換した情報端末20を特定し、さらに、ユーザ・情報端末テーブル203を参照して、メッセージを交換したユーザを特定する(ステップS102)。例えば、通信履歴情報202に
図3Aの(1)及び(2)に示す通信履歴が記録されている場合、サーバ10は、情報端末20Aと情報端末20Bとの間で交換されたことを特定し、
図4に示すユーザ・情報端末テーブル203を参照し、メッセージを交換したユーザがユーザAとユーザBであると特定する(なお、
図4に示すように、ユーザ・情報端末テーブル203のID=1のレコードにおいて、ユーザAと情報端末20Aとが対応付けられており、ID=2のレコードにおいて、ユーザBと情報端末20Bとが対応付けているものとする)。
【0033】
次に、サーバ10(
図2に示す通信制御部302)は、通信部100を制御し、特定したユーザのペア双方の情報端末20にメッセージを交換することを薦める旨の推奨メールを送信する(ステップS103)。例えば、サーバ10は、情報端末20Aに、「ユーザBに挨拶しませんか?」というメッセージを含む推奨メールを送信し、情報端末20Bに、「ユーザAに挨拶しませんか?」というメッセージを含む推奨メールを送信する。このとき、サーバ10(
図2に示す制御部300)は、
図3Bの(1)に示すように、メッセージの送信日時(2013/2/1 23:00:00)、メッセージの送信元(サーバ10)、メッセージの送信先(情報端末20A及び情報端末20B)を通信履歴情報202に記録する。
【0034】
ここで、
図6に示すように、情報端末20Bが、情報端末20Aに、サーバ10を介してメッセージ(例えば、ユーザAに対する挨拶文を含むメール)を送信したとする(ステップS104)。このとき、サーバ10(
図2に示す制御部300)は、
図3Bの(2)に示すように、メッセージの送信日時(2013/2/2 15:30:00)、メッセージの送信元(情報端末20B)、メッセージの送信先(情報端末20A)を通信履歴情報202に記録する。
【0035】
また、情報端末20Aが、情報端末20Bに、サーバ10を介してメッセージ(例えば、情報端末20Bから受信した挨拶文を含むメールに対する返信メール)を送信したとする(ステップS105)。このとき、サーバ10(
図2に示す制御部300)は、
図3Bの(3)に示すように、メッセージの送信日時(2013/2/2 15:45:00)、メッセージの送信元(情報端末20A)、メッセージの送信先(情報端末20B)を通信履歴情報202に記録する。
【0036】
次に、サーバ10は、通信履歴が記憶されている通信履歴情報202を読み出し、通信履歴に基づいて、過去一定期間(例えば、1ヶ月)内にステップS103で推奨メールを送信した(ユーザの)ペアについて、その後、メッセージを交換したペアを特定する(ステップS106)。例えば、通信履歴情報202に
図3Bの(1)に示す通信履歴が記録されているものとする。このとき、サーバ10は、送信元がサーバ10となっている通信履歴を特定し、この通信履歴において、送信日時が「2013/2/1 23:00:00」であり、送信先が情報端末20Aと情報端末20Bであることを特定する(つまり、サーバ10は、推奨メールを送信した送信日時と推奨メールの送信先を特定する)。
【0037】
また、通信履歴情報202には、
図3Bの(2)に示すように、「2013/2/2 15:30:00」に情報端末20Bが情報端末20Aに情報を送信したこと、及び、
図3Bの(3)に示すように、「2013/2/2 15:45:00」に情報端末20Aが情報端末20Bに情報を送信したことが記録されているものとする。このとき、サーバ10は、推奨メールの送信日時(2013/2/1 23:00:00)以降、情報端末20Aと情報端末20Bとの間で情報が交換されたことを特定する。次に、サーバ10は、ユーザ・情報端末テーブル203を参照し、情報端末20Aに対応付けられているユーザがユーザAであり、情報端末20Bに対応付けられているユーザがユーザBであることを特定する。以上より、サーバ10は、推奨メールを送信後、当該推奨メールに応じてメッセージを交換したユーザのペアがユーザAとユーザBであると特定する。
【0038】
次に、サーバ10(
図2に示す関連付け判別部303)は、関連付け更新処理を実行する(ステップS200)。
【0039】
関連付け更新処理が開始されると、
図7に示すように、関連付け判別部303は、ステップS106で特定したユーザのペアが既に関連付けテーブル204によって関連付けられているか否かを判別する(ステップS201)。
【0040】
関連付け更新部304は、ステップS106で特定したユーザのペアがお互いに関連付けられていないと判別された場合(ステップS201;No)、関連付けテーブル204を更新して、ステップS106で特定されたペアを登録し、そのペアを関連付け(ステップS202)、関連付け更新処理を終了する。例えば、関連付けテーブル204が
図5Aに示す例である場合、関連付けテーブル204においてユーザAとユーザBは関連付けられていないため、関連付け判別部303は、ステップS106で特定されたユーザ(ユーザAとユーザB)が関連付けられていないと判別する(ステップS201;No)。従って、関連付け更新部304は、関連付けテーブル204を更新してユーザAとユーザBとを関連付け(ステップS202)、関連付け更新処理を終了する。例えば、関連付け更新部304は、
図5Bに示すように、ユーザ1カラムにユーザAを格納し、ユーザ2カラムにユーザBを格納したレコード(ID=100に対応するレコード)を関連付けテーブル204に追加する。
【0041】
また、関連付け判別部303は、ステップS201において、ステップS106で特定されたユーザが既に関連付けられていると判別した場合(ステップS201;Yes)、関連付けテーブル204を更新しないで関連付け更新処理を終了する。例えば、関連付け判別303は、ステップS106で特定されたユーザがユーザA及びユーザBであり、
図5Bに示すように、関連付けテーブル204に、ユーザAとユーザBとを関連付けるレコード(ID=100に対応するレコード)が格納されている場合、ユーザ(ユーザAとユーザB)が既に関連付けられていると判別し(ステップS201;Yes)、関連付けテーブル204を更新しないで関連付け更新処理を終了する。
【0042】
本実施形態によれば、サーバ10は、メッセージを交換したことがある第1のユーザと第2のユーザとに、メッセージを交換することを薦める旨の推奨メールを送信する。これに応じて両者がメッセージを交換することで、二人のユーザは、一方からの申請にもう一方が応じる過程によらず、相互に友人登録することができる。その結果、友人登録の申請に伴う抵抗感を低減することができ、より容易に、ユーザの人間関係の実態をシステムに反映することができる。
【0043】
なお、この発明は、上記の実施形態に限定されず、種々の変形及び応用が可能である。例えば、サーバ10は、ユーザ間でのメッセージのやり取りの頻度を計測し、その頻度が基準を上回る場合に、上述の推奨メールを送信するものであってもよい。
【0044】
(実施形態2)
実施形態1におけるサーバ10は、メッセージを交換したユーザ(が所持する情報端末20)にメッセージを交換することを薦める旨の推奨メールを送信したが、推奨メールを送信するユーザを特定する手法は任意である。以下、メッセージを交換したユーザが物理的に近づいたとき、これらユーザに推奨メールを送信する実施形態2を説明する。
【0045】
実施形態2に係るサーバ10は、
図8に示すように、通信部100と、記憶部200と、制御部300とを備える。
【0046】
記憶部200は、関連付け更新プログラム201、通信履歴情報202、ユーザ・情報端末テーブル203、関連付けテーブル204を記憶し、さらに、後述する位置情報テーブル205、基準距離情報206を記憶する。
【0047】
位置情報テーブル205は、情報端末20の位置情報を格納しているテーブルである。
【0048】
基準距離情報206は、後述する距離算出部306が算出した距離との比較において基準となる距離(基準距離)を示す情報である。
【0049】
制御部300は、関連付け更新プログラム201に従って動作することで、ユーザ特定部301、通信制御部302、関連付け判別部303、関連付け更新部304として機能し(なお、これら各部が実行する処理は実施形態1と同様である)、さらに、位置取得部305、距離算出部306、距離判別部307として機能する。
【0050】
位置取得部305は、ユーザ特定部301が特定したユーザ(ユーザに対応する情報端末20)の位置情報(現在位置)を取得し、位置情報テーブル205に取得した位置情報を格納する。
【0051】
距離算出部306は、位置取得部305が取得した位置情報(例えば、情報端末20Aの位置情報及び情報端末20Bの位置情報)を位置情報テーブル205から読み出し、情報端末20間の距離(例えば、情報端末20Aから情報端末20Bまでの距離)を算出する。
【0052】
距離判別部307は、距離算出部306が算出した距離が基準距離(基準距離情報206が示す距離)以下であるか否かを判別する。
【0053】
次に、このような構成を有するサーバ10の動作について、
図9のシーケンス図を参照して説明する。なお、理解を容易にするため、通信ネットワークNに接続する複数の情報端末20のうち、情報端末20A及び情報端末20Bを例にとり説明する。
【0054】
制御部300は、サーバ10を介した通信(例えば、情報端末20Aと情報端末20Bとがサーバ10を介してメッセージを送受信すること、又は、サーバ10から情報端末20A又は情報端末20Bへメールを送信すること)が実行される度に、この通信の履歴を通信履歴情報202に記録する。
【0055】
例えば、
図9に示すように、情報端末20B(通信ネットワークNに接続する複数の情報端末20のうちの1つ)が情報端末20A(通信ネットワークNに接続する複数の情報端末20のうちの1つ)に、サーバ10を介してメッセージを送信したとする(ステップS100)。このとき、サーバ10(
図8に示す制御部300)は、メッセージの送信日時、メッセージの送信元(情報端末20B)、メッセージの送信先(情報端末20A)を通信履歴情報202に記録する。
【0056】
また、情報端末20Bからメッセージを受信した情報端末20Aが、情報端末20Bに、サーバ10を介してメッセージを送信したとする(ステップS101)。このとき、サーバ10(
図8に示す制御部300)は、メッセージの送信日時、メッセージの送信元(情報端末20A)、メッセージの送信先(情報端末20B)を通信履歴情報202に記録する。
【0057】
サーバ10(
図2に示す制御部300)は、予め設定されている時刻になると、通信履歴が記録されている通信履歴情報202を読み出し(なお、読み出すタイミングは当該時刻に限らず、任意のタイミングでよい)、通信履歴に基づいて、メッセージを交換した情報端末20(情報端末20A及び20B)を特定し、さらに、ユーザ・情報端末テーブル203を参照して、メッセージを交換したユーザを特定する(ステップS102)。なお、通信履歴情報202には、
図3Aに示す通信履歴が記録されており、ステップS102で特定されたユーザはユーザA(情報端末20Aに対応するユーザ)とユーザB(情報端末20Bに対応するユーザ)であるとする。
【0058】
次に、サーバ10(
図8に示す位置取得部305)は、ステップS102で特定したユーザ(ユーザA及びユーザB)それぞれの位置情報(ユーザAに対応する情報端末20Aの位置情報及びユーザBに対応する情報端末20Bの位置情報)を取得する(ステップS107)。例えば、サーバ10は、情報端末20Aに、位置情報をサーバ10に送信する旨の要求を送信する。この要求を受信すると、情報端末20Aは、情報端末20Aの位置(現在位置)を測位し(例えば、情報端末20AがGPS[Global Positioning System]機能付き端末である場合、情報端末20Aは、GPS衛星から受信したGPS信号に基づいて情報端末20Aの位置を測位し)、情報端末20Aの位置情報(現在位置)をサーバ10に送信する。また、サーバ10は、情報端末20Bにも、位置情報をサーバ10に送信する旨の要求を送信する。この要求を受信すると、情報端末20Bは、情報端末20Bの位置(現在位置)を測位し、情報端末20Bの位置情報(現在位置)をサーバ10に送信する。このようにして、サーバ10は、情報端末20A及び情報端末20Bの位置情報を取得する。
【0059】
サーバ10(
図8に示す位置取得部305)は、取得した情報端末20Aの位置情報と情報端末20Bの位置情報を位置情報テーブル205に格納する。
図10に示すテーブルは、位置情報テーブル205の例であり、IDカラム、情報端末カラム、位置カラム等を含む。IDカラムは、位置情報テーブル205が有するレコードを一意に識別する識別子を格納する。情報端末カラムは、情報端末20(情報端末名)を格納する。位置カラムは、情報端末カラムに格納されている情報端末20から取得した位置情報を格納する。
図10に示す例では、ID=1に対応するレコードは、情報端末20Aの現在位置が緯度「35度39分31.334秒」、経度「139度44分43.469秒」であること(すなわち、ユーザAが当該位置にいること)を示す。また、ID=2に対応するレコードは、情報端末20Bの現在位置が緯度「35度39分30.956秒」、経度「139度44分43.595秒」であること(すなわち、ユーザBが当該位置にいること)を示す。
【0060】
次に、サーバ10(
図8に示す距離算出部306)は、位置情報テーブル205から情報端末20Aの位置情報と情報端末20Bの位置情報を読み出し、読み出した位置情報に基づいて、情報端末20Aと情報端末20Bとの間の距離を算出する(すなわち、ユーザAとユーザBとの間の距離を算出する)(ステップS108)。
【0061】
次に、サーバ10(
図8に示す距離判別部307)は、基準距離情報206から基準距離を読み出し、情報端末20Aと情報端末20Bとの間の距離(ユーザAとユーザBとの間の距離)が基準距離以下であるか否かを判別する(ステップS109)。
【0062】
情報端末20Aと情報端末20Bとの間の距離が基準距離以下であると判別された場合(ステップS109;Yes)、サーバ10(
図8に示す通信制御部302)は、通信部100を制御して、情報端末20A及び情報端末20Bに、ユーザAとユーザBとでメッセージを交換することを薦める旨の推奨メールを情報端末20A及び情報端末20Bに送信する(ステップS103)。
例えば、サーバ10は、情報端末20Aと情報端末20Bとの間の距離が「50m」であり、基準距離が「100m」であれば、情報端末20Aと情報端末20Bの間の距離が基準距離以下であると判別し、情報端末20A及び情報端末20Bに推奨メールを送信する。
【0063】
一方、情報端末20Aと情報端末20Bとの間の距離が基準距離以下ではないと判別された場合(ステップS109;No)、サーバ10(
図2に示す制御部300)は、他の要求を受けるまで待機する(ステップS110)。
【0064】
本実施形態によれば、サーバ10は、メッセージを交換したことがあるユーザAとユーザBとを特定し、ユーザAの位置情報及びユーザBの位置情報を取得する。次に、サーバ10は、取得した位置情報に基づいてユーザAとユーザBとの間の距離を算出し、算出した距離が基準距離以下であれば、情報端末20A及び情報端末20Bに、ユーザAとユーザBとでメッセージを交換することを薦める旨の推奨メールを送信する。その結果、メッセージを交換したことがあるユーザのうち、親密度が高いと思われるユーザに推奨メールを送信することができる。
【0065】
なお、この発明は、上記の実施形態に限定されず、上記の実施形態には種々の変形(構成要素の削除を含む)及び応用が可能である。
【0066】
上記の実施形態2においては、サーバ10は、メッセージを交換したユーザを特定(ステップS102)した後、両ユーザの位置情報を取得(ステップS107)している。両ユーザの位置情報を取得するタイミングと回数は任意であり、例えばサーバ10は、ユーザを特定した後の所定の期間、周期的に位置情報を取得してもよい。この例では、サーバ10は、メッセージを交換したユーザを特定してから48時間の間、15分ごとに両ユーザの位置情報を取得し、そのいずれかのタイミングにおいてユーザ間の距離が基準距離以下であった場合に推奨メールを送信してもよい。このようにすることで、普段は近い距離にいるユーザのペアが、たまたま位置情報を取得するタイミングでお互いに離れた場所にいることによって基準を満たさなくなるケースを低減することができる。あるいは、サーバ10は、交換したメッセージ内容を判別し、判別した内容に基づいて両ユーザの位置情報を取得するタイミングを決定してもよい。このようにすることで、例えばユーザのペアがメッセージの交換により待ち合わせを約束した場合に、その待ち合わせの時間に位置情報を取得し、より実体に近い人間関係をシステムに反映することができる。
【0067】
実施形態2では、通信制御部302は、事前にメッセージを交換しているユーザ間の距離が基準距離以下であれば、両ユーザの情報端末20に、推奨メールを送信したが、推奨メールを送信する基準はこれに限定されない。両ユーザの位置に基づく様々な基準で抽出したユーザに推奨メールを送信することができる。例えば、事前にメッセージを交換しているユーザ同士が同一の行政区画内に位置していれば、推奨メールを両ユーザの情報端末20に送信するようにしてもよい。
【0068】
さらに、位置に限らず、実施形態2では、通信制御部302は、事前にメッセージを交換しているユーザ同士が他の任意の条件(基準)を満たすときに、そのユーザに推奨メールを送信するようにしてもよい。
【0069】
例えば、通信履歴に含まれているユーザAとユーザBとの間で交換したメッセージをユーザA及びユーザBが参照した場合に、通信制御部302はユーザA(ユーザAに対応する情報端末20A)及びユーザB(ユーザBに対応する情報端末20B)に推奨メールを送信してもよい。以下の例においては、通信履歴情報202が記録している通信履歴は、送信日時、送信元、送信先を示す情報に加えて、交換されたメッセージ、通信履歴ごとに付された履歴IDを含むものとする。
図11Aの(1)に示した例では、交換されたメッセージは、「明日は、○○時に○○駅で待ち合わせましょう。・・」というメッセージであり、履歴IDは「1001」である。また、記憶部200(参照情報記憶部)は、参照履歴テーブル207を記憶している。参照履歴テーブル207は、
図11Bに示すように、履歴ID(通信履歴情報202に含まれる履歴IDに対応するID)を格納する履歴IDカラム、履歴IDに対応するメッセージ(通信履歴情報202に含まれるメッセージ)を参照したユーザ(ユーザ名)を格納する参照ユーザカラムを含むものとする。ここで、参照履歴テーブル207の1行目のレコードは、ユーザA及びユーザBを含む複数のユーザが、履歴ID「1001」に対応するメッセージを参照したことを示している。
【0070】
以上の例において、ユーザ特定部301は、通信履歴情報202を参照し、メッセージを交換したユーザAとユーザBとを特定する。制御部300(第3の判別部)は、参照履歴テーブル207を参照し、ユーザ特定部301が特定したユーザAとユーザBとがいずれも、ユーザAとユーザBとの間で交換したメッセージ(明日は、○○時に・・・)を参照したか否かを判別する。通信制御部302は、制御部300によりメッセージを参照したと判別された場合、ユーザA及びユーザBに推奨メールを送信する。一方、通信制御部302は、メッセージが参照されていないと判別された場合、ユーザAとユーザBのいずれにも推奨メールを送信しない。
【0071】
また、メッセージが交換されてからユーザA及びユーザBが予め定められた期間内に、通信履歴に含まれているユーザAとユーザBとの間で交換されたメッセージを参照した場合に、通信制御部302はユーザA及びユーザBに推奨メールを送信してもよい。例えば、通信履歴は、情報の送信元であるユーザと、情報の送信先であるユーザと、当該情報の送信元であるユーザが当該情報の送信先であるユーザに情報を送信した日時と、を対応付けた情報を含むものとする。また参照情報は、当該交換された情報を参照したユーザと、当該ユーザが当該交換された情報を参照した日時と、を対応付けた情報を含むものとする。このとき、制御部300(期間算出部)は、ユーザAがユーザBに初めて情報を送信し、当該情報を受信したユーザBがユーザAに初めて情報を送信した日時を当該通信履歴から抽出し、さらに、ユーザAとユーザB双方が当該交換された情報を参照した日時を当該参照情報から抽出し、当該送信した日時から当該参照した日時までに経過した期間を算出する。次に、制御部300(第3の判別部)は、当該算出した期間が予め定められた期間より短いか否かを判別する。通信制御部302は、当該算出した期間が予め定められた期間より短いと判別された場合、ユーザA及びユーザBに推奨メールを送信する。一方、当該算出した期間が予め定められた期間より短くないと判別された場合、通信制御部302はユーザA及びユーザBのいずれにも推奨メールを送信しない。
【0072】
実施形態1では、事前にメッセージを交換したユーザに推奨メールを送信したが、当該ユーザ同士が既に関連付けられている場合には、当該ユーザに推奨メールを送信しなくてもよい。例えば、ステップS102でユーザ特定部301が特定したユーザ(事前にメッセージを交換したユーザ)が、ユーザA及びユーザBであったとする。このとき、関連付け判定部303は、関連付けテーブル204を参照し、ユーザAとユーザBとが既に関連付けられているか否かを判別する。通信制御部302は、ユーザAとユーザBとが既に関連付けられていると判別された場合、ユーザA(ユーザAに対応する情報端末20A)とユーザB(ユーザBに対応する情報端末20B)のいずれにも推奨メールを送信しない。一方、ユーザAとユーザBとが関連付けられていないと判別された場合、通信制御部302は、ユーザAとユーザBとを関連付ける。
【0073】
上記各実施形態では、推奨メールを受信したユーザが、推奨メールに応じてメッセージを交換した場合に、通信制御部302が当該ユーザ同士を関連付けたが、ユーザ同士を関連付ける基準はこれに限定されない。例えば、ユーザA及びユーザBが推奨メールを受信したとする。このとき、推奨メールとは独立に、ユーザAがユーザBに挨拶文を含むメールを送信し、さらに、ユーザBがユーザAに挨拶文を含むメールを送信した場合に、ユーザAとユーザBとを関連付けてもよい。
【0074】
上記各実施形態では、一定の基準を満たす関係をもつ(一定の交流がある)ユーザ同士については、通信制御部302が当該ユーザの承認なしで関連付けたが、各ユーザの人間関係の実態をシステムに反映するための手法はこれに限定されない。例えば、疎遠になっているユーザ(例えば、一定期間以上、何らメッセージを交換していないユーザ)同士の関連付けを当該ユーザの承認なしで解除してもよい。例えば、ユーザAとユーザBは、互いに関連付けられており、一定期間以上メッセージを交換していない(すなわち、疎遠になっている)ユーザであるとする。このとき、ユーザ特定部301は、関連付けテーブル204を参照し、当該テーブルにより関連付けられているユーザA及びユーザBを特定する。さらに、ユーザ特定部301は、通信履歴情報202を参照し、ユーザAとユーザBとが一定期間以上メッセージを交換していないことを特定する。次に、関連付け更新部304(関連付け解除部)は、ユーザAとユーザBとが解除条件(一定期間以上メッセージを交換していないという条件)を満たした場合に当該ユーザ同士の関連付けを(当該ユーザの承認なしで)解除する。
【0075】
また、情報端末20が、ユーザの操作に応じて当該ユーザに関連付けられているユーザを画面に表示する機能を備えている場合に、ユーザ間で最後に情報を交換した日時から経過した期間に応じて、情報端末20におけるユーザの表示形態を変化させてもよい。
【0076】
例えば、当該経過した期間に応じて、情報端末20の画面に表示されるユーザの文字サイズを小さくしてもよい。例えば、関連付けテーブル204は、ユーザAとユーザBとの関連付けを格納しており、通信履歴情報202は、情報の送信元であるユーザと、情報の送信先であるユーザと、情報の送信元であるユーザから情報の送信先であるユーザに情報が送信された日時と、を対応付けた情報を含むものとする。また、記憶部200は、ユーザ間で最後に情報を交換した日時から経過した期間と、当該経過した期間に応じた文字のサイズ(なお、当該文字のサイズは、当該経過した期間が長いほど、サイズが小さいという特徴を有する)とを対応付けて記憶しているとする。このとき、ユーザ特定部301は、関連付けテーブル204を参照し、互いに関連付けられているユーザA及びユーザBを特定する。次に、制御部300は、ユーザAがユーザBに最後に情報を送信し、当該情報を受信したユーザBがユーザAに最後に情報を送信した日時を通信履歴情報202から抽出し、当該送信した日時から経過した期間を算出する。また、制御部300は、当該経過した期間に対応付けられた文字サイズを記憶部200から抽出する。通信制御部302は、ユーザAとユーザBとの関連付け及び当該抽出された文字サイズを情報端末20Aに送信する。これら情報を受信した情報端末20Aの画面には、受信した文字サイズに応じたサイズでユーザBが表示される。
【0077】
また、ユーザ間で最後に情報を交換した日時から経過した期間に応じてユーザの文字サイズを小さくする代わりに、当該経過した期間に応じてユーザ(の文字)の色を薄くしてもよい。この場合、記憶部200は、当該経過した期間と文字のサイズとを対応付けて記憶する代わりに、当該経過した期間と、当該経過した期間に応じた文字の色(なお、当該色は、経過期間が長いほど、色が薄いという特徴を有する)とを対応付けて記憶する。また、制御部300は、当該経過した期間に対応付けられた文字の色を記憶部200から抽出し、通信制御部302は、ユーザAとユーザBとの関連付け及び当該抽出された文字の色を情報端末20Aに送信する。なお、色を薄くするとは、例えば、色の明度を低下させること、色の彩度を低下させること等を広く含む。
【0078】
(実施形態3)
なお、上記各実施形態に係るサーバ10は、以下に示すように構成することも可能である。
【0079】
サーバ10は、
図12に示すように、関連付けテーブル記憶部400と、通信履歴情報記憶部500と、制御部600とを備える。
【0080】
関連付けテーブル記憶部400は、フラッシュメモリ、ハードディスク等の記憶装置を備え、プログラム(例えば、
図2、8に示す関連付け更新プログラム201)、及びデータ(例えば、
図5A、
図5Bに示す関連付けテーブル204)等を記憶している。
【0081】
通信履歴情報記憶部500は、フラッシュメモリ、ハードディスク等の記憶装置を備え、データ(例えば、
図3A、
図3Bに示す通信履歴情報202)等を記憶している。
【0082】
制御部600は、CPU、基本動作プログラムを記憶するROM、ワークエリアとなるRAM等を備え、関連付けテーブル記憶部400等が記憶するプログラムに従って種々の処理を実行する。例えば、制御部600は、関連付け更新プログラム201に従って関連付け更新処理(上記各実施形態で説明した関連付け更新処理)を実行する。また、制御部600は、関連付け更新プログラム201に従って動作することで、ユーザ特定部601、通信部602、判別部603、関連付け更新部604として機能する。
【0083】
ユーザ特定部601は、通信履歴情報記憶部500が記憶する通信履歴に基づいて、予め定められた基準を満たす第1のユーザ(ユーザA)と第2のユーザ(ユーザB)とを特定する。
【0084】
通信部602は、ユーザ特定部601が特定した第1のユーザに対応する情報端末20Aと、ユーザ特定部601が特定した第2のユーザに対応する情報端末20Bとのうち、少なくとも1つに、第1のユーザと第2のユーザとを関連付けテーブル204に登録するために行うべき処理を提示するメッセージを送信する。
【0085】
判別部603は、通信部602によるメッセージの送信後に、第1のユーザと第2のユーザとが当該メッセージにおいて提示した処理を行ったか否かを判別する。
【0086】
関連付け更新部604は、判別部603により提示した処理が行われたと判別された場合、関連付けテーブル204を更新し、第1のユーザと第2のユーザとを関連付ける。
【0087】
以上のような構成であっても、サーバ10は、実施形態1や実施形態2に示したサーバ10と同様の効果を得ることができる。
【0088】
また、上記実施形態において、実行されるプログラムは、フレキシブルディスク、CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto-Optical disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをインストールすることにより、上述の処理を実行するシステムを構成することとしてもよい。
【0089】
また、プログラムをインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、ダウンロード等するようにしてもよい。
【0090】
なお、上述の機能を、OS(Operating System)が分担して実現する場合又はOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、ダウンロード等してもよい。
【0091】
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【0092】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0093】
(付記1)
ユーザ同士を関連付ける関連付けテーブルを記憶する関連付けテーブル記憶部と、
通信ネットワークを介して接続する端末との通信履歴を記憶する通信履歴情報記憶部と、
前記通信履歴情報記憶部が記憶する前記通信履歴に基づいて、予め定められた基準を満たす第1のユーザと第2のユーザとを特定するユーザ特定部と、
前記ユーザ特定部が特定した前記第1のユーザに対応する端末と、前記ユーザ特定部が特定した前記第2のユーザに対応する端末とのうち、少なくとも1つに、前記第1のユーザと前記第2のユーザとを前記関連付けテーブルに登録するために行うべき処理を提示するメッセージを送信する通信部と、
前記通信部による前記メッセージの送信後に、前記第1のユーザと前記第2のユーザとが、前記メッセージにおいて提示した処理を行ったか否かを判別する判別部と、
前記判別部により提示した処理が行われたと判別された場合、前記関連付けテーブルを更新し、前記第1のユーザと前記第2のユーザとを関連付ける関連付け更新部と、
を備えることを特徴とする情報処理装置。
【0094】
(付記2)
前記通信部は、前記ユーザ特定部が特定した前記第1のユーザに対応する端末と、前記ユーザ特定部が特定した前記第2のユーザに対応する端末とのうち、少なくとも1つに、前記第1のユーザと前記第2のユーザとの間で情報を交換することを薦める旨のメッセージを送信し、
前記判別部は、前記通信履歴に基づいて、前記メッセージの送信後に前記第1のユーザと前記第2のユーザとの間で情報が交換されたか否かを判別し、
前記関連付け更新部は、前記判別部により情報が交換されたと判別された場合、前記関連付けテーブルを更新し、前記第1のユーザと前記第2のユーザとを関連付ける、
ことを特徴とする付記1に記載の情報処理装置。
【0095】
(付記3)
前記第1のユーザの位置を示す第1の位置情報と前記第2のユーザの位置を示す第2の位置情報とを取得する位置情報取得部と、
前記位置情報取得部が取得した前記第1の位置情報と前記第2の位置情報に基づいて、前記第1のユーザの位置と前記第2のユーザの位置とが予め定められた条件を満たすか否かを判別する第2の判別部と、を備え、
前記通信部は、前記第2の判別部により前記条件を満たさないと判別された場合、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする付記1又は2に記載の情報処理装置。
【0096】
(付記4)
前記位置情報取得部が取得した前記第1の位置情報と前記第2の位置情報とに基づいて、前記第1のユーザと前記第2のユーザとの距離を算出する距離算出部、を備え、
前記第2の判別部は、前記距離算出部が算出した距離が基準距離以下であるか否かを判別し、
前記通信部は、前記第2の判別部により前記基準距離以下ではないと判別された場合に、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする付記3に記載の情報処理装置。
【0097】
(付記5)
前記通信履歴は、前記第1のユーザと前記第2のユーザとの間で交換された情報を含み、
前記交換された情報を参照したユーザを特定する参照情報を記憶する参照情報記憶部と、
前記参照情報記憶部が記憶する前記参照情報に基づいて前記第1のユーザと前記第2のユーザとがいずれも、前記交換された情報を参照したか否かを判別する第3の判別部と、を備え、
前記通信部は、前記第3の判別部により参照していないと判別された場合に、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする付記1又は2に記載の情報処理装置。
【0098】
(付記6)
前記通信履歴は、情報の送信元であるユーザと、情報の送信先であるユーザと、前記情報の送信元であるユーザが前記情報の送信先であるユーザに情報を送信した日時と、を対応付けた情報を含み、
前記参照情報は、前記交換された情報を参照したユーザと、当該ユーザが当該交換された情報を参照した日時と、を対応付けた情報を含み、
前記第1のユーザが前記第2のユーザに初めて情報を送信し、当該情報を受信した前記第2のユーザが前記第1のユーザに初めて情報を送信した日時を前記通信履歴から抽出し、さらに、前記第1のユーザと前記第2のユーザ双方が前記交換された情報を参照した日時を前記参照情報から抽出し、当該送信した日時から当該参照した日時までに経過した期間を算出する期間算出部、を備え、
前記第3の判別部は、前記期間算出部により算出された期間が予め定められた期間より短いか否かを判別し、
前記通信部は、前記第3の判別部により予め定められた期間より短くないと判別された場合に、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする付記5に記載の情報処理装置。
【0099】
(付記7)
前記ユーザ特定部が特定した前記第1のユーザと前記第2のユーザとが、前記関連付けテーブル記憶部が記憶する前記関連付けテーブルにおいて既に関連付けられているか否かを判別する関連付け判別部、を備え、
前記通信部は、前記関連付け判別部により前記第1のユーザと前記第2のユーザとが関連付けられていると判別された場合、前記第1のユーザに対応する端末と前記第2のユーザに対応する端末のいずれにも前記メッセージを送信しない、
ことを特徴とする付記1乃至6のいずれか1に記載の情報処理装置。
【0100】
(付記8)
通信ネットワークを介して接続する情報処理装置と端末との通信履歴に基づいて、予め定められた基準を満たす第1のユーザと第2のユーザとを特定する特定ステップと、
前記特定ステップで特定された前記第1のユーザに対応する端末と、前記特定ステップで特定された前記第2のユーザに対応する端末とのうち、少なくとも1つに、前記第1のユーザと前記第2のユーザとを関連付けるために行うべき処理を提示するメッセージを送信する送信ステップと、
前記送信ステップにおける前記メッセージの送信後に、前記第1のユーザと前記第2のユーザとが、前記メッセージにおいて提示した処理を行ったか否かを判別する判別ステップと、
前記判別ステップで提示した処理が行われたと判別された場合、前記第1のユーザと前記第2のユーザとを関連付ける関連付けステップと、
を備えることを特徴とする情報処理方法。
【0101】
(付記9)
コンピュータに、
通信ネットワークを介して接続する端末との通信履歴に基づいて、予め定められた基準を満たす第1のユーザと第2のユーザとを特定する特定ステップと、
前記特定ステップで特定された前記第1のユーザに対応する端末と、前記特定ステップで特定された前記第2のユーザに対応する端末とのうち、少なくとも1つに、前記第1のユーザと前記第2のユーザとを関連付けるために行うべき処理を提示するメッセージを送信する送信ステップと、
前記送信ステップにおける前記メッセージの送信後に、前記第1のユーザと前記第2のユーザとが、前記メッセージにおいて提示した処理を行ったか否かを判別する判別ステップと、
前記判別ステップで提示した処理が行われたと判別された場合、前記第1のユーザと前記第2のユーザとを関連付ける関連付けステップと、
を実行させるプログラムを記録した記録媒体。
【0102】
本発明は、2013年2月28日に出願された日本国特許出願2013−39613号に基づく。本明細書中に日本国特許出願2013−39613号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。