(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-03
(45)【発行日】2023-08-14
(54)【発明の名称】コンピュータ・プログラムおよび非一時的なコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
G06F 16/909 20190101AFI20230804BHJP
H04L 51/043 20220101ALI20230804BHJP
G06F 16/29 20190101ALI20230804BHJP
G06Q 50/00 20120101ALI20230804BHJP
【FI】
G06F16/909
H04L51/043
G06F16/29
G06Q50/00 300
(21)【出願番号】P 2022024580
(22)【出願日】2022-02-21
(62)【分割の表示】P 2020533809の分割
【原出願日】2017-12-20
【審査請求日】2022-03-03
(73)【特許権者】
【識別番号】321003371
【氏名又は名称】LINE株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ホン,ソクジュ
【審査官】木村 大吾
(56)【参考文献】
【文献】米国特許出願公開第2016/0119751(US,A1)
【文献】特開2014-092877(JP,A)
【文献】米国特許出願公開第2014/0337317(US,A1)
【文献】韓国登録特許第10-1410223(KR,B1)
【文献】特開2012-247840(JP,A)
【文献】特開平11-252003(JP,A)
【文献】黄 辰晨 他3名,位置情報とFacebookを用いたソーシャルマッチングによる人間関係構築支援システム,第74回(平成24年)全国大会講演論文集(4),日本,一般社団法人 情報処理学会,2012年03月06日,pp.4-199~4-200
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06Q 50/00-50/34
H04L 51/043
(57)【特許請求の範囲】
【請求項1】
第1ユーザの電子機器のプロセッサに位置検索方法を実行させるコンピュータ・プログラムであって、前記位置検索方法は、
サーバが1人以上のユーザの電子機器から収集した位置情報を該当のユーザの識別情報と関連付けて格納することで位置データベースを構築するために、前記第1ユーザの電子機器のプロセッサが、ソーシャルネットワーク上の前記第1ユーザの位置情報を
前記サーバに送信する段階と、
前記第1ユーザの電子機器のプロセッサが、クエリを前記サーバに送信する段階と、
前記第1ユーザの電子機器のプロセッサが、前記第1ユーザと関連する知人のうちで前記クエリに対応する位置情報を有する知人に対する検索結果を、前記サーバから受信する段階と、
前記第1ユーザの電子機器のプロセッサが、
前記検索結果に含まれた知人の識別情報を表示しないブラインド形態で前記検索結果を前記第1ユーザに提供する段階とを含む、コンピュータ・プログラム。
【請求項2】
前記送信する段階は、
前記第1ユーザの電子機器にインストールされたメッセンジャーにおいて、前記メッセンジャーが実行されるときに前記第1ユーザの位置情報を前記サーバに送信すること
を含む、請求項1に記載のコンピュータ・プログラム。
【請求項3】
前記送信する段階は、
前記第1ユーザの電子機器にインストールされたメッセンジャーにおいて、カメラ機能と連動し、カメラで撮影された写真から前記第1ユーザの位置情報を前記サーバに送信すること
を含む、請求項1に記載のコンピュータ・プログラム。
【請求項4】
前記提供する段階は、
前記ソーシャルネットワーク上において、前記第1ユーザと関係が設定された知人、前記関係が設定された知人と関係が設定された他の知人、前記第1ユーザが参加するか購読中のチャットルームに含まれた知人のうちの少なくとも1つの知人範囲を対象に検索された、前記クエリに対応する位置情報を有する知人を、前記検索結果として提供すること
を含む、請求項1に記載のコンピュータ・プログラム。
【請求項5】
前記位置データベースは、
前記収集された位置情報を、位置情報が収集された出所
及び時間情報によって活動類型を区分して格納している、請求項1に記載のコンピュータ・プログラム。
【請求項6】
前記提供する段階は、
前記クエリに対応する位置情報を有する知人に対する検索結果を、前記活動類型別に区分して提供すること
を含む、請求項
5に記載のコンピュータ・プログラム。
【請求項7】
前記提供する段階は、
前記クエリに対応する位置情報を有する知人リストを、該当の位置と関連する時間情報
及び数情報を基準に整列させる段階
を含む、請求項1に記載のコンピュータ・プログラム。
【請求項8】
前記提供する段階は、
地図を利用し、前記地図に含まれた地域別に、該当の地域の位置情報を有する知人に対する検索結果を提供すること
を含む、請求項1に記載のコンピュータ・プログラム。
【請求項9】
前記位置検索方法は、
前記電子機器のプロセッサが、前記検索結果に含まれた知人のうちの少なくとも1人の知人との会話機能を、前記ユーザと知人の識別情報を表示しないブラインド形態で提供する段階
をさらに含む、請求項1に記載のコンピュータ・プログラム。
【請求項10】
請求項1~
9のうちのいずれか一項に記載のコンピュータ・プログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、メッセンジャーを利用して位置情報を検索する技術に関する。
【背景技術】
【0002】
一般的なコミュニケーションツールであるインスタントメッセンジャー(instant messenger)は、メッセージやデータをリアルタイムで送受信することのできるソフトウェアであって、ユーザがメッセンジャー上に会話相手を登録すると、会話リストに登録された相手とリアルタイムでメッセージをやり取りすることができる。
【0003】
このようなメッセンジャー機能は、パーソナルコンピュータ(PC)はもちろん、移動通信端末のモバイル環境でもその使用が普及している。
【0004】
例えば、特許文献1(公開日2002年09月30日)には、携帯端末機にインストールされたモバイルメッセンジャー間でメッセンジャーサービスを提供することができるようにした、無線通信網を利用した携帯端末機のモバイルメッセンジャーサービスシステムおよび方法が開示されている。
【0005】
一般的なメッセンジャーでは、ユーザ同士が、チャットルームを通じて写真や動画、ファイル、連絡先、位置、スケジュールのような多様な情報を共有する機能と、チャットルームで共有した情報を検索する機能をサポートする。
【先行技術文献】
【特許文献】
【0006】
【文献】韓国公開特許第10-2002-0074304号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
メッセンジャーにおいて、メッセンジャー上の知人同士が共有することのできなかった位置情報をブラインド(blind)形態で検索することができる技術を提供する。
【課題を解決するための手段】
【0008】
コンピュータシステムが実行するブラインド位置検索方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記ブラインド位置検索方法は、前記少なくとも1つのプロセッサにおいて、ソーシャルネットワーク上のユーザを対象に位置情報を収集する段階、前記少なくとも1つのプロセッサにおいて、前記収集された位置情報を該当のユーザの識別情報と関連付けて格納することで位置データベースを構築する段階、および前記少なくとも1つのプロセッサにおいて、前記ユーザのうちの第1ユーザの電子機器からクエリが受信される場合、前記位置データベースを利用して、前記第1ユーザと関連する知人のうちで前記クエリに対応する位置情報を有する知人に対する検索結果を提供する段階を含む、ブラインド位置検索方法を提供する。
【0009】
一側面によると、前記提供する段階は、前記検索結果を、前記検索結果に含まれた知人の識別情報を表示しないブラインド形態で提供してよい。
【0010】
他の側面によると、前記収集する段階は、各ユーザの電子機器にインストールされたメッセンジャーにおいて、前記メッセンジャーが実行されるときに該当のユーザの位置情報を収集してよい。
【0011】
また他の側面によると、前記収集する段階は、各ユーザの電子機器にインストールされたメッセンジャーにおいて、カメラ機能を連動し、カメラで撮影された写真から該当のユーザの位置情報を収集してよい。
【0012】
また他の側面によると、前記検索する段階は、前記ソーシャルネットワーク上で前記第1ユーザと関係が設定された知人、前記関係が設定された知人と関係が設定された他の知人、前記第1ユーザが参加するか購読中のチャットルームに含まれた知人のうちの少なくとも1つの知人範囲を対象に、前記クエリに対応する位置情報を有する知人を検索してよい。
【0013】
また他の側面によると、前記構築する段階は、前記収集された位置情報を、位置情報が収集された出所や時間情報によって活動類型を区分して格納する段階を含んでよい。
【0014】
また他の側面によると、前記提供する段階は、前記クエリに対応する位置情報を有する知人に対する検索結果を、前記活動類型別に区分して提供してよい。
【0015】
また他の側面によると、前記提供する段階は、前記クエリに対応する位置情報を有する知人リストを、該当の位置と関連する時間情報や数情報を基準に整列させる段階を含んでよい。
【0016】
また他の側面によると、前記提供する段階は、地図を利用し、前記地図に含まれた地域別に、該当の地域の位置情報を有する知人に対する検索結果を提供してよい。
【0017】
さらに他の側面によると、前記ブラインド位置検索方法は、前記少なくとも1つのプロセッサにおいて、前記検索結果に含まれた知人のうちの少なくとも1人の知人との会話機能を、前記ユーザと知人の識別情報を表示しないブラインド形態で提供する段階をさらに含んでよい。
【0018】
前記ブラインド位置検索方法をコンピュータに実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体を提供する。
【0019】
コンピュータシステムであって、メモリ、および前記メモリに接続され、前記メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、ソーシャルネットワーク上のユーザを対象に位置情報を収集する収集部、前記収集された位置情報を該当のユーザの識別情報と関連付けて格納することで位置データベースを構築する格納部、および前記ユーザのうちの第1ユーザの電子機器からクエリが受信される場合、前記位置データベースを利用して、前記第1ユーザと関連する知人のうちで前記クエリに対応する位置情報を有する知人に対する検索結果を提供する検索部を備える、コンピュータシステムを提供する。
【図面の簡単な説明】
【0020】
【
図1】本発明の一実施形態における、ネットワーク環境の例を示した図である。
【
図2】本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
【
図3】本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図である。
【
図4】本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【
図5】本発明の一実施形態における、位置情報を収集および格納する過程を説明するための例示図である。
【
図6】本発明の一実施形態における、位置情報を収集および格納する過程を説明するための例示図である。
【
図7】本発明の一実施形態における、位置情報を検索する過程を説明するための例示図である。
【
図8】本発明の一実施形態における、位置情報を検索する過程を説明するための例示図である。
【
図9】本発明の一実施形態における、ブラインド会話過程を説明するための例示図である。
【
図10】本発明の一実施形態における、ブラインド会話過程を説明するための例示図である。
【
図11】本発明の一実施形態における、ブラインド会話過程を説明するための例示図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態について、添付の図面を参照しながら詳細に説明する。
【0022】
本発明の実施形態に係るブラインド位置検索方法は、以下で説明される電子機器やサーバのようなコンピュータシステムによって実行されてよい。このとき、コンピュータシステムにおいては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータシステムは、実行されるコンピュータプログラムの制御にしたがって本発明の一実施形態に係るブラインド位置検索方法を実行してよい。上述したコンピュータプログラムは、コンピュータシステムと結合してブラインド位置検索方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されてよい。例えば、サーバは、メッセンジャーサーバの役割を担ってよく、メッセンジャーにおいて、知人同士が共有することのできなかった位置情報をブラインド形態で検索してよい。実施形態によって、電子機器が、ブラインド位置検索方法を実行することが考慮されてもよい。
【0023】
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。
図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような
図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が
図1のように限定されることはない。
【0024】
複数の電子機器110、120、130、140は、コンピュータシステムによって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、スマートフォン、携帯電話、ナビゲーション、PC(personal computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレット、ゲームコンソール、ウェアラブルデバイス、IoT(internet of things)デバイス、VR(virtual reality)デバイス、AR(augmented reality)デバイスなどがある。一例として、
図1では、電子機器1(110)の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器1(110)は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータシステムのうちの1つを意味してよい。
【0025】
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網、衛星網など)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0026】
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第1サービスを提供するシステムであってよく、サーバ160も、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第2サービスを提供するシステムであってよい。より具体的な例として、サーバ150は、複数の電子機器110、120、130、140においてインストールされて実行されるコンピュータプログラムであるアプリケーションを通じ、該当のアプリケーションが目的とするサービス(一例として、メッセージングサービスなど)を第1サービスとして複数の電子機器110、120、130、140に提供してよい。他の例として、サーバ160は、上述したアプリケーションのインストールおよび実行のためのファイルを複数の電子機器110、120、130、140に配布するサービスを第2サービスとして提供してよい。
【0027】
図2は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
図2では、電子機器に対する例として電子機器1(110)の内部構成およびサーバ150の内部構成について説明する。また、他の電子機器120、130、140やサーバ160も、上述した電子機器1(110)またはサーバ150と同一または類似の内部構成を有してよい。
【0028】
電子機器1(110)およびサーバ150は、メモリ211、221、プロセッサ212、222、通信モジュール213、223、および入力/出力インタフェース214、224を含んでよい。メモリ211、221は、非一時的なコンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、ディスクドライブ、SSD(solid state drive)、フラッシュメモリ(flash memory)などのような永続的大容量記録装置を含んでよい。ここで、ROM、SSD、フラッシュメモリ、ディスクドライブのような永続的大容量記録装置は、メモリ211、221とは区分される別の永続的記録装置として電子機器1(110)やサーバ150に含まれてもよい。また、メモリ211、221には、オペレーティングシステムと、少なくとも1つのプログラムコード(一例として、電子機器1(110)においてインストールされて実行されるブラウザや、特定のサービスの提供のために電子機器1(110)にインストールされるアプリケーションなどのためのコード)が記録されてよい。このようなソフトウェア構成要素は、メモリ211、221とは別のコンピュータ読み取り可能な記録媒体からロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信モジュール213、223を通じてメモリ211、221にロードされてもよい。例えば、少なくとも1つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム(一例として、上述したサーバ160)がネットワーク170を介して提供するファイルによってインストールされるコンピュータプログラム(一例として、上述したアプリケーション)に基づいてメモリ211、221にロードされてよい。
【0029】
プロセッサ212、222は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ211、221または通信モジュール213、223によって、プロセッサ212、222に提供されてよい。例えば、プロセッサ212、222は、メモリ211、221のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0030】
通信モジュール213、223は、ネットワーク170を介して電子機器1(110)とサーバ150とが互いに通信するための機能を提供してもよいし、電子機器1(110)および/またはサーバ150が他の電子機器(一例として、電子機器2(120))または他のサーバ(一例として、サーバ160)と通信するための機能を提供してもよい。一例として、電子機器1(110)のプロセッサ212がメモリ211のような記録装置に記録されたプログラムコードにしたがって生成した要求が、通信モジュール213の制御にしたがってネットワーク170を介してサーバ150に伝達されてよい。これとは逆に、サーバ150のプロセッサ222の制御にしたがって提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール223とネットワーク170を経て電子機器1(110)の通信モジュール213を通じて電子機器1(110)に受信されてよい。例えば、通信モジュール213を通じて受信されたサーバ150の制御信号や命令、コンテンツ、ファイルなどは、プロセッサ212やメモリ211に伝達されてよく、コンテンツやファイルなどは、電子機器1(110)がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0031】
入力/出力インタフェース214は、入力/出力装置215とのインタフェースのための手段であってよい。例えば、入力装置は、キーボード、マウス、マイクロフォン、カメラなどの装置を、出力装置は、ディスプレイ、スピーカ、触覚フィードバックデバイスなどのような装置を含んでよい。他の例として、入力/出力インタフェース214は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置215は、電子機器1(110)と1つの装置で構成されてもよい。また、サーバ150の入力/出力インタフェース224は、サーバ150に接続するかサーバ150が含むことのできる入力または出力のための装置(図示せず)とのインタフェースのための手段であってよい。より具体的な例として、電子機器1(110)のプロセッサ212がメモリ211にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ150や電子機器2(120)が提供するデータを利用して構成されるサービス画面やコンテンツが、入力/出力インタフェース214を通じてディスプレイに表示されてよい。
【0032】
また、他の実施形態において、電子機器1(110)およびサーバ150は、
図2の構成要素よりも多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器1(110)は、上述した入力/出力装置215のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、GPS(Global Positioning System)モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。より具体的な例として、電子機器1(110)がスマートフォンである場合、一般的にスマートフォンが含んでいる加速度センサやジャイロセンサ、カメラモジュール、物理的な各種ボタン、タッチパネルを利用したボタン、入力/出力ポート、振動のための振動器などのような多様な構成要素が、電子機器1(110)にさらに含まれるように実現されてよい。
【0033】
以下、メッセンジャーユーザ同士がブラインド形態で位置情報を検索することができる方法およびシステムの具体的な実施形態について説明する。
【0034】
メッセンジャーを利用した従来の検索機能は、ユーザの直接的な共有の意思に基づき、チャットルームで互いにやり取りした情報だけを検索対象としていたが、本発明では、メッセンジャーユーザ同士が共有することのできなかった位置情報をブラインド形態で検索することができる機能をサポートする。
【0035】
本明細書では、メッセンジャーを代表的な例として説明しているが、これに限定されることはなく、多様な形態のソーシャルネットワーク(social network)のように、知人同士でメッセージやデータをやり取りする、すべてのコミュニティに適用可能である。
【0036】
図3は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図であり、
図4は、本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【0037】
本実施形態に係るサーバ150は、クライアント(client)である複数の電子機器110、120、130、140を対象にメッセンジャーサービスを提供するプラットフォームの役割をする。サーバ150は、電子機器110、120、130、140上にインストールされるアプリケーションと連動してメッセンジャーサービスを提供してよい。
【0038】
サーバ150が
図4に係るブラインド位置検索方法を実行するために、サーバ150のプロセッサ222は、構成要素として、
図3に示すように、収集部310、格納部320、検索部330、および会話部340を備えてよい。実施形態によって、プロセッサ222の構成要素は、選択的にプロセッサ222に含まれても除外されてもよい。また、実施形態によって、プロセッサ222の構成要素は、プロセッサ222の機能の表現のために分離されても併合されてもよい。
【0039】
このようなプロセッサ222およびプロセッサ222の構成要素は、
図4のブラインド位置検索方法に含まれる段階410~450を実行するようにサーバ150を制御してよい。例えば、プロセッサ222およびプロセッサ222の構成要素は、メモリ221が含むオペレーティングシステムのコードと、少なくとも1つのプログラムのコードとによる命令(instruction)を実行するように実現されてよい。
【0040】
ここで、プロセッサ222の構成要素は、サーバ150に記録されたプログラムコードが提供する命令にしたがってプロセッサ222によって実行される、プロセッサ222の互いに異なる機能(different functions)の表現であってよい。例えば、サーバ150が位置情報を収集するように上述した命令にしたがってサーバ150を制御するプロセッサ222の機能的表現として、収集部310が利用されてよい。
【0041】
段階410で、プロセッサ222は、サーバ150の制御と関連する命令がロードされたメモリ221から必要な命令を読み取ってよい。この場合、前記読み取られた命令は、プロセッサ222が以下で説明される段階420~450を実行するように制御するための命令を含んでよい。
【0042】
段階420で、収集部310は、電子機器にインストールされたメッセンジャーにおいて、該当の電子機器のユーザの位置情報を収集してよい。一例として、収集部310は、ユーザがメッセンジャーを実行させるたびに、あるいはバックグラウンドプログラムで周期的に実行されるたびに、メッセンジャーで電子機器の位置情報を取得してよい。他の例として、収集部310は、メッセンジャーにおいて、電子機器のカメラ機能と連動し、カメラで撮影された写真から位置情報を取得してよい。言い換えれば、収集部310は、位置タグが含まれた写真情報から電子機器の位置情報を取得してよい。
【0043】
段階430で、格納部320は、収集された位置情報を該当のユーザの識別情報と関連付けて格納してよい。ユーザ識別情報は、ID、名前、ニックネーム、識別コードなどを含んでよいが、これに限定されることはなく、メッセンジャー上でユーザを識別することのできるすべての情報を含んでよい。このとき、格納部320は、位置情報が収集された出所や時間情報によって活動地を区分して位置情報を記録してよい。例えば、
図5を参照すると、ユーザ3(user3)の位置情報のうちで写真情報から取得した位置情報501は、ユーザがたまたま訪問した「訪問地(写真)」として見なして記録してよい。また、メッセンジャーの実行によって取得した位置情報502は、メッセンジャーが実行された時間によって該当の位置の活動地が区分されてよく、例えば、20:00~07:00の時間帯に定められた回数(例えば、1ヶ月内に10回)以上が連続的に持続される位置は「居住地」、09:00~18:00の時間帯に定められた回数(例えば、1ヶ月内に10回)以上が連続的に持続される位置は「勤務地」、1~2時間以内かつ定められた回数範囲内(例えば、1ヶ月内に2回以上10回未満)が連続的に持続されるか、あるいは居住地や勤務地以外の位置は「訪問地」として見なして記録してよい。このように、活動地の類型や位置情報の活動地を区分する時間帯は、メッセンジャーを利用するすべてのユーザを対象に共通して設定されてもよいし、あるいはユーザそれぞれが自身の活動類型やパターンなどを考慮して直接設定することも可能である。例えば、学生の場合は、活動地を居住地、学校、訪問地に区分したり、主婦の場合は、活動地を居住地、訪問地に区分したりすることが考えられる。
【0044】
格納部320は、段階420で収集された情報を、ユーザ情報と結合した形態、すなわち「位置情報+ユーザ情報」の形態でサーバ150上に格納してよい。
図6を参照すると、格納部320は、ユーザ情報610と、該当のユーザに対して収集した位置情報620とを互いに関連付けて格納している。このとき、ユーザ情報610は、サーバ150がユーザを識別するための情報であってよく、例えば、メッセンジャーIDあるいは識別コードなどが利用されてよい。また、位置情報620は、電子機器から取得した位置を示す値(GPS座標値、緯度/経度値など)がそのまま記録されてもよいし、または位置を示す値に対応する行政単位(例えば、市や区など)やPOI(point of interest)レベルの地名が記録されてもよい。格納部320は、位置情報620を活動地別に、例えば、居住地、勤務地、訪問地、訪問地(写真)に区分して格納してよい。このとき、格納部320は、少なくとも一部の活動地に対し、ユーザの訪問と関連する数をカウントしてともに記録してよい。例えば、訪問地の場合には該当の位置をユーザが訪問した回数を、訪問地(写真)の場合には該当の位置がタグ付けされた写真の数を、記録してよい。
【0045】
格納部320は、ユーザそれぞれに対し、該当のユーザと関連する知人の範囲内で該当の知人の位置情報を格納することにより、ユーザ別の知人位置データベースとして構築してよい。一例として、格納部320は、ユーザと友達関係が直接設定された知人を対象に知人位置データベースを構築してよい。言い換えれば、
図5と
図6を参照しながら説明したuser3の位置情報は、user3が知人として登録されているすべてのユーザの知人位置データベースに含まれてよい。他の例として、格納部320は、知人範囲の深度(depth)を2以上に拡大し、ユーザと友達関係にある知人はもちろん、その知人と友達関係にある知人まで含んだ知人位置データベースを構築してよい。また他の例として、格納部320は、ユーザとの友達関係とは関係なく、ユーザのメッセンジャー上に生成された全体チャットルームに含まれているすべての相手を知人範囲として知人位置データベースを構築してよい。すなわち、ユーザが参加するか購読中のチャットルームの相手うちの一部はユーザとは友達関係にないこともあるが、このような対象も知人範囲に含ませてユーザの知人位置データベースを構築してよい。この他にも、ユーザ別の識別情報を含むユーザテーブル、ユーザ別の知人情報を含む知人テーブル、ユーザ別の位置情報を含む位置テーブルそれぞれを、データベースとして構築することも可能である。
【0046】
再び
図4において、段階440で、検索部330は、電子機器から検索のためのクエリが受信される場合、クエリに対応する位置情報を有するユーザを検索して検索結果を提供してよい。このとき、検索部330は、クエリを入力したユーザの知人位置データベースを検索範囲とし、ユーザが特定の位置に関する情報を検索する場合、該当の位置をユーザの知人が有しているか検索し、その検索結果を提供してよい。言い換えれば、検索部330は、ユーザのメッセンジャーに登録された知人の位置情報に基づいて構築される知人位置データベースを利用することにより、知人の位置情報を検索してよい。他の例として、検索部330は、ユーザテーブル、知人テーブル、位置テーブルに基づき、クエリを入力した特定のユーザと関係が設定された知人、特定のユーザの知人と関係が設定された他の知人、特定のユーザが参加するか購読中のチャットルームに含まれた知人のうちの少なくとも1つの知人範囲を対象に、該当のクエリに対応する位置情報を有する知人を検索してよい。検索部330は、検索クエリに対して活動地別の検索結果を提供してよく、例えば、ユーザが検索した特定の位置が、居住地として記録された知人、勤務地として記録された知人、訪問地として記録された知人、訪問地(写真)として記録された知人を区分して検索結果を提供してよい。ユーザクエリに対応する検索結果を該当のユーザに提供するとき、検索結果に含まれた知人をユーザが識別することができる情報は表示されず、メッセンジャーユーザ間で相手情報が表示されることなく、位置情報を検索することができるようにサポートする。
【0047】
段階450で、会話部340は、検索結果に含まれた少なくとも1つのユーザとのブラインド会話を提供してよい。会話部340は、位置情報を検索するユーザと該当の位置情報を提供するユーザの情報は表示せず、ブラインド形態でユーザ同士の会話機能を提供してよい。一例として、会話部340は、検索結果に含まれた知人リストから少なくとも1人以上の知人が選択されると、選択された知人との個人会話、あるいはグループ会話を提供してよい。他の例として、会話部340は、活動地別の検索結果として特定の活動地が選択されると、該当の活動地が記録された知人とのグループ会話を提供してよく、または特定の活動地に対して会話のための人数が指定されると、該当の人数の知人とのグループ会話を提供してよい。このとき、事前に情報公開が許容されたユーザ会話は、ブラインド形態ではなく公開形態で提供されてよく、ブラインド会話中に互いが情報公開を許容すれば、公開形態に切り換えることも可能である。
【0048】
特に、会話部340は、ブラインド会話中に会話の特色が現れないように、ユーザ同士がやり取りする会話文章を、事前に定められた規則の標準類型に変換して表示してよい。一例として、会話部340は、口語体を文語体または標準化された語体に変形してよく、ユーザが入力した文章から絵文字や記号などは削除し、名詞は維持した状態で、動詞を標準語体に変形してよい。例えば、ユーザが「おすすめお願いね~^^」と入力した場合、「おすすめお願いします」に変形して表示してよい。また、会話部340は、機械翻訳機との連動により、ユーザ同士の言語設定が異なる場合、やり取りする会話文章を、各ユーザの設定言語に翻訳された翻訳文章で提供してよい。また、会話部340は、ブラインド形態で会話がなされたチャットルームリストを別のタブで管理してよく、このとき、各チャットルーム名は、ユーザが検索クエリとして入力した位置名が自動設定されてよい。ブラインド会話中に公開形態に切り換えられたチャットルームは、一般のチャットルームリストに移動され、ブラインドチャットルームリストから除外されてよい。
【0049】
図7および
図8は、本発明の一実施形態における、位置情報を検索する過程を説明するための例示図である。
【0050】
図7を参照すると、メッセンジャーを利用するユーザが、メッセンジャー画面に含まれた検索ウィンドウ701に位置クエリ「ソヒョン洞」を入力してよい。検索部330は、ユーザから入力された位置クエリ「ソヒョン洞」に対し、ユーザの知人のうちで「ソヒョン洞」に該当する位置情報が記録された知人を検索し、検索結果710を提供してよい。このとき、検索部330は、「ソヒョン洞」が勤務地として記録された知人、「ソヒョン洞」が居住地として記録された知人、「ソヒョン洞」が訪問地として記録された知人、「ソヒョン洞」が訪問地(写真)として記録された知人を区分し、検索結果710を提供してよい。「ソヒョン洞」が勤務地や居住地として記録された知人リストは、該当の位置情報が記録された時間を基準として最新順に整列されてよく、「ソヒョン洞」が訪問地や訪問地(写真)として記録された知人リストは、該当の位置と関連する数情報711を基準として数が多い順に整列されてよい。訪問地の場合は、知人が該当の位置を訪問した回数が、訪問地(写真)の場合は、該当の位置がタグ付けされた写真の数を示す数情報711が、該当の知人項目に表示されてよい。ユーザが検索結果710に含まれた少なくとも1つ以上の活動地を選択する場合は、選択された活動地に属する知人とグループ会話を行うことができ、検索結果710に含まれた個別の知人項目のうちから少なくとも1人以上の知人を選択する場合は、選択された知人と個人会話あるいはグループ会話を行うことができる。
【0051】
他の例として、
図8に示すように、検索部330は、メッセンジャーにおいて、ブラインド位置検索のための地図画面800を提供してよく、地図を利用した位置検索時に、活動地(居住地、勤務地、訪問地、訪問地(写真))を選別して検索するためのフィルタ機能801を提供してよい。検索部330は、ユーザから要求された地域の地図画面800を提供してよく、フィルタ機能801によって「勤務地」を選択する場合、地図画面800に含まれた各地域別に、該当の地域を勤務地とする知人を検索して検索結果810を提供してよい。このとき、地域別に、該当の地域を勤務地とする知人の人数を表示しててよい。ユーザが地図画面800の地域別の検索結果810のうちから少なくとも1つを選択する場合、該当の地域を勤務地とする知人との個人会話あるいはグループ会話を行うことができる。
【0052】
したがって、検索部330は、ブラインド位置検索により、ユーザが検索した地域において、知人がどのような活動(居住地、勤務地、訪問地、訪問地(写真))をしたか、どれほど頻繁に活動したかなどを提供することができる。
【0053】
図9~11は、本発明の一実施形態における、ブラインド会話過程を説明するための例示図である。
【0054】
会話部340は、検索結果に含まれた少なくとも1人のユーザとのブラインド会話を提供してよい。例えば、
図9は、「ソヒョン洞」に対するブラインド会話画面900であって、「ソヒョン洞」を検索したユーザAと「ソヒョン洞」を活動地とするユーザBとの会話画面を示したものである。このとき、ブラインド会話画面900には、ユーザAとユーザBを識別することのできる情報は表示されず、匿名で表示され、ユーザAとユーザBがやり取りする会話の内容だけが表示されてよい。このようなブラインド会話により、ユーザAは、「ソヒョン洞」を活動地とするユーザBに繊細な情報まで質問することができる。
【0055】
会話部340は、ブラインド会話において、ユーザ同士がやり取りする会話文章を、事前に定められた規則の標準語体に変換して表示してよい。
図10に示すように、会話部340は、ユーザAとユーザBによって入力された文章1001を標準化された語体の文章1002に変形してブラインド会話画面1000に表示してよい。一例として、入力文章1001から絵文字や記号などは削除し、名詞だけを維持した状態で、動詞は事前に定められた標準語体に変換することにより、標準文章1002を生成してよい。ブラインド会話の場合、すべての会話文章に統一性のある文章体を適用することにより、個人の口癖や語調が現れないように保護することができる。標準語体を適用する他にも、ユーザ同士の言語設定が異なる場合、互いがやり取りする会話文章を各ユーザの設定言語に翻訳した翻訳文章をブラインド会話画面1000に表示することも可能である。
【0056】
会話部340は、ブラインド形態で会話がなされたチャットルームリストを管理および維持してよい。
図11は、電子機器にインストールされたメッセンジャーのチャットルームリストのうちのブラインドチャットルームリスト画面1100を示している。ブラインドチャットルームリスト画面1100は、メッセンジャー上の友達リストや一般チャットルームリストとは別のタブで管理されてよく、ブラインド形態で相手とメッセージをやり取りするチャットルームを整列したチャットルームリスト1110が含まれてよい。このとき、チャットルームリスト1110に含まれた各チャットルーム別に該当のチャットルーム名1111が表示されてよく、チャットルーム名1111は、検索クエリとして入力された位置名が自動設定されてよい。また、チャットルームリスト1110は、メッセージ受信/発信時間によってチャットルームが降順に整列されてよい。
【0057】
上記では、サーバ150側で位置情報を収集してデータベース化し、これに基づいてブラインド位置検索をサポートすることについて説明しているが、これに限定されることはなく、上述したブラインド位置検索方法のうちの一部の過程が電子機器側で直接実行されてもよい。例えば、ユーザの知人位置データベースが該当のユーザの電子機器上に格納されてよく、このような場合、ブラインド位置検索を電子機器のローカル機能としてサポートしてよい。
【0058】
本発明は、メッセンジャーを含んだ各種コミュニティにおいて、ユーザが知人と共有することのできなかった位置情報をブラインド形態で検索することができる。
【0059】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0060】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、所望の動作を行うように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、任意の種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録され実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0061】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであってもよいし、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例は、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【0062】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、および/または、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合され、組み合わされ、または他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0063】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0064】
222:プロセッサ
310:収集部
320:格納部
330:検索部
340:会話部