以下、本発明による情報システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。また、本実施の形態において説明する各情報の形式、内容などは、あくまで例示であり、各情報の持つ意味を示すことができれば、形式、内容などは問わない。
(実施の形態1)
本実施の形態において、サーバ装置11と、1以上の端末装置12とを備える情報システム1について説明する。サーバ装置11は、端末装置12から投稿情報と位置情報とを受信し、当該投稿情報と位置情報とを蓄積する、または、端末装置12から位置情報を受信し、当該位置情報が示す位置に関連する内容を示す投稿情報を取得し、端末装置12に送信する。また、端末装置12は、投稿情報を受け付け、当該投稿情報と位置情報とをサーバ装置に送信する、または、位置情報をサーバ装置11に送信し、当該送信に応じてサーバ装置11から投稿情報を受信する。
図1は、本実施の形態における情報システム1の概念図である。図1において、サーバ装置11と、1以上の端末装置12とは、通信手段13を介して通信可能である。また、端末装置12は、例えば、携帯電話やPDAなどの携帯端末である。また、通信手段13は、無線または有線の通信手段であり、例えば、インターネットや、イントラネット、LAN、NFCやZigBeeなどの近距離無線通信用の通信手段などである。
図2は、本実施の形態におけるサーバ装置11および端末装置12のブロック図である。サーバ装置11は、投稿管理情報格納部111、受信部112、蓄積部113、投稿情報取得部114、送信部115を備える。また、端末装置12は、端末位置情報格納部121、端末位置情報取得部122、端末蓄積部123、端末受付部124、端末送信部125、端末受信部126、端末出力部127を備える。
投稿管理情報格納部111には、1以上の投稿管理情報が格納される。「投稿管理情報」とは、投稿情報を管理するための情報である。また、「投稿管理情報」は、投稿情報と、位置情報とが対応付いた情報である。
上記「投稿情報」とは、投稿内容を示す情報である。「投稿内容」とは、例えば、伝言や、いわゆるつぶやき、いわゆる口コミなどである。また、「投稿内容」は、問わない。また、「投稿情報」は、通常、ユーザにより投稿された情報である。また、「投稿情報」の形式は、通常、文字であるが、画像や、音声であってもよい。
また、上記「位置情報」とは、位置を示す情報である。当該「位置」は、通常、経緯度であるが、地図上の座標や、いわゆる地名、住所などであってもよい。また、「位置情報」は、例えば、無線LANのアクセスポイントを識別する情報(以下、適宜、アクセスポイント識別情報)であってもよい。「アクセスポイント識別情報」は、例えば、アクセスポイントのSSIDや、アクセスポイントのMACアドレス、アクセスポイントのIPアドレス(グローバルIPアドレス)、アクセスポイントの個体識別番号などを示す情報である。また、当該「位置」には、いわゆる高さ(高度)が含まれてもよいし、そうでなくてもよい。
なお、投稿管理情報が有する位置情報(投稿情報に対応付いている位置情報)は、通常、投稿情報が示す投稿内容に関連する位置を示す。「投稿内容に関連する位置」とは、通常、投稿情報が送信された位置である。また、「投稿内容に関連する位置」は、例えば、投稿内容の対象とされている物体が存在している位置または存在していた位置や、投稿内容の対象とされている出来事が発生している位置または発生していた位置などであってもよい。また、投稿管理情報が有する位置情報を、以下、適宜、投稿位置情報とする。
また、投稿管理情報は、例えば、日時を示す日時情報を有していてもよい。当該日時情報が示す日時は、例えば、投稿管理情報が投稿管理情報格納部111に蓄積された日時や、後述の受信部112が投稿情報を受信した日時などである。また、日時は、通常、日付と時刻を有する。また、投稿管理情報が有する日時情報を、以下、適宜、投稿日時情報とする。
また、投稿管理情報は、例えば、ユーザを識別するユーザ識別情報を有していてもよい。当該ユーザ識別情報により識別されるユーザは、投稿情報を送信したユーザである。また、投稿管理情報が有するユーザ識別情報を、以下、適宜、投稿ユーザ識別情報とする。
受信部112は、端末装置12から情報を受信する。当該端末装置12から受信する情報は、例えば、投稿情報や、位置情報、ユーザ識別情報などである。
受信部112は、例えば、投稿情報および位置情報を受信する。「投稿情報および位置情報を受信する」とは、投稿情報と共に位置情報を受信することである。この場合、当該投稿情報と当該位置情報とは、対応付いていてもよいし、そうでなくてもよい。
また、受信部112は、例えば、投稿情報要求指示を受信する。「投稿情報要求指示」とは、投稿情報を要求する指示である。また、「投稿情報要求指示」は、通常、位置情報を有する。つまり、受信部112は、投稿情報要求指示を受信することにより、位置情報を受信する。
また、例えば、ユーザ識別情報を受信する場合、受信部112は、通常、位置情報と共に、ユーザ識別情報を受信する。つまり、「投稿情報要求指示」は、例えば、ユーザ識別情報を有していてもよい。
蓄積部113は、受信部112が端末装置12から投稿情報および位置情報を受信した場合に、当該投稿情報と当該位置情報とが対応付いた投稿管理情報を、投稿管理情報格納部111に蓄積する。具体的に、蓄積部113は、受信部112が端末装置から投稿情報および位置情報を受信したか否かを判断する。そして、蓄積部113は、受信部112が端末装置から投稿情報および位置情報を受信した場合に、当該投稿情報と当該位置情報とを対応付けて、投稿管理情報を構成する。そして、蓄積部113は、構成した投稿管理情報を、投稿管理情報格納部111に蓄積する。
また、受信部112が端末装置12から投稿情報および位置情報と共に、ユーザ識別情報を受信した場合、蓄積部113は、当該投稿情報と当該位置情報と当該ユーザ識別情報とを対応付けて、投稿管理情報を構成してもよい。
また、蓄積部113は、例えば、日時情報を取得し、当該日時情報を対応付けて、投稿管理情報を構成してもよい。
投稿情報取得部114は、受信部112が端末装置12から位置情報を受信した場合に、投稿情報を、投稿管理情報格納部111から取得する。ここで、受信部112が端末装置12から受信した位置情報を、受信位置情報とする。投稿情報取得部114は、通常、受信位置情報が示す位置との関係が予め決められた条件を満たす位置を示す投稿位置情報に対応付いている投稿情報を、投稿管理情報格納部111から取得する。当該「関係」とは、通常、「距離」である。つまり、投稿情報取得部114は、受信位置情報が示す位置との距離が予め決められた条件(以下、適宜、距離条件)を満たすほど近い位置を示す投稿位置情報に対応付いている投稿情報を、投稿管理情報から取得する。
具体的に、投稿情報取得部114は、受信位置情報と、1以上の各投稿管理情報が有する投稿位置情報とを用いて、受信位置情報が示す位置と、1以上の各投稿位置情報が示す位置との距離(以下、適宜、投稿距離)を算出する。そして、投稿情報取得部114は、投稿距離が距離条件を満たすか否かを判断する。そして、投稿情報取得部114は、投稿距離が距離条件を満たす投稿位置情報に対応付いている投稿情報を、投稿管理情報格納部111から取得する。
例えば、距離条件が「距離≦2m」であるとする。当該距離条件は、投稿距離が2m以下であることを意味する。また、例えば、受信位置情報と投稿位置情報とを用いて算出された投稿距離が「1m」であるとする。この様な場合、投稿情報取得部114は、当該投稿距離が、当該距離条件を満たすと判断する。そして、投稿情報取得部114は、当該投稿距離の算出に用いた投稿位置情報に対応付いている投稿情報を、投稿管理情報格納部111から取得する。
また、上記「受信位置情報が示す位置との距離が距離条件を満たすほど近い位置を示す投稿位置情報」には、「受信位置情報と同一の投稿位置情報」も含まれる。つまり、投稿情報取得部114は、受信位置情報と同一の投稿位置情報に対応付いている投稿情報を、投稿管理情報格納部111から取得してもよい。
また、投稿情報取得部114は、例えば、予め決められた条件(以下、適宜、日時条件)を満たす日時を示す投稿日時情報が対応付いている投稿情報を取得してもよい。「日時条件」は、通常、現在の日時との関係に関する条件である。また、ここで、投稿日時情報が示す日時を、以下、適宜、投稿日時とする。「日時条件」は、例えば、投稿日時が現在の日時から24時間以内であることや、投稿日時が現在の日時から7日間以内であること、投稿日時が有する時刻が属する時間帯が、現在の時刻が属する時間帯と同じであることなどである。
また、投稿情報取得部114は、例えば、予め決められた条件(以下、適宜、ユーザ条件)を満たす投稿ユーザ識別情報が対応付いている投稿情報を取得してもよい。「ユーザ条件」は、通常、受信部112が受信したユーザ識別情報(以下、受信ユーザ識別情報)との関係に関する条件である。「ユーザ条件」は、通常、投稿ユーザ識別情報が受信ユーザ識別情報と異なること、である。
また、投稿情報取得部114は、例えば、投稿情報に対応付いている情報と共に、投稿情報を取得してもよい。当該「投稿情報に対応付いている情報」とは、例えば、ユーザ識別情報や、位置情報、日時情報などである。
送信部115は、情報を端末装置12に送信する。当該端末装置12に送信する情報は、通常、投稿情報取得部114が取得した投稿情報である。また、当該端末装置12に送信する情報は、例えば、投稿情報取得部114が投稿情報と共に取得した位置情報や、ユーザ識別情報などであってもよい。また、当該情報の送信先となる端末装置12は、通常、サーバ装置11に位置情報などの情報を送信した端末装置12である。
端末装置12が備える端末位置情報格納部121には、1以上の位置情報が格納される。当該位置情報は、通常、端末位置情報取得部122が取得した位置情報である。また、
また、当該位置情報には、例えば、日時情報が対応付いていてもよい。当該日時情報が示す日時は、例えば、位置情報が端末位置情報格納部121に蓄積された日時や、後述の端末位置情報取得部122が位置情報を取得した日時などである。
また、端末位置情報格納部121には、例えば、1以上の位置情報が予め格納されていてもよい。当該位置情報が示す位置は、例えば、地図上の位置である。この場合、端末位置情報格納部121には、例えば、地図を示す情報である地図情報が格納されており、当該地図情報が、1以上の位置情報を有していてもよい。
なお、地図情報が示す地図の種類は、問わない。また、地図情報は、通常、カーナビゲーションで用いられるKIWIフォーマットのものである。また、地図情報は、例えば、いわゆるラスタデータや、いわゆるベクタデータであってもよい。
端末位置情報取得部122は、位置を示す位置情報を取得する。当該位置情報は、端末装置12の位置を示す位置情報である。また、当該「端末装置12の位置を示す位置情報」を、以下、適宜、端末位置情報とする。また、端末位置情報取得部122は、通常、定期的に端末位置情報を取得する。また、端末位置情報取得部122は、通常、衛星航法システム(GPS受信機など)や、移動体通信用の基地局から位置情報を受信する装置、無線LANのアクセスポイントから位置情報を受信する装置などから、位置情報を取得する。この場合、端末位置情報取得部122は、これらの装置を有していてもよいし、これらの装置で実現され得てもよい。また、端末位置情報取得部122の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。
なお、いわゆる地名や、住所などを示す位置情報を取得する方法や手順などは、公知であるので、詳細な説明を省略する。
端末蓄積部123は、端末位置情報を、端末位置情報格納部121に蓄積する。端末蓄積部123は、通常、端末位置情報取得部122が端末位置情報を取得するたびに、当該端末位置情報を、端末位置情報格納部121に蓄積する。
また、端末蓄積部123は、例えば、端末位置情報が予め決められた条件(以下、適宜、端末位置条件)を満たす場合に、当該端末位置情報を、端末位置情報格納部121に蓄積してもよい。具体的に、端末蓄積部123は、端末位置情報取得部122が取得した端末位置情報が、端末位置条件を満たすか否かを判断する。そして、端末蓄積部123は、端末位置情報が端末位置条件を満たす場合に、当該端末位置情報を端末位置情報格納部121に蓄積する。
また、上記「端末位置条件」は、例えば、端末位置情報に関する条件や、端末位置情報が取得されたタイミングに関する条件などである。「端末位置情報に関する条件」は、例えば、端末位置情報が、端末位置情報格納部121に格納されている位置情報と異なることや、端末位置情報が、直前に取得された端末位置情報と異なることなどである。また、「端末位置情報が取得されたタイミングに関する条件」は、例えば、端末位置情報が取得されたタイミングが、直前に端末位置情報が蓄積された時刻から予め決められた時間が経過したあとであることや、端末位置情報が取得されたタイミングが、予め決められた時刻であることなどである。
端末受付部124は、情報や指示などを受け付ける。当該情報は、例えば、投稿情報である。また、当該指示は、例えば、位置選択指示や、端末位置送信指示などである。
上記「位置選択指示」とは、位置情報を選択する指示である。また、「位置選択指示」は、通常、端末位置情報格納部121に格納されている1以上の位置情報の中から、位置情報を選択する指示である。また、「位置選択指示」は、例えば、送信位置選択指示や、受信位置選択指示などである。「送信位置選択指示」とは、送信する投稿情報に対応する位置情報を選択する指示である。言い換えると、「送信位置選択指示」とは、投稿情報を送信する際に、当該投稿情報に対応付けて送信する位置情報を選択する指示である。また、「受信位置選択指示」とは、受信する投稿情報に対応する位置情報を選択する指示である。言い換えると、「受信位置選択指示」とは、投稿情報の受信に際して送信する位置情報を選択する指示である。
また、上記「端末位置送信指示」とは、端末位置情報取得部122が取得した端末位置情報を、サーバ装置11に送信する指示である。また、「端末位置送信指示」は、当該端末位置情報を有する投稿情報要求指示を、サーバ装置11に送信する指示でもある。
また、受け付けとは、タッチパネルや、キーボードなどの入力デバイスから入力された情報の取得、光ディスクや磁気ディスク、半導体メモリなどの記録媒体に格納されている情報の取得、有線もしくは無線の通信回線を介して送信された情報の受信などを含む概念である。
また、端末受付部124における情報や指示などの入力手段は、メニュー画面によるものや、キーボードなど、何でもよい。端末受付部124は、メニュー画面の制御ソフトウェアや、キーボード等の入力手段のデバイスドライバなどで実現され得る。
端末送信部125は、情報や指示を、サーバ装置11に送信する。当該情報は、例えば、投稿情報や、位置情報、ユーザ識別情報などである。また、当該指示は、通常、投稿情報要求指示である。
例えば、端末受付部124が投稿情報を受け付けた場合、端末送信部125は、当該投稿情報の受け付けに応じて、当該投稿情報および端末位置情報を送信する。また、例えば、端末受付部124が端末位置送信指示を受け付けた場合、端末送信部125は、当該端末位置送信指示の受け付けに応じて、端末位置情報を送信する。このとき、端末送信部125は、通常、端末位置情報を有する投稿情報要求指示を送信する。
また、例えば、端末受付部124が送信位置選択指示を受け付けた場合、端末送信部125は、通常、端末受付部124が受け付けた投稿情報および送信位置選択指示に対応する位置情報を送信する。この場合、端末受付部124が投稿情報および送信位置選択指示を受け付ける順序は、問わない。また、例えば、端末受付部124が受信位置選択指示を受け付けた場合、端末送信部125は、通常、受信位置選択指示に対応する位置情報を送信する。
なお、「送信位置選択指示に対応する位置情報」および「受信位置選択指示に対応する位置情報」は、通常、当該指示により選択された位置情報である。また、「送信位置選択指示に対応する位置情報」を、以下、適宜、送信選択位置情報とする。また、「受信位置選択指示に対応する位置情報」を、以下、適宜、受信選択位置情報とする。
また、端末送信部125は、例えば、位置情報と共に、ユーザ識別情報を送信してもよい。この場合、当該ユーザ識別情報は、通常、予め決められた記憶領域に格納されている。
端末受信部126は、端末送信部125による位置情報の送信に応じて、サーバ装置11から情報を受信する。当該「位置情報の送信」とは、例えば、投稿情報および端末位置情報の送信、端末位置情報を有する投稿情報要求指示、投稿情報および送信位置選択指示に対応する位置情報の送信、受信位置選択指示に対応する位置情報の送信などである。また、サーバ装置11から受信する情報は、通常、投稿情報である。また、当該情報は、例えば、ユーザ識別情報や、位置情報、日時情報などであってもよい。
端末出力部127は、端末受信部126が受信した投稿情報を出力する。出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、送信や蓄積、処理結果の引渡しについては、出力対象が最終的にユーザに提示されるものとする。
また、端末出力部127は、例えば、端末位置情報格納部121に格納されている1以上の位置情報を出力してもよい。また、端末位置情報格納部121に地図情報が格納されている場合、端末出力部127は、当該地図情報を出力してもよい。
また、端末出力部127は、ディスプレイやスピーカーなどの出力デバイスを含むと考えてもよいし、含まないと考えてもよい。端末出力部127は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイスなどで実現され得る。
なお、投稿管理情報格納部111、端末位置情報格納部121は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。また、投稿管理情報格納部111などに所定の情報が記憶される過程は、問わない。例えば、当該所定の情報は、記録媒体や、通信回線、入力デバイスなどを介して投稿管理情報格納部111などに記憶されてもよい。
また、受信部112、端末受信部126は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されてもよい。
また、蓄積部113、投稿情報取得部114、端末蓄積部123は、通常、MPUやメモリ等から実現され得る。また、蓄積部113などの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。なお、蓄積部113などは、ハードウェア(専用回路)で実現されてもよい。
また、送信部115、端末送信部125は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されてもよい。
次に、情報システム1の全体動作について説明する。なお、所定の情報におけるi番目の情報は、「情報[i]」と記載するものとする。まず、サーバ装置11の全体動作について、図3のフローチャートを用いて説明する。
(ステップS301)蓄積部113は、受信部112が投稿情報および位置情報を受信したか否かを判断する。受信した場合は、ステップS302に進み、そうでない場合は、ステップS304に進む。
(ステップS302)蓄積部113は、ステップS301で受信した投稿情報と位置情報とを対応付け、投稿管理情報を構成する。
(ステップS303)蓄積部113は、ステップS302で構成した投稿情報を、投稿管理情報格納部111に蓄積する。
(ステップS304)投稿情報取得部114は、受信部112が位置情報を受信したか否かを判断する。受信した場合は、ステップS305に進み、そうでない場合は、ステップS301に戻る。
(ステップS305)投稿情報取得部114は、カウンタiに1をセットする。ここで、投稿管理情報格納部111には、m個の投稿管理情報が格納されているものとする。
(ステップS306)投稿情報取得部114は、ステップS304で受信した位置情報である受信位置情報と、投稿管理情報[i]が有する位置情報である投稿位置情報[i]とを用いて、投稿距離を算出する。
(ステップS307)投稿情報取得部114は、ステップS306で算出した投稿距離が距離条件を満たすか否かを判断する。満たす場合は、ステップS308に進み、そうでない場合は、ステップS309に進む。
(ステップS308)投稿情報取得部114は、投稿管理情報[i]が有する投稿情報である投稿情報[i]を取得する。
(ステップS309)投稿情報取得部114は、iがmであるか否かを判断する。mである場合は、ステップS301に戻り、そうでない場合は、ステップS310に進む。
(ステップS310)投稿情報取得部114は、iを1インクリメントする。そして、ステップS306に戻る。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
次に、端末装置12の全体動作について、図4のフローチャートを用いて説明する。
(ステップS401)端末装置12は、端末受付部124が電源ONの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS402に進み、そうでない場合は、ステップS401に戻る。
(ステップS402)端末装置12は、電源ONの処理を行う。
(ステップS403)端末位置情報取得部122は、端末位置情報の取得を開始する。以降、端末位置情報取得部122は、通常、端末装置12の電源がOFFになるまで、端末位置情報を定期的に取得し続ける。
(ステップS404)端末蓄積部123は、ステップS403で取得した端末位置情報が端末位置条件を満たすか否かを判断する。満たす場合は、ステップS405に進み、そうでない場合は、ステップS406に進む。
(ステップS405)端末蓄積部123は、ステップS403で取得した端末位置情報を、端末位置情報格納部121に蓄積する。
(ステップS406)端末送信部125は、端末受付部124が投稿情報を受け付けたか否かを判断する。受け付けた場合は、ステップS407に進み、そうでない場合は、ステップS413に進む。
(ステップS407)端末送信部125は、端末受付部124が送信位置選択指示を受け付けたか否かを判断する。受け付けた場合は、ステップS409に進み、そうでない場合は、ステップS408に進む。
(ステップS408)端末送信部125は、ステップS406で受け付けた投稿情報およびステップS403で取得した端末位置情報を、サーバ装置11に送信する。
(ステップS409)端末送信部125は、ステップS407で受け付けた送信位置選択指示に対応する位置情報である送信選択位置情報を、端末位置情報格納部121から取得する。
(ステップS410)端末送信部125は、ステップS406で受け付けた投稿情報およびステップS409で取得した送信選択位置情報を、サーバ装置11に送信する。
(ステップS411)端末出力部127は、端末受信部126が投稿情報を受信したか否かを判断する。受信した場合は、ステップS412に進み、そうでない場合は、ステップS411に戻る。
(ステップS412)端末出力部127は、ステップS411で受信した投稿情報を出力する。
(ステップS413)端末送信部125は、端末受付部124が端末位置送信指示を受け付けたか否かを判断する。受け付けた場合は、ステップS414に進み、そうでない場合は、ステップS415に進む。
(ステップS414)端末送信部125は、ステップS403で取得した端末位置情報を有する投稿情報要求指示を、サーバ装置11に送信する。そして、ステップS411に戻る。
(ステップS415)端末送信部125は、端末受付部124が受信位置選択指示を受け付けたか否かを判断する。受け付けた場合は、ステップS416に進み、そうでない場合は、ステップS418に進む。
(ステップS416)端末送信部125は、ステップS415で受け付けた受信位置選択指示に対応する位置情報である受信選択位置情報を、端末位置情報格納部121から取得する。
(ステップS417)端末送信部125は、ステップS416で取得した受信選択位置情報を、サーバ装置11に送信する。そして、ステップS411に戻る。
(ステップS418)端末装置12は、端末受付部124が電源OFFの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS419に進み、そうでない場合は、ステップS404に戻る。
(ステップS419)端末装置12は、電源OFFの処理を行う。そして、ステップS401に戻る。
なお、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
また、図4のフローチャートにおいて、送信選択位置情報および受信選択位置情報の取得は、例えば、図示しない選択位置情報取得部が行ってもよい。この場合、選択位置情報取得部は、例えば、端末受付部124が送信位置選択指示を受け付けた場合は、当該送信位置選択指示に対応する位置情報を、端末位置情報格納部121から取得する。また、この場合、選択位置情報取得部は、例えば、端末受付部124が受信位置選択指示を受け付けた場合は、当該受信位置選択指示に対応する位置情報を、端末位置情報格納部121から取得する。
(具体例)
次に、情報システム1の動作の具体例について説明する。なお、本具体例において、サーバ装置11は、投稿情報を受信し、送信されてきた位置情報に対応する投稿情報を送信するサーバ(以下、適宜、サーバ)であるものとする。また、端末装置12は、いわゆるスマートフォン(以下、適宜、スマホ)であるものとする。また、当該スマホは、ユーザが所持しており、端末位置情報取得部122は、定期的に端末位置情報を取得しているものとする。また、端末蓄積部123は、当該端末位置情報を、予め決められた時間間隔ごとに、端末位置情報格納部121に蓄積しているものとする。なお、重複する説明などは、以下、適宜、省略するものとする。
(例1)
本例において、端末装置12が投稿情報と端末位置情報とを送信し、サーバ装置11が投稿管理情報を蓄積する例について説明する。
まず、ユーザがスマホを所持している状態において、A駅内に設置されている無線LANのアクセスポイントの付近にいるとする。当該スマホの予め決められた記憶領域には、ユーザ識別情報「usr012」が格納されているものとする。また、当該アクセスポイントは、ビーコン信号として、アクセスポイントの位置を示す位置情報を送信しているものとする。つまり、当該状態において、スマホは、当該ビーコン信号を受信する装置を備えており、端末位置情報取得部122は、当該装置から、位置情報を取得するものとする。
次に、ユーザがスマホを操作し、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」を入力したとする。すると、端末受付部124は、当該投稿情報を受け付ける。
次に、端末送信部125は、端末受付部124が受け付けた投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」および当該投稿情報を受け付けた際に端末位置情報取得部122が取得した位置情報および予め決められた記憶領域に格納されているユーザ識別情報「usr012」を、サーバに送信する。当該位置情報は、「(N34.XX23,E135.XX12)」であるものとする。
次に、サーバの受信部112は、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」および位置情報「(N34.XX23,E135.XX12)」およびユーザ識別情報「usr012」を受信する。
次に、蓄積部113は、日時情報を取得する。当該日時情報は、「2013/07/22 11:24:21」であるものとする。そして、蓄積部113は、受信部112が受信したユーザ識別情報「usr012」と、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」と、位置情報「(N34.XX23,E135.XX12)」と、取得した日時情報「2013/07/22 11:24:21」とを対応付け、投稿管理情報を構成する。そして、蓄積部113は、当該構成した投稿管理情報を、投稿管理情報格納部111に蓄積する。
なお、上記の様な蓄積の処理により投稿管理情報格納部111に蓄積される投稿管理情報は、例えば、図5である。当該投稿管理情報は、レコードを一意に特定するためのIDと、ユーザ識別情報(項目名:ユーザ)と、投稿情報(項目名:投稿内容)と、位置情報(項目名:位置)と、日時情報(項目名:日時)を有する。なお、上記の蓄積処理により蓄積された投稿管理情報は、図5の「ID=012」である。
(例2)
本例において、端末装置12が投稿情報と送信選択位置情報とを送信し、サーバ装置11が投稿管理情報を蓄積する例について説明する。なお、本例において、端末位置情報格納部121には、図6に示す位置情報が格納されているものとする。当該位置情報は、地名を示す位置情報(項目名:地名)と、経緯度を示す位置情報(項目名:位置)である。また、当該位置情報には、レコードを一意に特定するためのIDと、日時情報(項目名:日時)とが対応付いている。
まず、ユーザがスマホを所持している状態において、自宅の部屋にいるとする。当該スマホの予め決められた記憶領域には、ユーザ識別情報「usr018」が格納されているものとする。また、当該状態において、端末位置情報取得部122は、GPSの受信機から、位置情報を取得するものとする。
次に、例えば、ユーザがスマホを操作し、投稿情報「△△カフェの□□ラテは大正解!」を入力したとする。すると、端末受付部124は、当該投稿情報を受け付ける。
次に、ユーザがスマホを操作し、端末位置情報格納部121に格納されている1以上の位置情報の中から、1つの位置情報を選択する操作を行ったとする。このとき、端末出力部127は、通常、図6の地名を示す位置情報を出力する。そして、ユーザは、当該出力されている地名の中から1つの地名を選択する。すると、端末受付部124は、送信位置選択指示を受け付ける。
次に、端末送信部125は、送信選択位置情報を、端末位置情報格納部121から取得する。当該送信選択位置情報は、図6の「ID=013」の位置情報「(N34.XX23,E135.XX38)」であるものとする。
次に、端末送信部125は、端末受付部124が受け付けた投稿情報「△△カフェの□□ラテは大正解!」および送信選択位置情報「(N34.XX23,E135.XX38)」および予め決められた記憶領域に格納されているユーザ識別情報「usr018」を、サーバに送信する。
次に、サーバの受信部112は、投稿情報「△△カフェの□□ラテは大正解!」および位置情報「(N34.XX23,E135.XX38)」およびユーザ識別情報「usr018」を受信する。
次に、蓄積部113は、日時情報を取得する。当該日時情報は、「2013/07/22 11:35:15」であるものとする。そして、蓄積部113は、受信部112が受信したユーザ識別情報「usr018」と、投稿情報「△△カフェの□□ラテは大正解!」と、位置情報「(N34.XX23,E135.XX38)」と、取得した日時情報「2013/07/22 11:35:15」とを対応付け、投稿管理情報を構成する。そして、蓄積部113は、当該構成した投稿管理情報を、投稿管理情報格納部111に蓄積する。当該投稿管理情報は、例えば、図5の「ID=018」である。
(例3)
本例において、端末装置12が端末位置情報を送信し、サーバ装置11から投稿情報を受信する例について説明する。なお、本例において、投稿管理情報格納部111には、図5の投稿管理情報が格納されているものとする。
まず、ユーザがスマホを所持している状態において、例1と同様に、A駅内に設置されている無線LANのアクセスポイントの付近にいるとする。当該スマホの予め決められた記憶領域には、ユーザ識別情報「usr013」が格納されているものとする。また、当該アクセスポイントは、ビーコン信号として、アクセスポイントの位置を示す位置情報を送信しているものとする。つまり、当該状態において、スマホは、当該ビーコン信号を受信する装置を備えており、端末位置情報取得部122は、当該装置から、位置情報を取得するものとする。
次に、ユーザがスマホを操作し、端末位置情報取得部122が取得している端末位置情報を、サーバに送信する操作を行ったとする。すると、端末受付部124は、端末位置送信指示を受け付ける。
次に、端末送信部125は、端末位置情報とユーザ識別情報「usr013」とを有する投稿情報要求指示をサーバに送信する。当該位置情報は、「(N34.XX23,E135.XX12)」であるものとする。
次に、サーバの受信部112は、位置情報「(N34.XX23,E135.XX12)」とユーザ識別情報「usr013」とを有する投稿情報要求指示を受信する。
次に、投稿情報取得部114は、受信位置情報「(N34.XX23,E135.XX12)」と、図5の1以上の各投稿位置情報とを用いて、投稿距離を算出する。例えば、ここで、当該受信位置情報と図5の「ID=012」の投稿位置情報「(N34.XX23,E135.XX12)」を用いて算出した投稿距離が、「0m」であるとする。また、距離条件が、「距離≦2m」であるとする。また、ユーザ条件が、「投稿ユーザ≠受信ユーザ」であるとする。当該ユーザ条件は、投稿ユーザ識別情報が受信ユーザ識別情報と異なることを意味する。すると、投稿情報取得部114は、図5の「ID=012」の投稿管理情報が、当該距離条件および当該ユーザ条件を満たすと判断する。そして、投稿情報取得部114は、図5の「ID=012」の投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」を取得する。
次に、送信部115は、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」を、スマホに送信する。
次に、スマホの端末受信部126は、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」を受信する。
次に、端末出力部127は、投稿情報「○○さんへ。先に行って××コーヒーで待ってます。」を出力する。
なお、上記において、投稿情報取得部114は、例えば、投稿管理情報格納部111に格納されている1以上の各投稿位置情報について、受信位置情報と同一であるか否かを判断してもよい。また、上記において、投稿情報取得部114は、例えば、投稿管理情報格納部111に格納されている1以上の各投稿ユーザ識別情報について、受信ユーザ識別情報と同一であるか否かを判断してもよい。そして、投稿位置情報が受信位置情報と同一であり、かつ、投稿ユーザ識別情報が受信ユーザ識別情報と異なる投稿管理情報が有する投稿情報を、投稿管理情報格納部111から取得してもよい。
(例4)
本例において、端末装置12が受信選択位置情報を送信し、サーバ装置11から投稿情報を受信する例について説明する。なお、本例において、端末位置情報格納部121には、図6の位置情報が格納されているものとする。
まず、ユーザがスマホを所持している状態において、例2と同様に、自宅の部屋にいるとする。当該スマホの予め決められた記憶領域には、ユーザ識別情報「usr018」が格納されているものとする。また、当該状態において、端末位置情報取得部122は、GPSの受信機から、位置情報を取得するものとする。
次に、例えば、ユーザがスマホを操作し、端末位置情報格納部121に格納されている1以上の位置情報の中から、1つの位置情報を選択する操作を行ったとする。このとき、端末出力部127は、通常、図6の地名を示す位置情報を出力する。そして、ユーザは、当該出力されている地名の中から1つの地名を選択する。すると、端末受付部124は、受信位置選択指示を受け付ける。
次に、端末送信部125は、受信選択位置情報を、端末位置情報格納部121から取得する。当該送信選択位置情報は、図6の「ID=019」の位置情報「(N34.XX33,E135.XX31)」であるものとする。
次に、端末送信部125は、受信選択位置情報「(N34.XX33,E135.XX31)」および予め決められた記憶領域に格納されているユーザ識別情報「usr018」を、サーバに送信する。
次に、サーバの受信部112は、位置情報「(N34.XX33,E135.XX31)」およびユーザ識別情報「usr018」を受信する。
次に、投稿情報取得部114は、受信位置情報「(N34.XX33,E135.XX31)」と、図5の1以上の各投稿位置情報とを用いて、投稿距離を算出する。例えば、ここで、当該受信位置情報と図5の「ID=013」の投稿位置情報「(N34.XX32,E135.XX23)」を用いて算出した投稿距離が、「1m」であるとする。また、距離条件が、「距離≦2m」であるとする。また、ユーザ条件が、「投稿ユーザ≠受信ユーザ」であるとする。すると、投稿情報取得部114は、図5の「ID=013」の投稿管理情報が、当該距離条件および当該ユーザ条件を満たすと判断する。そして、投稿情報取得部114は、図5の「ID=013」の投稿情報「○○パスタは注文しちゃダメよ・・・」を取得する。
次に、送信部115は、投稿情報「○○パスタは注文しちゃダメよ・・・」を、スマホに送信する。
次に、スマホの端末受信部126は、投稿情報「○○パスタは注文しちゃダメよ・・・」を受信する。
次に、端末出力部127は、投稿情報「○○パスタは注文しちゃダメよ・・・」を出力する。
(例5)
本例において、端末装置12が投稿情報と端末位置情報とを送信し、サーバ装置11から投稿情報を受信する例について説明する。なお、本例において。投稿管理情報格納部111には、図5の投稿管理情報が格納されているものとする。
まず、例1と同様に、サーバの受信部112が、スマホから投稿情報および端末位置情報およびユーザ識別情報を受信し、蓄積部113が、当該3つの情報を有する投稿管理情報を、投稿管理情報格納部111に蓄積したとする。
次に、投稿情報取得部114は、例2と同様に、距離条件およびユーザ条件を満たす投稿管理情報が有する投稿情報を、図5の投稿管理情報から取得する。ここで、当該取得した投稿情報は、図5の「ID=011」の投稿情報「17時から19時まで生ビール200円です!!!」と、図5の「ID=019」の投稿情報「今日のタイムセールは17時からです!!」であるものとする。
次に、送信部115は、当該2つの投稿情報を、スマホに送信する。
次に、スマホの端末受信部126は、上記2つの投稿情報を受信する。
次に、端末出力部127は、端末受信部126が受信した2つの投稿情報を出力する。
(例6)
本例において、端末装置12が投稿情報と送信選択位置情報とを送信し、サーバ装置11が投稿管理情報を蓄積する例について説明する。なお、本例において、端末位置情報格納部121には、地図情報が格納されているものとする。また、当該地図情報は、地図上の位置を示す1以上の地図情報を有しているものとする。
まず、ユーザAがスマホを所持している状態において、東京駅にいるとする。また、当該ユーザAは、名古屋駅で友人(以下、ユーザB)と待ち合わせをしているとする。また、当該スマホの予め決められた記憶領域には、ユーザ識別情報「usrA」が格納されているものとする。
次に、ユーザAがスマホを操作し、端末位置情報格納部121に格納されている地図情報が示す地図を表示する操作を行ったとする。すると、端末出力部127は、当該地図情報を出力する。この結果、例えば、端末装置12が備えるディスプレイに、地図が表示される。
次に、ユーザAがスマホを操作し、表示されている地図の中から名古屋駅を選択する。すると、端末受付部124は、送信位置選択指示を受け付ける。
次に、端末送信部125は、送信選択位置情報を、端末位置情報格納部121から取得する。当該送信選択位置情報は、位置情報「(35.XX94,136.XX37)」であるものとする。
次に、端末出力部127は、投稿情報の入力を受け付けるための画面(吹き出し)を出力する。当該画面の例は、例えば、図7である。また、図7における地図は、例えば、1以上の地名のリストであってもよい。この場合、端末出力部127は、端末位置情報格納部121に格納されている1以上の位置情報を出力する。そして、端末出力部127は、ユーザによる地名の選択に応じて、図7と同様の吹き出しを出力する。
次に、ユーザAがスマホを操作し、投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」を入力したとする。当該投稿情報は、ユーザAからユーザBへの伝言である。すると、端末受付部124は、当該投稿情報を受け付ける。
次に、端末送信部125は、端末受付部124が受け付けた投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」および送信選択位置情報「(35.XX94,136.XX37)」および予め決められた記憶領域に格納されているユーザ識別情報「usrA」を、サーバに送信する。
次に、サーバの受信部112は、投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」および位置情報「(35.XX94,136.XX37)」およびユーザ識別情報「usrA」を受信する。そして、蓄積部113は、受信部112が受信した当該投稿情報などを対応付けて、投稿管理情報を構成する。そして、蓄積部113は、構成した投稿管理情報を、投稿管理情報格納部111に蓄積する。
次にユーザBがスマホを所持している状態において、名古屋駅に到着したとする。また、当該スマホの予め決められた記憶領域には、ユーザ識別情報「usrB」が格納されているものとする。
次に、ユーザBがスマホを操作し、端末位置情報取得部122が取得している端末位置情報を、サーバに送信する操作を行ったとする。すると、端末受付部124は、端末位置送信指示を受け付ける。
次に、端末送信部125は、端末位置情報とユーザ識別情報「usrB」とを有する投稿情報要求指示をサーバに送信する。当該位置情報は、「(35.XX93,136.XX36)」であるものとする。
次に、サーバの受信部112は、位置情報「(35.XX93,136.XX36)」とユーザ識別情報「usrB」とを有する投稿情報要求指示を受信する。
次に、投稿情報取得部114は、受信位置情報「(35.XX93,136.XX36)」と、上記で蓄積した投稿位置情報とを用いて、投稿距離を算出する。例えば、ここで、当該受信位置情報と上記で蓄積した投稿位置情報「(35.XX94,136.XX37)」を用いて算出した投稿距離が、「2m」であるとする。また、距離条件が、「距離≦5m」であるとする。また、ユーザ条件が、「投稿ユーザ≠受信ユーザ」であるとする。当該ユーザ条件は、投稿ユーザ識別情報が受信ユーザ識別情報と異なることを意味する。すると、投稿情報取得部114は、上記で蓄積した投稿管理情報が、当該距離条件および当該ユーザ条件を満たすと判断する。そして、投稿情報取得部114は、上記の投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」を取得する。
次に、送信部115は、投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」をユーザBのスマホに送信する。
次に、ユーザBのスマホの端末受信部126は、投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」を受信する。
次に、端末出力部127は、投稿情報「Bさんへ。すみません、30分ほど遅れます。Aより。」を出力する。
以上、本実施の形態による情報システム1によれば、送信された投稿情報に対応付いている位置情報に基づいて、投稿情報を受信することができる。これにより、例えば、ある場所に訪れたことのあるユーザに対してのみ情報を配信することができる。また、例えば、ある場所に集まるユーザのみで情報を共有することができる。
また、本実施の形態において、端末装置12は、例えば、取得した端末位置情報を蓄積しなくてもよい。この場合、端末装置12は、端末位置情報格納部121と、端末蓄積部123を備えない。つまり、この場合、端末装置12は、端末位置情報取得部122と、端末受付部124と、端末送信部125と、端末受信部126と、端末出力部127とを備える。
また、本実施の形態において、端末位置情報格納部121には、1以上の位置情報が予め格納されていてもよい。この場合、端末装置12は、通常、端末蓄積部123を備えない。つまり、この場合、端末装置12は、端末位置情報格納部121と、端末位置情報取得部122と、端末受付部124と、端末送信部125と、端末受信部126と、端末出力部127とを備える。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよいし、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよいし、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
また、上記各実施の形態におけるサーバ装置11を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、ユーザが投稿した情報である投稿情報と、当該投稿情報が示す投稿内容に関連する位置を示す位置情報とが対応付いた情報である1以上の投稿管理情報が格納される投稿管理情報格納部にアクセス可能なコンピュータを、投稿情報および位置情報、または、投稿情報を要求する指示であり位置情報を有する指示である投稿情報要求指示を受信する受信部と、前記受信部が投稿情報および位置情報を受信した場合に、当該投稿情報と当該位置情報とが対応付いた投稿管理情報を、前記投稿管理情報格納部に蓄積する蓄積部と、前記受信部が位置情報を受信した場合に、当該位置情報が示す位置との関係が予め決められた条件を満たす位置を示す位置情報に対応付いている投稿情報を、前記投稿管理情報格納部から取得する投稿情報取得部と、前記投稿情報取得部が取得した投稿情報を送信する送信部として機能させるためのプログラムである。
また、上記各実施の形態における端末装置12を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、位置を示す位置情報を取得する端末位置情報取得部と、投稿情報とを受け付ける端末受付部と、前記端末受付部が受け付けた投稿情報および前記端末位置情報取得部が取得した位置情報、または、前記端末位置情報取得部が取得した位置情報を有する投稿情報要求指示を送信する端末送信部と、前記投稿情報および位置情報の送信、または、前記投稿情報要求指示の送信に応じて、投稿情報を受信する端末受信部と、前記端末受信部が受信した投稿情報を出力する端末出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。
また、上記プログラムは、サーバなどからダウンロードされることによって実行されてもよいし、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、上記プログラムを実行するコンピュータは、単数であってもよいし、複数であってもよい。つまり、集中処理を行ってもよいし、あるいは分散処理を行ってもよい。
また、図8は、前述のプログラムを実行して、前述の実施の形態の情報システム等を実現するコンピュータシステム9の概観図である。前述の実施の形態は、コンピュータハードウェア、およびその上で実行されるコンピュータプログラムで実現され得る。
図8において、コンピュータシステム9は、CD−ROMドライブ9011、FDドライブ9012を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図9は、コンピュータシステム9のブロック図である。図9において、コンピュータ901は、CD−ROMドライブ9011、FDドライブ9012に加えて、MPU9013と、ブートアッププログラム等のプログラムを記憶するためのROM9014と、MPU9013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM9015と、アプリケーションプログラム、システムプログラム、およびデータを記憶するためのハードディスク9016と、CD−ROMドライブ9011、FDドライブ9012、MPU9013等を相互に接続するバス9017とを備える。ここでは図示しないが、コンピュータ901は、さらに、LANへの接続を提供するネットワークカードを備えていてもよい。
コンピュータシステム9に、前述の実施の形態の情報システム等の機能を実行させるプログラムは、CD−ROM9101、またはFD9102に記憶されて、CD−ROMドライブ9011またはFDドライブ9012に挿入され、さらにハードディスク9016に転送されてもよい。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク9016に記憶されてもよい。プログラムは実行の際にRAM9015にロードされる。プログラムは、CD−ROM9101、FD9102またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、前述の実施の形態の情報システム等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいればよい。コンピュータシステム9がどのように動作するかは周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。