(57)【要約】  メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション技術を提供する。本発明の実施形態に係るモバイル機器のインタラクション方法は、メッセージングサービスと連関してモバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、モバイル機器またはモバイル端末のユーザのうちの少なくとも１つの状況に関する情報を取得する段階、取得された情報に基づいてユーザの状況を決定する段階、決定されたユーザの状況に基づき、メッセージングサービスを通じてユーザに提供するための機能を確認する段階、機能の提供のために提供されるユーザインタフェースの構成を、決定されたユーザの状況に応じて動的に決定する段階、および動的に決定された構成のユーザインタフェースで機能を提供する段階を含む。【選択図】図４
2021516474.tif 000002
【特許請求の範囲】
【請求項１】
モバイル機器のインタラクション方法であって、
メッセージングサービスと連関して前記モバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、前記モバイル機器または前記モバイル機器のユーザのうちの少なくとも１つの状況に関する情報を取得する段階、
前記取得された情報に基づいて前記ユーザの状況を決定する段階、
前記決定されたユーザの状況に基づき、前記メッセージングサービスを通じて前記ユーザに提供するための機能を確認する段階、
前記機能の提供のために提供されるユーザインタフェースの構成を、前記決定されたユーザの状況に応じて動的に決定する段階、および
前記動的に決定された構成のユーザインタフェースで前記機能を提供する段階
を含む、インタラクション方法。
【請求項２】
前記ユーザの状況を決定する段階は、
入力される情報に基づき、予め設定された状況のうちから１つの状況を決定するように機械学習された分類モデルに前記取得された情報を入力して決定される状況を、前記ユーザの状況として決定する、
請求項１に記載のインタラクション方法。
【請求項３】
前記機能は、前記メッセージングサービスを通じて前記ユーザに受信されたメッセージに対する通知を提供するための機能を含み、
前記ユーザインタフェースは、通知ウィンドウを表示しない構成、通知ウィンドウにメッセージの内容を表示する構成、通知ウィンドウにメッセージの内容および選択インタフェースを提供する構成、および通知ウィンドウにメッセージの内容、選択インタフェース、およびテキスト入力インタフェースを提供する構成を含む、
請求項１に記載のインタラクション方法。
【請求項４】
前記ユーザの状況を決定する段階は、
前記ユーザの機器アクセスの可否、前記ユーザの機器操作の可否、および前記ユーザのテキスト入力の可否それぞれに対する組み合わせにより、複数のレベルのうちから１つのレベルを決定する、
請求項１に記載のインタラクション方法。
【請求項５】
前記レベル別に提供されるユーザインタフェースの構成が予め設定され、
前記機能を提供する段階は、
前記決定されたレベル以下のレベルによって提供される構成が含まれたユーザインタフェースで前記機能を提供する、
請求項４に記載のインタラクション方法。
【請求項６】
コンピュータと結合して請求項１〜５のうちのいずれか一項に記載の方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録された、コンピュータプログラム。
【請求項７】
請求項１〜５のうちのいずれか一項に記載の方法をコンピュータに実行させるためのプログラムが記録されていることを特徴とする、コンピュータ読み取り可能な記録媒体。
【請求項８】
コンピュータ読み取り可能な命令を実行するように実現される少なくとも１つのプロセッサ
を含み、
前記少なくとも１つのプロセッサにより、
メッセージングサービスと連関して前記モバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、前記モバイル機器または前記モバイル機器のユーザのうちの少なくとも１つの状況に関する情報を取得し、
前記取得された情報に基づいて前記ユーザの状況を決定し、
前記決まったユーザの状況に基づき、前記メッセージングサービスを通じて前記ユーザに提供するための機能を確認し、
前記機能の提供のために提供されるユーザインタフェースの構成を、前記決定されたユーザの状況に応じて動的に決定し、
前記動的に決定された構成のユーザインタフェースで前記機能を提供する
動作を実行する、コンピュータ装置。
【請求項９】
前記少なくとも１つのプロセッサにより、
入力される情報に基づき、予め設定された状況のうちから１つの状況を決定するように機械学習された分類モデルに前記取得された情報を入力して決定される状況を、前記ユーザの状況として決定する
動作を実行する、請求項８に記載のコンピュータ装置。
【請求項１０】
前記少なくとも１つのプロセッサにより、
抽出された状況情報に基づいて第２会員の会話参加可能点数を計算し、
前記計算された会話参加可能点数を、前記第２会員に関する情報とともに第１会員に提供する
動作を実行する、請求項７に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
以下の説明は、メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション技術に関し、より詳細には、モバイル機器から取得可能な現在情報とここ最近の記録とを利用してユーザの現在状況を推定し、推定されたユーザの状況に応じてメッセージングサービスと多様にインタラクションすることができるインタラクション方法、インタラクション方法を実行するコンピュータ装置、コンピュータと結合してインタラクション方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されたコンピュータプログラムとその記録媒体に関する。
【背景技術】
【０００２】
メッセージングサービスのためにユーザのモバイル機器においてインストールされて実行されるメッセージングアプリケーションは、ユーザがモバイル機器を用いて他のユーザとメッセージを送受信するための多様な機能を提供する。例えば、従来技術のメッセージングアプリケーションは、ユーザがモバイル機器を使用していないとき（一例として、モバイル機器の画面が消えているとき）にメッセージを受信すると、通知ウィンドウを画面に表示させてメッセージの受信を知らせていた。しかし、このような従来技術のメッセージングアプリケーションは、予め設定された機能に基づいて画面に通知ウィンドウを表示するだけで、ユーザの状況はまったく考慮していない。例えば、ユーザがモバイル機器の画面を確認することのできない状況であれば、このような通知ウィンドウを画面に表示しても意味がなく、モバイル機器の資源を浪費するだけである。
【０００３】
また、モバイル機器がユーザのモバイル機器あるいはユーザの状況を認識し、認識された状況に基づいてモバイル機器を多様に制御するための従来技術が存在する。例えば、韓国登録特許第１０−１７２５５６６号は、センシングデータに基づいて特徴値を決定し、特徴値を状況クラスにマッピングして状況を認識し、認識された状況クラスに基づいて特定の動作を実行することを開示している。しかし、このような従来技術では、モバイル機器がユーザの状況を認識し、このように認識されたユーザの状況は、モバイル機器自体の動作を決定して実行するために使用されることに留まっている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
モバイル機器から取得可能な現在情報とここ最近の記録を利用してユーザの現在状況を推定し、推定されたユーザの状況に基づいてメッセージングサービスと多様にインタラクションすることができるインタラクション方法、インタラクション方法を実行するコンピュータ装置、コンピュータと結合してインタラクション方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されたコンピュータプログラムとその記録媒体を提供する。
【課題を解決するための手段】
【０００５】
モバイル機器のインタラクション方法であって、メッセージングサービスと連関して前記モバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、前記モバイル機器または前記モバイル機器のユーザのうちの少なくとも１つの状況に関する情報を取得する段階、前記取得された情報に基づいて前記ユーザの状況を決定する段階、前記決定されたユーザの状況に基づき、前記メッセージングサービスを通じて前記ユーザに提供するための機能を確認する段階、前記機能の提供のために提供されるユーザインタフェースの構成を、前記決定されたユーザの状況に応じて動的に決定する段階、および前記動的に決定された構成のユーザインタフェースで前記機能を提供する段階を含む、インタラクション方法を提供する。
【０００６】
一側によると、前記ユーザの状況を決定する段階は、入力される情報に基づいて予め設定された状況のうちから１つの状況を決定するように機械学習された分類モデルに前記取得された情報を入力して決定される状況を、前記ユーザの状況として決定してよい。
【０００７】
他の側面によると、前記機能は、前記メッセージングサービスを通じて前記ユーザに受信されたメッセージに対する通知を提供するための機能を含み、前記ユーザインタフェースは、通知ウィンドウを表示しない構成、通知ウィンドウでメッセージの内容を表示する構成、通知ウィンドウでメッセージの内容および選択インタフェースを提供する構成、および通知ウィンドウでメッセージの内容、選択インタフェース、およびテキスト入力インタフェースを提供する構成を含んでよい。
【０００８】
また他の側面によると、前記ユーザの状況を決定する段階は、前記ユーザの機器アクセスの可否、前記ユーザの機器操作の可否、および前記ユーザのテキスト入力の可否それぞれに対する組み合わせに基づき、複数のレベル（一例として、上述した自由度）のうちから１つのレベルを決定してよい。
【０００９】
また他の側面によると、前記レベル別に提供されるユーザインタフェースの構成が予め設定され、前記機能を提供する段階は、前記決定されたレベル以下のレベルによって提供される構成が含まれたユーザインタフェースで前記機能を提供してよい。
【００１０】
メッセージングサービスを利用する複数の会員それぞれに対して人的関係が設定された他の会員に関する情報を記録して管理する段階、前記複数の会員それぞれに関する状況情報を持続的に収集する段階、前記収集された状況情報を対応する会員と連携させてデータベースに記録して更新する段階、前記複数の会員のうちの第１会員と人的関係が設定された第２会員に関する情報を前記第１会員に提供する場合、前記第２会員の状況情報を前記データベースから抽出する段階、および前記抽出された状況情報を、前記第２会員に関する情報とともに前記第１会員に提供する段階を含む、インタラクション方法を提供する。
【００１１】
一側によると、前記データベースから抽出する段階は、前記第１会員と人的関係が設定された他の会員のリストを提供する場合、前記他の会員それぞれの状況情報を前記データベースから抽出して前記第１会員に提供する段階は、前記抽出された他の会員それぞれの状況情報が、対応する他の会員の情報と連携されたリストを前記第１会員に提供してよい。
【００１２】
他の側面によると、前記第１会員に提供する段階は、前記抽出された状況情報に基づいて前記第２会員の会話参加可能点数を計算する段階、および前記計算された会話参加可能点数を、前記第２会員に関する情報とともに前記第１会員に提供する段階を含んでよい。
【００１３】
また他の側面によると、前記インタラクション方法は、前記第１会員が参加した会話セッションに関する情報を提供する場合、前記会話セッションに参加した会員それぞれの状況情報を前記データベースから抽出する段階、前記会話セッションに参加した会員それぞれの状況情報に基づいて前記会話セッションの会話参加可能点数を計算する段階、および前記計算された会話参加可能点数を、前記会話セッションに関する情報とともに前記第１会員に提供する段階をさらに含んでよい。
【００１４】
また他の側面によると、前記インタラクション方法は、前記第１会員が参加した会話セッションそれぞれの会話参加可能点数に基づいて前記第１会員が参加した会話セッションのリストを整列する段階、および前記整列されたリストを前記第１会員に提供する段階をさらに含んでよい。
【００１５】
また他の側面によると、前記会話参加可能点数を計算する段階は、前記会話セッションに参加した会員それぞれの状況情報によるレベルが高いほど、さらに前記会話セッションで送信および／または受信されたメッセージの数が多いほど、前記会話参加可能点数を高く計算してよい。
【００１６】
また他の側面によると、前記インタラクション方法は、前記メッセージングサービスと連関して前記第１会員のモバイル機器においてインストールされて実行されるアプリケーションにおいて、前記第１会員が前記第１会員と人的関係が設定された他の会員に状況情報を提供するか否かを前記他の会員それぞれに対して設定することのできるユーザインタフェースを提供する段階をさらに含んでよい。
【００１７】
また他の側面によると、前記インタラクション方法は、前記他の会員のうち、前記第１会員の状況情報と同じ状況情報を有しているか、前記第１会員が予め設定した状況情報を有している第３会員を決定する段階、前記第３会員を前記第１会員に推奨する段階、および前記推奨された第３会員が選択される場合、前記第１会員と前記第３会員とが参加者となる会話セッションを生成する段階をさらに含んでよい。
【００１８】
また他の側面によると、前記インタラクション方法は、前記複数の会員のうちから同じ状況情報を有している会員を選択し、前記選択された会員同士の匿名の会話セッションを生成する段階をさらに含んでよい。
【００１９】
さらに他の側面によると、前記インタラクション方法は、前記第１会員によって設定される状況情報に対応する匿名の会話セッションを検索する段階、および前記検索された匿名の会話セッションの情報を前記第１会員に提供する段階をさらに含んでよい。
【００２０】
コンピュータと結合して前記インタラクション方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録された、コンピュータプログラムを提供する。
【００２１】
前記インタラクション方法をコンピュータに実行させるためのプログラムが記録されている、コンピュータ読み取り可能な記録媒体を提供する。
【００２２】
コンピュータ読み取り可能な命令を実行するように実現される少なくとも１つのプロセッサを含み、前記少なくとも１つのプロセッサにより、メッセージングサービスと連関して前記モバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、前記モバイル機器または前記モバイル機器のユーザのうちの少なくとも１つの状況に関する情報を取得し、前記取得された情報に基づいて前記ユーザの状況を決定し、前記決定されたユーザの状況に基づき、前記メッセージングサービスを通じて前記ユーザに提供するための機能を確認し、前記機能の提供のために提供されるユーザインタフェースの構成を、前記決定されたユーザの状況に応じて動的に決定し、前記動的に決定された構成のユーザインタフェースで前記機能を提供する動作を実行する、コンピュータ装置を提供する。
【００２３】
コンピュータ読み取り可能な命令を実行するように実現される少なくとも１つのプロセッサを含み、前記少なくとも１つのプロセッサにより、メッセージングサービスを利用する複数の会員それぞれに対して人的関係が設定された他の会員に関する情報を記録して管理し、前記複数の会員それぞれに関する状況情報を持続的に収集し、前記収集された状況情報を、対応する会員と連携させてデータベースに記録して更新し、前記複数の会員のうちの第１会員と人的関係が設定された第２会員に関する情報を前記第１会員に提供する場合、前記第２会員に関する状況情報を前記データベースから抽出し、前記抽出された状況情報を、前記第２会員に関する情報とともに前記第１会員に提供する動作を実行する、コンピュータ装置を提供する。
【発明の効果】
【００２４】
モバイル機器から取得可能な現在情報とここ最近の記録とを利用してユーザの現在状況を推定し、推定されたユーザの状況に基づき、機器アクセスの可否、機器操作の可否、およびテキスト入力の可否を決定してユーザの自由度レベルを決定し、決定された自由度レベルによってメッセージングサービスとのインタラクション方式を決定することにより、同じ機能（一例として、通知の提供）を提供する場合であっても、ユーザの状況に応じて互いに異なるユーザインタフェースを提供することができる。
【００２５】
メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、特定のユーザと人的関係が設定された他のユーザの状態情報を該当の特定のユーザに提供することができる。
【００２６】
メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、メッセージングサービスで設定された会話セッションそれぞれの会話参加可能点数に関する情報を提供および／または表示することができる。
【００２７】
メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、メッセージングサービスで会話セッションの参加者の会話集中度に関する情報を提供および／または表示することができる。
【００２８】
メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、会話セッションの生成時に、ユーザの状況に基づいて会話セッションの参加者を推奨することができる。
【００２９】
メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、ユーザが匿名による会話セッションをユーザの状況に応じて検索、生成、および参加できる機能を提供することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態における、ネットワーク環境の例を示した図である。
【図２】本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。
【図３】本発明の一実施形態における、ユーザの状況を感知する過程の例を示した図である。
【図４】本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【図５】本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【図６】本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【図７】本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【図８】本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【図９】本発明の一実施形態における、他のユーザの状態情報を表示する例を示した図である。
【図１０】本発明の一実施形態における、会話参加可能点数を提供する例を示した図である。
【図１１】本発明の一実施形態における、インタラクション方法の例を示したフローチャートである。
【図１２】本発明の一実施形態における、インタラクション方法の他の例を示したフローチャートである。
【発明を実施するための形態】
【００３１】
以下、実施形態について、添付の図面を参照しながら詳しく説明する。
【００３２】
本発明の実施形態に係るインタラクション方法は、以下で説明する電子機器やサーバのようなコンピュータ装置によって実現されてよい。このとき、コンピュータ装置においては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータ装置は、実行されるコンピュータプログラムの制御にしたがって本発明の実施形態に係るインタラクション方法を実行してよい。上述したコンピュータプログラムは、コンピュータ装置と結合してインタラクション方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に格納されてよい。
【００３３】
図１は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図１のネットワーク環境は、複数の電子機器１１０、１２０、１３０、１４０、複数のサーバ１５０、１６０、およびネットワーク１７０を含む例を示している。このような図１は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図１のように限定されることはない。
【００３４】
複数の電子機器１１０、１２０、１３０、１４０は、コンピュータ装置によって実現される固定端末や移動端末であってよい。複数の電子機器１１０、１２０、１３０、１４０の例としては、スマートフォン、携帯電話、ナビゲーション、ＰＣ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）、ノート型ＰＣ、デジタル放送用端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、タブレットなどがある。一例として、図１では、電子機器１（１１０）の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器１（１１０）は、実質的に無線または有線通信方式を利用し、ネットワーク１７０を介して他の電子機器１２０、１３０、１４０および／またはサーバ１５０、１６０と通信することのできる多様な物理的なコンピュータ装置のうちの１つを意味してよい。
【００３５】
通信方式が限定されることはなく、ネットワーク１７０が含むことのできる通信網（一例として、移動通信網、有線インターネット、無線インターネット、放送網）を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク１７０は、ＰＡＮ（ｐｅｒｓｏｎａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＣＡＮ（ｃａｍｐｕｓ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＭＡＮ（ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＷＡＮ（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＢＢＮ（ｂｒｏａｄｂａｎｄ  ｎｅｔｗｏｒｋ）、インターネットなどのネットワークのうちの１つ以上の任意のネットワークを含んでよい。さらに、ネットワーク１７０は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター−バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の１つ以上を含んでもよいが、これらに限定されることはない。
【００３６】
サーバ１５０、１６０それぞれは、複数の電子機器１１０、１２０、１３０、１４０とネットワーク１７０を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する１つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ１５０は、ネットワーク１７０を介して接続した複数の電子機器１１０、１２０、１３０、１４０に第１サービスを提供するシステムであってよく、サーバ１６０も、ネットワーク１７０を介して接続した複数の電子機器１１０、１２０、１３０、１４０に第２サービスを提供するシステムであってよい。より具体的な例として、第１サービスとしてソーシャルネットワークサービスが挙げられてよい。この場合、サーバ１５０は、サービスと連携するアプリケーションがインストールされた複数の電子機器１１０、１２０、１３０、１４０にアプリケーションを通じてメッセージングサービス、タイムラインサービスなどのようなソーシャルネットワークサービスとして提供可能な多様なサービスを提供してよい。また、サーバ１６０は、上述したアプリケーションのインストールのためのインストールファイルを複数の電子機器１１０、１２０、１３０、１４０に配布するためのサービスを第２サービスとして提供してよい。
【００３７】
図２は、本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。上述した複数の電子機器１１０、１２０、１３０、１４０それぞれやサーバ１５０、１６０それぞれは、図２に示したコンピュータ装置２００によって実現されてよい。例えば、コンピュータ装置２００においては、一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータ装置２００は、実行されるコンピュータプログラムの制御にしたがって本発明の実施形態に係るインタラクション方法を実行してよい。
【００３８】
このようなコンピュータ装置２００は、図２に示すように、メモリ２１０、プロセッサ２２０、通信インタフェース２３０、および入力／出力インタフェース２４０を含んでよい。メモリ２１０は、コンピュータ読み取り可能な記録媒体であって、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ＲＯＭやディスクドライブのような永続的大容量記録装置は、メモリ２１０とは区分される別の永続的記録装置としてコンピュータ装置２００に含まれてもよい。また、メモリ２１０には、オペレーティングシステムと、少なくとも１つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ２１０とは別のコンピュータ読み取り可能な記録媒体からメモリ２１０にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー（登録商標）ドライブ、ディスク、テープ、ＤＶＤ／ＣＤ−ＲＯＭドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース２３０を通じてメモリ２１０にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク１７０を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータ装置２００のメモリ２１０にロードされてよい。
【００３９】
プロセッサ２２０は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ２１０または通信インタフェース２３０によって、プロセッサ２１２、２２２に提供されてよい。例えば、プロセッサ２２０は、メモリ２１０のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【００４０】
通信モジュール２３０は、ネットワーク１７０を介してコンピュータ装置２００が他の装置（一例として、上述した記録装置）と互いに通信するための機能を提供してよい。一例として、コンピュータ装置２００のプロセッサ２２０がメモリ２１０のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース２３０の制御にしたがってネットワーク１７０を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データファイルなどが、ネットワーク１７０を経てコンピュータ装置２００の通信モジュール２３０を通じてコンピュータ装置２００に受信されてよい。通信インタフェース２３０を通じて受信された信号や命令、データなどは、プロセッサ２２０やメモリ２１０に伝達されてよく、ファイルなどは、コンピュータ装置２００がさらに含むことのできる記録媒体（上述した永続的記録装置）に記録されてよい。
【００４１】
入力／出力インタフェース２４０は、入力／出力装置２５０とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、またはマウスなどの装置を、出力装置は、ディスプレイやスピーカのような装置を含んでよい。他の例として、入力／出力インタフェース２４０は、タッチスクリーンのように入力と出力のための機能が１つに統合された装置とのインタフェースのための手段であってもよい。入力／出力装置２５０は、コンピュータ装置２００と１つの装置で構成されてもよい。
【００４２】
また、他の実施形態において、コンピュータ装置２００は、図２の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータ装置２００は、上述した入力／出力装置２５０のうちの少なくとも一部を含むように実現されてもよいし、トランシーバやデータベースなどのような他の構成要素をさらに含んでもよい。
【００４３】
図３は、本発明の一実施形態における、ユーザの状況を感知する過程の例を示した図である。図３は、第１過程３１０〜第７過程３７０を示している。
【００４４】
第１過程３１０は、ユーザがモバイル機器を持っている手を感知するための過程の例であってよく、モバイル機器は、加速度センサとジャイロセンサを利用してモバイル機器を持っているユーザの手の情報を提供してよい。例えば、「左手」、「右手」、「両手」、および「載置」のうちの１つの状態に関する情報が提供されてよい。「左手」はユーザが左の手でモバイル機器を持って使用中であることを、「右手」はユーザが右の手でモバイル機器を持って使用中であることを、「両手」はユーザが両方の手でモバイル機器を持って使用中であることを、「載置」はユーザがモバイル機器を手にしていない状態で使用中であることを、それぞれ意味してよい。例えば、片手で機器を操作してタイピングをする場合、加速度センサおよび／またはジャイロセンサにより、機器の中央軸を基準としてどちらか一方向への揺れまたは振動が目立つか、および／または機器の方向（ｏｒｉｅｎｔａｔｉｏｎ、すなわち、横であるか縦であるか）を把握してよく、これを片手の機器使用パターンと関連して予め記録されたデータ群（ｄａｔａｓｅｔ）と比較することにより、どちらの手で機器が使用されているか、または両手で使用されているかを決定してよい。
【００４５】
第２過程３２０は、片手使用モードの利用の可否を感知するための過程の例であってよい。片手使用モードとは、特定のモバイル機器や特定のアプリケーションにおいて、ユーザが片手でモバイル機器を制御することのできる機能を提供するためのモードであって、モバイル機器は、このような片手使用モードがオン（Ｏｎ）状態であるかオフ（Ｏｆｆ）状態であるかに関する情報を提供してよい。このとき、モバイル機器が片手使用モードを提供しない場合にはオフ（Ｏｆｆ）状態に含まれてよい。
【００４６】
第３過程３３０は、ユーザの移動状態を感知するための過程の例であってよい。モバイル機器は、第３過程３３０において、ユーザが現在どのような移動状態に位置するかに関する情報を提供してよい。移動状態の例としては、「停止」、「歩く」、「走る」、「バス」、「地下鉄」、「乗用車」、および「自転車」のうちのいずれか１つを含んでよい。また、第３過程３３０は、ユーザの移動速度に関する情報をさらに提供してよい。一例として、モバイル機器は、ＧＰＳおよび周辺の無線電話網の基地局、あるいはＷｉ−Ｆｉ  ＡＰ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ）の情報によって提供されるモバイル機器の地理的位置（一例として、緯度／硬度の座標）の変化、またはモバイル機器が含む加速度センサの測定値などから、モバイル機器の移動速度に関する情報を取得してよい。また、モバイル機器は、取得した移動速度、および／またはモバイル機器が含む加速度センサおよび／またはジャイロセンサを利用して測定されるモバイル機器の揺れや振動のパターンに基づき、ユーザの移動状態に関する情報を取得してよい。このような移動速度や移動状態に関する情報を取得するための技術の一例として、「Ｇｏｏｇｌｅ  Ａｃｔｉｖｉｔｙ  Ｒｅｃｏｇｎｉｔｉｏｎ  ＡＰＩ」（行動認識ＡＰＩ）ような周知の技術に基づき、当業者によって容易に理解されることができるであろう。
【００４７】
第４過程３４０は、モバイル機器の状態情報を感知するための過程の例であってよい。モバイル機器は、ＬＣＤのオン（Ｏｎ）またはオフ（Ｏｆｆ）に関する情報、アプリケーションがユーザによって現在使用されているかに関する情報（使用されている場合、どのようなアプリケーションがユーザによって使用されているかに関する情報、または特定のアプリケーションがフォアグラウンドまたはバックグラウンドで起動されているかに関する情報）、およびスクリーンロックの解除の可否に関する情報のうちの少なくとも１つを提供してよい。
【００４８】
第５過程３５０は、モバイル機器の位置情報を感知するための過程の例であってよい。ここで、位置情報は、地理的位置ではなく、ユーザが身に着けている衣類のポケットの中、ユーザが所持しているカバンの中、または外部露出などのような位置情報を含んでよい。例えば、モバイル機器は、加速度センサ、照度センサ、マイク、および近距離センサなどを活用してモバイル機器の位置情報を感知して提供してよい。
【００４９】
第６過程３６０は、モバイル機器の地理的位置情報を感知するための過程の例であってよい。モバイル機器は、ＧＰＳ、Ｗｉ−Ｆｉポジショニング、基地局などのような多様な情報を活用することで、モバイル機器の現在の緯度／硬度位置情報のような地理的位置情報を取得して提供してよい。また、第６過程３６０は、地理的位置情報の使用の可否に関する情報を提供してよい。例えば、ユーザがナビゲーションアプリを使用する場合は、地理的位置情報を使用しているものと決定されてよい。
【００５０】
上述した第１過程３１０〜第６過程３６０のための具体的な技術は、当業者であれば周知の技術から容易に理解することができるであろう。例えば、第３過程３３０によってユーザの移動状態を感知する技術は、上述したように、「Ｇｏｏｇｌｅ  Ａｃｔｉｖｉｔｙ  Ｒｅｃｏｇｎｉｔｉｏｎ  ＡＰＩ」に基づき、当業者が容易に理解することができるであろう。本発明の実施形態は、このような個別の情報をどのように取得できるかに関するものでなく、取得した情報をどのように活用すればユーザの状況を自動で感知および活用できるかに関するものである。また、実施形態によれば、第１過程３１０〜第６過程３６０の一部の過程だけが実行されてもよいし、他の情報を取得するための新たな過程が追加されてもよいことは、当業者であれば容易に理解することができるであろう。
【００５１】
第７過程３７０は、第１過程３１０〜第６過程３６０によって提供される情報に基づいてユーザ状況を決定する過程の例であってよい。第７過程３７０は、モバイル機器によって実行されてよく、実施形態によれば、モバイル機器が第１過程３１０〜第６過程３６０によって提供する情報を受信したサーバ（一例として、サーバ１５０）によって実行されてもよい。ユーザ状況の決定は、機械学習を利用した分類方法として、確率を使用する分類モデルや非確率的分類モデルが活用されてよい。
【００５２】
例えば、確率を使用する分類モデルとして単純ベイズ分類（Ｎａｉｖｅ  Ｂａｙｅｓ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ）が活用されてよい。単純ベイズ分類は、特性間の独立を仮定するベイズ定理を適用した確率分類の一種である。
【００５３】
単純ベイズは条件付き確率モデルであり、分類されるインスタンスはＮ個の特性（従属変数）を示すベクター（又はベクトル）で表現されるが、単純ベイズ分類は、このベクターを利用してｋ個の可能な確率的結果（クラス）を次の数式（１）のように割り当てる。
【００５４】
【数１】
2021516474.tif 000003
このような数式（１）は、特性Ｎの数が多い場合や、１つの特性が多くの数の値を有する場合に、確率テーブルにベイジアンモデルをそのまま適用するのが困難となる。このため、上記の数式は、ベイズ定理と条件付き確率を利用して次の数式（２）のように整理することが可能である。
【００５５】
【数２】
2021516474.tif 000004
ベイジアン確率用語を使用することにより、上記の数式は次の数式（３）のようにも表現することが可能である。
【００５６】
【数３】
2021516474.tif 000005
ここで、「ｐｏｓｔｅｒｉｏｒ」は事後確率を、「ｐｒｉｏｒ」は事前確率を、「ｌｉｋｅｌｉｈｏｏｄ」は尤度を、「ｅｖｉｄｅｎｃｅ」は観察値を、それぞれ意味してよい。
【００５７】
実際に、上記の数式（３）では分子部分だけに意味がある。分母部分は与えられたＣ値に依存せず、特性の値Ｆｉの場合に分母の値が常数となるように与えられるためである。分子部分は、次の数式（４）のような結合確率モデルである。
【００５８】
【数４】
2021516474.tif 000006
このとき、数式（４）は、条件付き確率を繰り返し適用した連鎖法則を利用して次の数式（５）のように再帰的に表現することができる。
【００５９】
【数５】
2021516474.tif 000007
単純ベイズにおける条件付き独立性は、次の数式（６）のように表現されてよい。
【００６０】
【数６】
2021516474.tif 000008
このとき、カテゴリ種類Ｃが与えられる場合、ある特性Ｆｉの場合には、すべてのＦｊ（ｊ≠ｉ）に対して条件付き独立となる。すなわち、数式（６）は、ｊ≠ｉであるｋ，ｌに対して成立するようになり、これに基づき、結合モデルは、次の数式（７）のように表現されてよい。
【００６１】
【数７】
2021516474.tif 000009
数式（７）は、独立性の過程下において、クラス変数Ｃの条件付き分布は、次の数式（８）のように表現されてよい。
【００６２】
【数８】
2021516474.tif 000010
ここで、Ｚ＝ｐ（ｘ）は、特性値が与えられた場合に常数となる、すなわち、ｘ１、・・・、ｘｎだけに依存するスケーリングファクタである。
【００６３】
単純ベイズ分類は、このような確率モデルと決定規則とを組み合わせたものであって、共通する１つの規則は、最も可能性の高い仮説を選択するという点である。これは、事後またはＭＡＰ決定規則の最大値を選択することを意味する。すなわち、単純ベイズ分類ではクラスｋ、すなわち、Ｃｋに対して次の数式（９）を利用しながら最大確率を有するクラスｋを探索する。
【００６４】
【数９】
2021516474.tif 000011
一例として、第７過程３７０で、コンピュータ装置２００は、第１過程３１０〜第６過程３６０によって提供される情報による状況が独立事件であると仮定し、それぞれの状況に対するイベント発生回数を収集してよい。また、コンピュータ装置２００は、このようなイベント発生回数に基づく発生確率を計算してよく、所望する結果値に対して個別状況がどのような確率を有するかを計算してイベントモデルを生成してよい。以後、テストのための状況イベントを入力し、生成されたイベントモデルに基づいて結果値を推定してよい。
【００６５】
一方、非確率的分類モデルとしては、サポートベクターマシン（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ：ＳＶＭ）が活用されてよい。サポートベクターマシンは機械学習の分野の１つであって、パターン認識、資料分析のための指導学習モデルであり、分類と回帰分析のために主に使用される。２つのカテゴリのうちのいずれか１つに属するデータの集合が与えられたとき、ＳＶＭアルゴリズムは、与えられたデータ集合に基づき、新たなデータがどちらのカテゴリに属するかを判断する非確率的二値線形分類モデルを生成する。生成された分類モデルは、データが投影された空間で境界として表現されるが、ＳＶＭアルゴリズムは、そのうちの最大幅を有する境界を探索するアルゴリズムである。ＳＶＭは、線形分類とともに非線形分類でも使用可能である。非線形分類を行うために与えられたデータを高次元特徴空間に投影する作業が必要となるが、これを効率的に行うためにカーネルトリックを利用したりもする。
【００６６】
一例として、第７過程３７０で、コンピュータ装置２００は、第１過程３１０〜第６過程３６０によって提供される情報というデータの集合（データのベクター）がどのカテゴリに属するかを連続的に分類することにより、データの集合に対応するユーザの状況（カテゴリ）を決定してよい。
【００６７】
このような第７過程３７０は、イベントモデルを含むコンピュータ装置２００によって実行されてよい。このようなコンピュータ装置２００は、ユーザのモバイル機器であってもよいし、モバイル機器からネットワーク１７０を介して情報を受信したサーバ１５０であってもよい。例えば、コンピュータ装置２００は、第１過程３１０〜第６過程３６０によって提供される個別状況を組み合わせることで、ユーザの総合的な状況に関する情報や、以下で説明する自由度のような情報を提供してよい。例えば、コンピュータ装置２００は、第７過程３７０でイベントモデルを利用してユーザの機器アクセスの可否、機器操作の可否、テキスト入力の可否などを分類し、結果値の例として自由度を提供してよい。以下の表１は、ユーザの状況に応じて４段階の自由度を決定する例を示している。
【００６８】
【表１】
2021516474.tif 000012
例えば、ユーザが出勤中にバスの内で立っており、モバイル機器がカバンの中に入っている第１状況例が考えられる。モバイル機器は、第３過程３３０によってユーザの移動状態（一例として、「バスの中」、移動速度は時速５０ｋｍ）に関する情報を提供してよく、第４過程３４０によってユーザが３０分間いずれのアプリケーションも使用しなかったことに関する情報を提供してよく、第５過程によってモバイル機器の位置情報が「カバン」であることを把握して提供してよい。この場合、イベントモデルは、上述した第１状況例に対し、機器アクセスの可否、機器操作の可否、およびテキスト入力の可否をそれぞれ決定してよく、このような決定および表１で上述した第１状況例の自由度を「１」として決定してよい。
【００６９】
第２状況例として、ユーザが自転車に乗りながら、自転車に装着したモバイル機器をナビゲーションの用途で使用している状況が考えられる。このとき、モバイル機器で提供する情報は、「自転車」、「外部露出」、「中速移動中」、「ＬＣＤオン（Ｏｎ）」、「載置中」、「ナビゲーションアプリケーション使用中」などのような情報を含んでよい。この場合、イベントモデルは、ユーザが、機器アクセスは可能であり、機器操作は困難であり、テキスト入力も困難であるという決定により、第２状況例の自由度を「２」として決定してよい。
【００７０】
第３状況例として、ユーザが片手でモバイル機器を持った状態で道路を歩いている状況が考えられる。このとき、モバイル機器で提供する情報は、「歩く」、「外部露出」、「低速移動中」、「ＬＣＤオフ（Ｏｆｆ）」、「１０分以内のアプリケーションの使用記録が存在」、「片手」などのような情報を含んでよい。この場合、イベントモデルは、ユーザが、機器アクセスと機器操作は可能であるがテキスト入力は困難であると決定してよく、このような決定により、第３状況例の自由度を「３」として決定してよい。
【００７１】
第４状況例として、ユーザが会社で席に座ってモバイル機器を使用している状況が考えられる。このとき、モバイル機器で提供する情報は、「停止」、「ＬＣＤオン（Ｏｎ）」、「両手」、「アプリケーション使用中」、「位置情報未使用」のような情報を含んでよい。この場合、イベントモデルは、ユーザが、機器アクセス、機器操作、およびテキスト入力のすべてが可能であると判断し、第４状況例の自由度を「４」として決定してよい。
【００７２】
表１では、機器アクセスの可否、機器操作の可否、およびテキスト入力の可否に応じて自由度を４段階に分類した例を示しているが、条件や自由度の段階は実施形態によって多様に設定可能であることは、当業者であれば容易に理解することができるであろう。
【００７３】
図４〜８は、本発明の実施形態における、自由度に応じて互いに異なるユーザインタフェースを提供する例を示した図である。
【００７４】
図４の実施形態では、メッセージが届いてユーザに通知ウィンドウを提供するときに、自由度を活用する１つの例を説明している。図４は、モバイル機器４１０がメッセージングサービスにメッセージを受信した場合に、ユーザの現在の自由度に応じて互いに異なるユーザインタフェースを提供する例を示している。
【００７５】
このとき、自由度１（４２０）の場合、ユーザは、機器アクセス、機器操作、およびテキスト入力のすべてが困難な状態であるため、画面に通知ウィンドウを表示しても特別な意味がない。この場合、モバイル機器４１０は、通知ウィンドウを表示しなくてもよい。図５は、メッセージは受信したが通知ウィンドウは表示しない電子機器１（１１０）の画面５１０の例を示している。
【００７６】
自由度２（４３０）の場合、ユーザは、機器アクセスは可能であるが、機器操作とテキスト入力は困難な状態である。この場合、機器アクセスが可能であるということは、機器画面に表示される情報は確認可能であることを意味するため、モバイル機器４１０は、メッセージの内容を含む通知ウィンドウを表示してよい。図６は、メッセージの受信にともない、電子機器１（１１０）の画面６１０に通知ウィンドウ６２０が表示された例を示している。このとき、ユーザの機器操作は困難であるため、図６では、通知ウィンドウ６２０に特別なユーザインタフェースを提供する必要がなく、メッセージの発信者に関する情報６３０とメッセージ内容６４０だけが通知ウィンドウ６２０に表示された例を示している。
【００７７】
自由度３（４４０）の場合、ユーザは、機器アクセスと機器操作は可能であるが、テキスト入力が困難な状態である。この場合、ユーザが少なくとも片手でモバイル機器４１０を操作することは可能であるため、モバイル機器４１０は、メッセージの内容を画面に表示するだけでなく、簡単な入力で操作可能な機能を提供するためのユーザインタフェースをともに提供してよい。図７は、メッセージの受信にともない、電子機器１（１１０）の画面７１０に通知ウィンドウ７２０が表示された例を示している。このとき、ユーザが簡単な機器操作は可能であるため、図７の通知ウィンドウ７２０は、メッセージの発信者に関する情報７３０とメッセージ内容７４０だけを表示するのではなく、メッセンジャーのチャットルームを通じてメッセージを確認するためのユーザインタフェース７５０と、通知ウィンドウ７２０を閉めるためのユーザインタフェース７６０をさらに含んで構成されている。これに加え、通知ウィンドウ７２０は、予め設定された定型句（「いま忙しい」、「後で電話する」）を送信するためのユーザインタフェース７７０、７８０をさらに含んで構成されている。ユーザがユーザインタフェース７７０、７８０のうちのいずれか１つを選択（一例として、タッチスクリーン環境で該当のユーザインタフェースが表示された領域をタッチ）する場合、電子機器１（１１０）は、選択されたユーザインタフェースに対応する定型句を含むメッセージを、発信者に関する情報７３０に対応する受信者に送信してよい。また、ＧＰＳおよび周辺の無線電話網の基地局、または照度センサなどからの情報により、ユーザが運転中であるとか携帯端末がカバンの中にある場合などのようにユーザの現在状態が定型句を選択することのできない場合であると判定される場合、ユーザの選択を受けずに自動で該当の定型句を送信してもよい。
【００７８】
自由度４（４５０）の場合、ユーザは、機器アクセス、機器操作、およびテキスト入力がすべて可能な状態である。この場合、ユーザは、受信したメッセージ内容を確認し、希望する場合には返答を直接入力して送信することができるため、モバイル機器は、返答を直接入力するためのユーザインタフェースを通知ウィンドウでさらに提供してよい。図８は、メッセージの受信にともない、電子機器１（１１０）の画面８１０に通知ウィンドウ８２０が表示された例を示している。上述したように、ユーザは、機器アクセスと機器操作だけでなく、テキストの入力も可能な状況であるため、図８の通知ウィンドウ８２０は、メッセージの発信者に関する情報８３０とメッセージの内容８４０とを表示し、簡単なユーザインタフェース８５０、８６０、８７０、８８０を提供するだけでなく、点線枠８９０に示すように、メッセージに対する返答を入力することのできる文字入力インタフェースをユーザにさらに提供してよい。例えば、ユーザが点線枠８９０に表示された領域を選択する場合、文字を入力するための機能がユーザに提供されてよい。
【００７９】
このように、本実施形態によれば、メッセージングサービスと連関する１つの機能を提供する場合にも、ユーザの状況によって決定された自由度に応じて多様なユーザインタフェースを提供することができる。このような自由度の活用が、メッセージングサービスと連関する多様な機能に活用可能であることは、当業者であれば、上述した実施形態に基づいて容易に理解することができるであろう。
【００８０】
以下では、ユーザの状況を活用する多様な実施形態について説明する。
【００８１】
図９は、本発明の一実施形態における、他のユーザの状態情報を表示する例を示した図である。上述したように、ユーザのモバイル機器だけでなく、メッセージングサービスを提供するサーバ１５０も、メッセージングサービスを利用するユーザの状況を具体的に取得可能である。図９は、電子機器１（１１０）の画面９１０にユーザと人的関係が設定された他のユーザのリストを提供する例を示している。このとき、少なくとも１つの他のユーザに対し、他のユーザの状況に関する情報が表示されてよい。図９では、第１点線枠９２０のように他のユーザＢＢＢが「会議中」であることを、第２点線枠９３０のように他のユーザＣＣＣが「自転車運転中」であることを、第３点線枠９４０のように他のユーザＥＥＥが「メッセンジャー使用中」であることを知らせることで、他のユーザの状況に関する情報を提供している。
【００８２】
このために、サーバ１５０は、メッセージングサービスを利用したユーザのモバイル機器から、図３を参照しながら上述した第１過程３１０〜第６過程３６０によって収集される情報をネットワーク１７０を介して受信し、第７過程３７０を実行してユーザの状況を分類してよい。また、ユーザのモバイル機器それぞれで第１過程３１０〜第６過程３６０によってユーザの状況が分類された後、サーバ１５０は、分類されたユーザの状況に関する情報を受信して活用してもよい。
【００８３】
このように、サーバ１５０は、メッセージングサービスでユーザと人的関係が設定された他のユーザのリストを提供するにあたり、少なくとも１つの他のユーザの状況情報をともに提供してよく、モバイル機器は、モバイル機器においてインストールされて実行されたメッセンジャーアプリケーションの制御にしたがい、少なくとも１つの他のユーザの状況情報が該当の他のユーザの情報とともに表示されたリストを画面に表示してよい。このとき、表示される状況情報は、他のユーザに対して収集されたすべての状況情報を含む必要はない。サーバ１５０は、他のユーザに対して収集された状況情報のうちから代表的な状況情報を選別して提供してよい。
【００８４】
また、モバイル機器は、メッセンジャーアプリケーションで、ユーザの状況情報を表示する他のユーザを設定することのできるユーザインタフェースを提供してよい。例えば、図９の実施形態は、少なくとも他のユーザＢＢＢ、ＣＣＣ、ＥＥＥの状況情報が電子機器１（１１０）のユーザに提供されるように設定した場合を意味してよい。
【００８５】
このような状況情報の表示により、ユーザがメッセージングサービスを利用して会話を行わなくても、人的関係が設定された他のユーザと状況情報を通じて情報提供を共感することができるようになる。
【００８６】
また他の実施形態として、サーバ１５０は、チャットルーム（会話セッション）リストに、各チャットルームの会話参加可能点数（Ｊｏｉｎａｂｉｌｉｔｙ  ｓｃｏｒｅ）を表示してよい。例えば、サーバ１５０は、特定の会話セッションの参加者それぞれの状況情報に基づき、該当の会話セッションでユーザが会話に参加することのできる確率が高い程度を会話参加可能点数として数値化して提供してよい。
【００８７】
図１０は、本発明の一実施形態における、会話参加可能点数を提供する例を示した図である。図１０は、電子機器１（１１０）の画面１０１０に、ユーザを参加者とする会話セッション（チャットルーム）のリストを表示した例を示している。このとき、点線枠１０２０は、会話セッションそれぞれの会話参加可能点数を示している。図１０の実施形態は、会話参加可能点数が０〜１００までの数で決定された例を示しており、会話参加可能点数の高いほど、ユーザが該当のチャットルームで会話に参加できる確率が高いことを意味してよい。例えば、チャットルームの参加者全員が忙しい状況であれば、ユーザが該当のチャットルームに入ってメッセージを送信したとしても返答を受けることのできる確率は低いため、会話参加可能点数は低く設定されてよい。実施形態によれば、会話参加可能点数は、点数ではなく、色（一例として、赤色、黄色、緑色）やレベル（一例として、Ｈｉｇｈ、Ｍｉｄ、Ｌｏｗの３段階のレベル）などで表示されてもよい。
【００８８】
このような会話参加可能点数は、会話セッションに参加した参加者それぞれの自由度と、参加者それぞれがチャットルームでメッセージを送受信した記録に基づいて決定されてよい。例えば、サーバ１５０は、会話セッションに参加した参加者の自由度が高いほど、さらにここ最近の予め設定された時間内のメッセージ送信および／または受信回数が多いほど、会話参加可能点数を高く設定してよい。
【００８９】
また、サーバ１５０は、チャットルーム（会話セッション）リストに含まれたチャットルームを、会話参加可能点数順に整列して提供してもよい。言い換えれば、できるだけ多くの人が今すぐ会話に参加することのできるチャットルームの順にチャットルームを表示したリストがユーザに提供されてよい。また、サーバ１５０は、会話参加可能点数順に整列されたチャットルームのうち、会話参加可能点数が予め設定された値以上のチャットルームだけをリストに含ませて提供してもよいし、会話参加可能点数順に整列されたチャットルームのうち、会話参加可能点数が高い順に予め設定された数のチャットルームだけをリストに含ませて提供してもよい。
【００９０】
一方、このような会話参加可能点数は、ユーザ別に設定されてもよい。例えば、図９で、人的関係が設定された他のユーザの状況情報を表示する代わりに、ユーザ別の会話参加可能点数を計算して表示してもよい。この場合、ユーザの会話参加可能点数は、該当のユーザの自由度と、該当のユーザがメッセージを送受信した記録に基づいて決定されてよい。例えば、サーバ１５０は、ユーザの自由度が高いほど、さらにユーザがここ最近の予め設定された時間内にメッセージを送信および／または受信した回数が多いほど、会話参加可能点数を高く設定してよい。より具体的な例として、会話セッションＡの参加者Ｂに対し、会話セッションＡで予め設定された時間内に送信されたメッセージの全体数に対してユーザＢが送信したメッセージの数が高いほど、ユーザＢの会話参加可能点数が高く設定されてよい。
【００９１】
また、サーバ１５０は、このようなユーザ別の会話参加可能点数を、チャットルーム内の参加者のそれぞれの会話集中度として提供してもよい。例えば、チャットルームＡにユーザＡ、ユーザＢ、ユーザＣが参加していると仮定するとき、サーバ１５０は、ユーザＡ、ユーザＢ、ユーザＣの会話集中度を該当のユーザと連携させてチャットルーム内に表示してよい。これとは逆に、チャットルーム内で参加者の状況情報（一例として、走る、会議中、バス、自転車）を提供してもよい。
【００９２】
また、サーバ１５０は、メッセンジャーアプリケーションにおいて、個別のユーザそれぞれが自身の友達（メッセージングサービスで人的関係が設定された他のユーザ）それぞれに対して状況情報の表示や会話集中度（会話参加可能点数）の表示などを設定することのできるユーザインタフェースを提供してよい。
【００９３】
一方、サーバ１５０は、状況情報に基づいてチャットルームの生成をサポートするための機能を、メッセンジャーアプリケーションを通じてユーザに提供してもよい。例えば、サーバ１５０は、会話セッションの生成時に、ユーザの状況に基づき、会話セッションの参加者を、メッセンジャーアプリケーションを通じてユーザに推奨してよい。例えば、サーバ１５０は、ユーザと同じ状況またはユーザが予め設定した状況にある友達をユーザに推奨してよい。他の例として、サーバ１５０は、会話集中度が高い友達をユーザに推奨してもよい。このとき、サーバ１５０は、推奨された友達のうちからユーザが選択した友達との新たなチャットルームを生成して提供してよい。
【００９４】
他の実施形態として、サーバ１５０は、状況情報に基づき、匿名によるインスタントオープンチャットルームを生成してもよい。例えば、サーバ１５０は、特定の地域で同じ状況にある人を参加者とする匿名によるチャットルームを生成し、生成されたチャットルームへの参加を該当のユーザに推奨してよい。また、サーバ１５０は、ユーザが地域および／または状況を設定する場合、設定された地域および／または状況に合うチャットルームを検索し、検索されたチャットルームリストを提供してもよい。このような匿名によるチャットルームでも、ユーザは、自身の状況情報や会話集中度（会話参加可能点数）の表示の可否を設定してよい。
【００９５】
このような機能は、特定の状況で匿名のユーザ同士が情報を交換したり、または特殊なイベントと連関するユーザ同士を簡単に集めて意見を交換したりする機会を提供することを可能にする。具体的な例として、ゲーム展示会で各ブース別にゲームを体験するために集まっている人が、ブース別の待機時間に関する情報や特定の道路の車の混雑具合に関する情報を、遊園地の乗り物の機器状況や、同じ公演を見に来た人同士の感性や関連情報を、匿名によるチャットルームで交換することが可能となる。言い換えれば、サーバ１５０は、特定の状況にある匿名のユーザが匿名によるチャットルームに参加して情報を交換するように誘導することが可能となる。
【００９６】
図１１は、本発明の一実施形態における、インタラクション方法の例を示したフローチャートである。本実施形態に係るインタラクション方法は、上述したコンピュータ装置２００によって実行されてよい。本実施形態に係るコンピュータ装置２００は、上述したモバイル機器や電子機器１（１１０）に対応してよく、メッセージングサービスを提供するサーバ１５０からネットワーク１７０を介してメッセージングサービスが提供されてよい。例えば、コンピュータ装置２００のプロセッサ２２０は、メモリ２１０が含むオペレーティングシステムのコードと、少なくとも１つのプログラムのコードとによる制御命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行するように実現されてよい。ここで、プロセッサ２２０は、コンピュータ装置２００に記録されたコードが提供する制御命令にしたがってコンピュータ装置２００が図１１のインタラクション方法に含まれる段階１１１０〜１１５０を実行するようにコンピュータ装置２００を制御してよい。
【００９７】
段階１１１０で、コンピュータ装置２００は、メッセージングサービスと連関してモバイル機器においてインストールされて実行されたアプリケーションの制御にしたがい、モバイル機器またはモバイル機器のユーザのうちの少なくとも１つの状況に関する情報を取得してよい。ユーザの状況に関する情報については、図３の第１過程３１０〜第６過程３６０を参照しながら詳しく説明したとおりである。
【００９８】
段階１１２０で、コンピュータ装置２００は、取得された情報に基づいてユーザの状況を決定してよい。例えば、コンピュータ装置２００は、段階１１２０で、入力される情報に基づき、予め設定された状況のうちから１つの状況を決定するように機械学習された分類モデルに取得された情報を入力して決定される状況を、ユーザの状況として決定してよい。このような機械学習された分類モデルについては、確率を使用する分類モデルである単純ベイズ分類と、非確率的分類モデルであるサポートベクターマシン（ＳＶＭ）を参照しながら詳しく説明したとおりである。
【００９９】
段階１１３０で、コンピュータ装置２００は、決定されたユーザの状況に基づき、メッセージングサービスを通じてユーザに提供するための機能を確認してよい。上述した図４〜８の実施形態では、メッセージの受信にともない、通知ウィンドウをユーザに提供する機能について詳しく説明した。例えば、機能は、メッセージングサービスを通じてユーザに受信されたメッセージに対する通知を提供するための機能を含んでよく、ユーザインタフェースは、通知ウィンドウを表示しない構成、通知ウィンドウにメッセージの内容を表示する構成、通知ウィンドウにメッセージの内容および選択インタフェースを提供する構成、および通知ウィンドウにメッセージの内容、選択インタフェース、およびテキスト入力インタフェースを提供する構成を含んでよい。この場合、コンピュータ装置２００は、段階１１３０で、ユーザの機器アクセスの可否、ユーザの機器操作の可否、およびユーザのテキスト入力の可否それぞれに対する組み合わせにより、複数のレベルのうちから１つのレベルを決定してよい。レベルは、実施形態によれば、コンピュータ装置２００と、ネットワーク１７０を介して連結してコンピュータ装置２００にメッセージングサービスを提供するサーバ１５０が、コンピュータ装置２００から受信される情報に基づいて決定してもよい。
【０１００】
段階１１４０で、コンピュータ装置２００は、機能の提供のために提供されるユーザインタフェースの構成を、決定されたユーザの状況に応じて動的に決定してよい。例えば、レベル別に提供されるユーザインタフェースの構成が予め設定されてよく、コンピュータ装置２００は、段階１１３０で決定されたレベル以下のレベルによって提供される構成が含まれたユーザインタフェースにより、機能の提供のためのユーザインタフェースの構成をユーザの状況に応じて動的に決定してよい。
【０１０１】
段階１１５０で、コンピュータ装置２００は、動的に決定された構成のユーザインタフェースで機能を提供してよい。したがって、ユーザには、自身の状況に応じて互いに異なる構成を含むユーザインタフェースが提供され、状況別のユーザインタフェースを利用してメッセージングサービスとインタラクションすることが可能となる。
【０１０２】
図１２は、本発明の一実施形態における、インタラクション方法の他の例を示した図である。本実施形態に係るインタラクション方法は、上述したコンピュータ装置２００によって実行されてよい。本実施形態に係るコンピュータ装置２００は、メッセージングサービスを提供するサーバ１５０に対応してよい。例えば、コンピュータ装置２００のプロセッサ２２０は、メモリ２１０が含むオペレーティングシステムのコードと、少なくとも１つのプログラムのコードとによる制御命令を実行するように実現されてよい。ここで、プロセッサ２２０は、コンピュータ装置２００に記録されたコードが提供する制御命令にしたがってコンピュータ装置２００が図１２のインタラクション方法に含まれる段階１２１０〜１２５０を実行するようにコンピュータ装置２００を制御してよい。
【０１０３】
段階１２１０で、コンピュータ装置２００は、メッセージングサービスを利用する複数の会員それぞれに対し、人的関係が設定された他の会員に対する情報を記録して管理してよい。コンピュータ装置２００は、メッセージングサービスを提供する主体であってよく、したがって、メッセージングサービスで会員同士の人的関係に関する情報を管理してよい。
【０１０４】
段階１２２０で、コンピュータ装置２００は、複数の会員それぞれの状況情報を持続的に収集してよい。例えば、メッセージングサービスの会員のモバイル機器それぞれで図３の第１過程３１０〜第６過程３６０によって提供される情報が、ネットワーク１７０を介してコンピュータ装置２００に収集されてよい。この場合、コンピュータ装置２００は、第７過程３７０を実行することで、収集される情報から会員の状況情報、および／またはレベル（一例として、表１を参照しながら説明した自由度）を決定してよい。実施形態によれば、会員のモバイル機器それぞれで第１過程３１０〜第７過程３７０がすべて実行されてもよい。この場合、コンピュータ装置２００は、モバイル機器それぞれから状況情報および／またはレベルを収集してもよい
段階１２３０で、コンピュータ装置２００は、収集された状況情報を、対応する会員と連携させてデータベースに記録して更新してよい。コンピュータ装置２００は、モバイル機器から状況情報を周期的に収集してデータベースを更新し続けてよい。
【０１０５】
段階１２４０で、コンピュータ装置２００は、複数の会員のうちの第１会員と人的関係が設定された第２会員に関する情報を第１会員に提供する場合、第２会員の状況情報をデータベースから抽出してよい。第１会員と人的関係が設定された他の会員のリストを提供する場合に、コンピュータ装置２００は、他の会員それぞれの状況情報をデータベースから抽出してよい。
【０１０６】
段階１２５０で、コンピュータ装置２００は、抽出された状況情報を、第２会員に関する情報とともに第１会員に提供してよい。上述したように、第１会員と人的関係が設定された他の会員のリストを提供する場合には、コンピュータ装置２００は、抽出された他の会員それぞれの状況情報と対応する他の会員の情報とが連携されたリストを第１会員に提供してよい。
【０１０７】
実施形態によれば、コンピュータ装置２００は、状況情報とともに、または状況情報の代わりに、会話参加可能点数を計算して提供してもよい。例えば、コンピュータ装置２００は、データベースから抽出された状況情報に基づいて第２会員の会話参加可能点数を計算し、計算された会話参加可能点数を、第２会員に関する情報とともに第１会員に提供してよい。上述したように、会話参加可能点数は、第２会員の状況のレベルの値が高いほど、さらに会話セッションを通じて第２会員が送受信したメッセージの数が多いほど、高く計算されてよい。
【０１０８】
他の実施形態として、コンピュータ装置２００は、チャットルームに対する会話参加可能点数を提供してもよい。例えば、コンピュータ装置２００は、第１会員が参加した会話セッションに関する情報を提供する場合、会話セッションに参加した会員それぞれの状況情報をデータベースから抽出し、会話セッションに参加した会員それぞれの状況情報に基づき、会話セッションに対する会話参加可能点数を計算してよい。この場合、コンピュータ装置２００は、計算された会話参加可能点数を、会話セッションに関する情報とともに第１会員に提供してよい。会話参加可能点数は、会話セッションに参加した会員それぞれの状況情報によるレベルが高いほど、さらに会話セッションを通じて送信および／または受信されたメッセージの数が多いほど、高く計算されてよい。また、コンピュータ装置２００は、第１会員が参加した会話セッションそれぞれに対する会話参加可能点数順に第１会員が参加した会話セッションのリストを整列し、整列されたリストを第１会員に提供してもよい。
【０１０９】
また他の実施形態として、コンピュータ装置２００は、メッセージングサービスと連関して第１会員のモバイル機器においてインストールされて実行されるアプリケーションにより、第１会員が第１会員と人的関係が設定された他の会員に状況情報を提供するか否かを、他の会員それぞれに対して設定できるユーザインタフェースを提供してよい。言い換えれば、メッセージングサービスの会員それぞれは、自身の状況情報を友達に表示するか否かを友達それぞれに対して設定してよい。実施形態によれば、状況情報だけでなく、会話参加可能点数を表示するか否かを友達それぞれに対して設定するためのユーザインタフェースが提供されてもよい。
【０１１０】
また他の実施形態として、コンピュータ装置２００は、他の会員のうちの第１会員の状況情報と同じ状況情報を有しているか、または第１会員が予め設定した状況情報を有している第３会員を決定し、第３会員を第１会員に推奨し、推奨された第３会員が選択される場合、第１会員と第３会員とを参加者とする会話セッションを生成してよい。言い換えれば、コンピュータ装置２００は、それぞれの会員に、同じ状況を有する友達や会員が設定した状況を有する友達を推奨してよく、推奨した友達とともにチャットルームを生成する機能を会員に提供してよい。
【０１１１】
さらに他の実施形態として、コンピュータ装置２００は、複数の会員のうちから同じ状況情報を有している会員を選択し、選択された会員同士の匿名の会話セッションを生成してよい。また、コンピュータ装置２００は、第１会員によって設定される状況情報に対応する匿名の会話セッションを検索し、検索された匿名の会話セッションに関する情報を第１会員に提供してよい。このとき、会員の選択や検索には地理的位置がさらに活用されてよい。例えば、同じ地域で同じ状況を有する人同士の匿名チャットルームが生成、検索、および提供されることが可能となる。
【０１１２】
以上のように、本発明の実施形態によれば、モバイル機器によって取得可能な現在情報とここ最近の記録を利用してユーザの現在状況を推定し、推定されたユーザの状況に基づく機器アクセスの可否、機器操作の可否、およびテキスト入力の可否によってユーザの自由度レベルを決定し、決定された自由度レベルによってメッセージングサービスとのインタラクション方式を決定することにより、同じ機能（一例として、通知の提供）を提供する場合であっても、ユーザの状況に応じて互いに異なるユーザインタフェースを提供することができる。
【０１１３】
また、メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、特定のユーザと人的関係が設定された他のユーザの状態情報を該当の特定のユーザに提供することができる。
【０１１４】
また、メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、メッセージングサービスで設定された会話セッションそれぞれの会話参加可能点数に関する情報を提供、および／または表示することができる。
【０１１５】
また、メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、メッセージングサービスにおける会話セッションの参加者の会話集中度に関する情報を提供、および／または表示することができる。
【０１１６】
また、メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、会話セッションの生成時に、ユーザの状況に基づいて会話セッションの参加者を推奨することができる。
【０１１７】
さらに、メッセージングサービスでユーザの状況に関する情報をまとめて管理することにより、匿名による会話セッションをユーザの状況に合わせて検索、生成、および参加することのできる機能を提供することができる。
【０１１８】
上述したシステムまたは装置は、ハードウェア構成要素、ソフトウェア構成要素、またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、例えば、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ、マイクロコンピュータ、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、１つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム（ＯＳ）およびＯＳ上で実行される１つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、１つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および／または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは１つのプロセッサおよび１つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【０１１９】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの１つ以上の組み合わせを含んでよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび／またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、仮想装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、１つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【０１２０】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含んでよい。媒体に記録されるプログラム命令は、実施形態のために特別に設計されたものであってもよいし、コンピュータソフトウェアの当業者に公知された使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスク、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭおよびＤＶＤのような光媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような光磁気媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を記録して実行するように特別に構成されたハードウェア装置が含まれる。このような記録媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段また格納手段であってよく、あるコンピュータシステムに直接接続される媒体に限定されるものではなく、ネットワーク上に分散して存在するものであってもよい。プログラム命令の例には、コンパイラによって生成されるもののような機械語コードだけでなく、インタプリタなどを使用してコンピュータによって実行されることのできる高級言語コードが含まれる。
【０１２１】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【０１２２】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【図１】
2021516474.tif 000013
【図２】
2021516474.tif 000014
【図３】
2021516474.tif 000015
【図４】
2021516474.tif 000016
【図５】
2021516474.tif 000017
【図６】
2021516474.tif 000018
【図７】
2021516474.tif 000019
【図８】
2021516474.tif 000020
【図９】
2021516474.tif 000021
【図１０】
2021516474.tif 000022
【図１１】
2021516474.tif 000023
【図１２】
2021516474.tif 000024
【国際調査報告】
2021516474.tif 000025
2021516474.tif 000026
2021516474.tif 000027
2021516474.tif 000028
2021516474.tif 000029
2021516474.tif 000030