[第1の実施形態]
<概要>
図1は、第1の実施形態に係る情報処理システム1のシステム構成の一例を示す図である。情報処理システム1は、情報処理サーバ10と、複数の端末20(端末20A、端末20B、端末20C)とを有する。情報処理サーバ10と端末20とはネットワーク2を介して接続される。ネットワーク2は、有線のネットワークと、無線のネットワークとを含む。
端末20は、スマートフォン、タブレット端末、PC(Personal Computer)、携帯電話機、ゲーム用コンソール、タッチパッド、電子書籍リーダ、又はウェアラブル端末等である。
情報処理サーバ10は、端末20のユーザにSNS(Social Network Service、ソーシャルネットワークサービス)を提供する。端末20のユーザは、端末20にSNSのアプリケーションをインストールし、情報処理サーバ10に接続することにより、情報処理サーバ10からSNSサービスの提供を受けることができる。
なお、以下の実施形態については、ソーシャルネットワークサービスにおける表示制御方法を中心に説明するが、時系列でユーザ情報を表示する表示制御方法で適用可能である。例えば、インターネット上の各種ホームページ等における、ユーザ名及びコメントの表示に適用することも可能である。
端末20は、ウェブブラウザ等を用いて、情報処理サーバ10に接続し、SNSサービスの提供を受けてもよい。
情報処理サーバ10は、例えばSNSサービスのユーザ間のメッセージ40の交換サービス(チャットサービス)、及びタイムラインサービス等を提供する。
図2は第1の実施形態に係る情報処理システム1のユーザの端末20の表示画面の一例を示す図である。
図2は、ユーザAが、端末20Aを用いて情報処理サーバ10により提供されるチャットサービスを使用しているときのユーザAの端末20Aの表示画面を示している。
図2の(1)は、Group#1に属する、ユーザA、ユーザB、及びユーザCとの間でチャットのメッセージ40が交換されているときのデフォルト表示である。それぞれのユーザのメッセージ40が、それぞれのユーザを表わすアイコン30と共に表示される。メッセージ40は時系列に沿って、画面の上から下に、順番に表示される。
ユーザA自身が、端末20Aにより送信したメッセージ40は、例えば、端末20Aの右側の表示領域50Bに表示される。チャットの相手であるユーザB、及びユーザCからのメッセージ40は、例えば、ユーザAの端末20Aの左側の表示領域50Aに表示される。
第1の実施形態の特徴として、端末20はユーザの指示に応じて、ユーザ毎のメッセージ40の表示領域50を変更することが可能である。
図2の(2)は、端末20AのユーザAによって、ユーザBのアイコン30Cへの操作が、実行される様子を示す図である。アイコン30Cが選択された後、ユーザBのメッセージ40の表示領域50を、表示領域50Aから、表示領域50Bに変更するための操作を、端末20Aは、ユーザAから受け付ける。図2の(2)では、ユーザBのアイコン30Cが表示領域50Bの方向にスワイプされることにより、表示領域50が変更される例を示している。
図2の(3)は、ユーザAからの操作を受けて、ユーザBのアイコン30Cと、アイコンCに対応付けられているメッセージ40Cが、表示領域50Bに表示される様子を示している。この表示領域50の変更後は、ユーザBのメッセージ40は表示領域50Bに表示される。
以上のように、第1の実施形態に係る表示領域50の変更方法によれば、ユーザ毎のメッセージ40等の表示領域50を端末20のユーザが選択することができる。
これにより、端末20のユーザは、チャットサービスに参加するグループの人数、及びチャットに参加しているユーザのメッセージ40の量等を考慮して、各ユーザのメッセージ40の表示領域50を変更可能である。
図2の例では、表示領域50の変更指示を受けたアイコン30C以降のユーザBのアイコン30及びメッセージ40の表示領域50が変更される場合について説明したが、変更指示を受ける前のユーザBのメッセージ40等を一括して、表示領域50Bに変更してもよい。また、端末20AのユーザA自身の表示領域50を変更してもよいことは勿論である。
ユーザA自身の表示領域50が変更されると、ユーザA自身のメッセージ等を識別し難くなるおそれがある。このため、表示部220は、メッセージ等のユーザAの情報をハイライト、背景色の変更、又は背景のグラデーションの設定等により、識別しやすいように表示してもよい。
端末20Aが、ユーザAから表示領域50の選択を受け付け(例えばタップ操作を受け付け)、所定時間内に入力画面が起動され、その後、端末20Aからメッセージが送信された場合、選択された表示領域50をユーザAの情報を表示する表示領域としてもよい。
また、端末20Aが、入力画面の起動を受け付け、所定時間内にユーザAから表示領域50の選択を受け付け(例えばタップ操作を受け付け)、その後、端末20Aからメッセージが送信された場合、選択された表示領域50をユーザAの情報を表示する表示領域としてもよい。
アイコン30が選択される例について説明したが、画面に表示されたアイコン30以外のユーザの情報の選択、及び変更の指示を受け付けることに応じて、ユーザの情報の表示領域50を変更してもよい。例えば、ユーザのメッセージ40が選択されてもよい。
ユーザAからのアイコン30等への操作は、アイコン30等への表示領域50の変更の指示であり、操作はスワイプに限定されないことは勿論である。スワイプの操作、はじく操作、長押しの操作、ドラッグの操作、タップの操作、又はこれらの操作の組み合わせにより、アイコン30やメッセージ40等のユーザの情報の表示領域50が変更されてもよい。なお、ユーザの情報は、ユーザ情報と呼ばれてもよい。
<ハードウェア構成>
次に、情報処理システム1に含まれる各装置のハードウェア構成について説明する。
(1)情報処理サーバ
情報処理サーバ10は、一般的なコンピュータの構成有している。
図3は、第1の実施形態に係るコンピュータのハードウェア構成の一例を示す図である。図3において、コンピュータ300は、例えば、CPU(Central Processing Unit)301、RAM(Random Access Memory)302、ROM(Read Only Memory)303、ストレージ装置304、入力装置305、表示装置306、通信I/F(Interface)307、外部I/F308、及びバス309等を有する。
CPU301は、ROM303やストレージ装置304等のメモリからプログラムやデータをRAM302上に読み出し、処理を実行することで、コンピュータ300の制御や機能を実現する演算装置である。ROM303は、コンピュータ300の起動時に実行されるBIOS(Basic Input/Output System)、OS(Operating System)の設定、及び各種設定等のプログラムやデータが格納されている。RAM302は、プログラムやデータを一時保持する揮発性のメモリである。ストレージ装置304は、プログラムやデータを格納している大容量の記憶装置である。
入力装置305は、例えばキーボードやマウス等であり、ユーザが各種操作信号を入力するのに用いられる。表示装置306は、例えばディスプレイ等であり、コンピュータ300による処理結果を表示する。なお、入力装置305又は/及び表示装置306は、必要なときに接続して利用する形態であってもよい。
通信I/F307は、コンピュータ300をネットワーク2に接続するためのインタフェースである。外部I/F308は、外部装置とのインタフェースである。外部装置には、外部記憶媒体308a等がある。これにより、コンピュータ300は外部I/F308を介して外部記憶媒体308aの読み取り及び/又は書き込みを行うことができる。外部記憶媒体308aには例えば、各種の光学ディスクや、各種のメモリカード等が含まれる。
CPU301が、ROM303等に格納されているプログラムを実行することにより、情報処理サーバ10の各機能を実現することができる。
(2)端末
図4は、第1の実施形態における端末20のハードウェア構成の一例を示す図である。
端末20は、CPU201、ROM202、RAM203、記憶装置204、入出力装置205、通信I/F206及びディスプレイ207(表示装置)を備える。なお、端末20のハードウェアの各構成要素は、バス208を介して相互に接続される。
記憶装置204は各種プログラムを記憶する。CPU201は、記憶装置204に記憶された各種プログラムを実行するコンピュータである。
ROM202は不揮発性メモリである。ROM202は、記憶装置204に記憶された各種プログラムをCPU201が実行するために必要な各種プログラムやデータ等を記憶する。
RAM203は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等の主記憶装置である。RAM203は、各種プログラムがCPU201によって実行される際に展開される作業領域として機能する。
入出力装置205は、端末20に対する各種指示を入力する入力装置、及び端末20で処理された処理結果を出力する出力装置の機能を含む。入出力装置205は、ディスプレイ207に接続される。本実施形態において、ディスプレイ207は、タッチ反応型ディスプレイ(タッチパネル)とすることができる。通信I/F206は、ネットワーク2を介して端末20と情報処理サーバ10との通信を行う。
CPU201が、記憶装置204等に格納されているプログラムを実行することにより、端末20の各機能を実現することができる。
<機能構成>
図5を用いて、第1の実施形態に係る情報処理サーバ10、及び端末20の機能構成を説明する。図5は、第1の実施形態に係る情報処理サーバ10、及び端末20の機能構成の一例を示す図である。
(1)情報処理サーバ
情報処理サーバ10は、通信部110、制御部120、情報記憶部130、及び入出力部140を有する。
情報処理サーバ10の各機能は、以下のように連携する。通信部110は、ユーザAの端末20Aから、ユーザBの情報であって、端末20Aの表示領域50Aに表示されている第1の情報を、表示領域50Bに移動させる旨の通知を、受信する。制御部120は、第1の情報より後に、端末20Aに受信されるユーザBの情報である第2の情報を表示領域50Bに、表示させる。
具体的には、各機能は以下の機能を有する。
通信部110は、制御部120の指示に基づいて、ユーザの端末20に、各種信号を送信する。ユーザの端末20への各種信号とは、SNSサービスを提供するための制御信号、サービスの各種通知、他のユーザからのメッセージ40、他のユーザによるタイムラインへの投稿60の通知等である。また、通信部110は、ユーザの端末20から、SNSサービスに関する各種信号を受信し、受信した信号を制御部120に通知する。ユーザの端末20からの各種信号とは、他のユーザへのメッセージ40、タイムラインへの投稿60、及び情報処理サーバ10への設定変更の要求等である。
制御部120は、通信部110を介して、ユーザの端末20に対して各種制御を行う。制御部120は、通信部110を介して、ユーザAの端末20Aから、ユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bに変更する要求を受け付ける。かかる要求に応じて、制御部120は、情報記憶部130に、ユーザBの情報の表示領域50を表示領域50Bとして記憶することを指示する。
ユーザBからユーザAへ送信すべき、新たなユーザBの情報を受信した場合、制御部120は、ユーザBの情報の表示領域50を表示領域50Bと設定する。表示領域50の設定を行った後、制御部120は、通信部110を介して、ユーザBの情報をユーザAの端末20Aに送信する。
ユーザBの情報とは、SNSにおけるチャットのメッセージ40、メッセージ40の送信元を表すアイコン30、SNSにおけるタイムラインへの投稿60、及び投稿元を表すアイコン30等である。
制御部120は、3人以上のユーザがチャットのメッセージ40の送受信をするときに、該メッセージ40の表示領域50の表示制御を行ってもよい。
例えば、端末20AのユーザA、端末20BのユーザB、及び端末20CのユーザCとの間でメッセージ40の交換を行っている場合において、ユーザBのメッセージ40を表示領域50Bに設定する旨の指示を、ユーザAの端末20Aから情報処理サーバ10が受信した場合について説明する。この場合、ユーザBからユーザA、及びユーザCへのメッセージ40を受信したときに、制御部120は、かかるメッセージ40のユーザAの端末20Aにおける表示領域50を表示領域50Bに設定すると共に、ユーザCの端末20Cにおける表示領域50を表示領域50Bに設定してもよい。ここで、表示領域50Aは、画面の左側の領域で、表示領域50Bは画面の右側の領域であってもよい。
制御部120は、全てのユーザを一つの表示領域50に表示する指示を、端末20から受信した場合、各ユーザの情報をデフォルトの表示領域50に戻すように、通信部110を介して、端末20に指示してもよい。1つの表示領域50にユーザの情報が偏ると、ユーザの情報を閲覧し難くなるためである。ここでデフォルトの表示領域50とは、例えば、端末20のユーザの情報が右側の表示領域50Bに表示され、端末20のユーザ以外のユーザである他のユーザの情報が左側の表示領域50Aに表示されることである。
情報記憶部130は、情報処理サーバ10に提供するための各種情報を記憶する。例えば、ユーザの投稿60、及びユーザに送受信されるメッセージ40等の情報をユーザ毎に記憶する。
また、情報記憶部130は、制御部120からの指示に従って、ユーザの情報の表示領域50に関する情報を記憶する。
入出力部140は、情報処理サーバ10への各種入力を受け付けると共に、情報処理サーバ10の管理者に各種情報を表示する。
(2)端末
端末20は、通信部210、表示部220、入力部230、制御部240、及び情報記憶部250を有する。
端末20の各機能は以下のように連携する。表示部220は、ユーザの情報を表示する表示領域50Aと、表示領域50Bとを生成する。入力部230は、ユーザBの情報であって、表示領域50Aに表示されている第1の情報を、表示領域50Bに移動させる指示を受け付ける。
表示部220は、第1の情報を表示領域50Bに表示させると共に、第1の情報より後に、受信したユーザBの情報である第2の情報を表示領域50Bに表示させる。
通信部210は、情報処理サーバ10との間で、各種信号の送受信を行う。通信部210は、制御部240の指示に基づいて、メッセージ40、及び端末20のユーザからの投稿60等を情報処理サーバ10に送信する。また、通信部210は、制御部240の指示に基づいて、メッセージ40の表示領域50の設定に関する要求を送信してもよい。
表示部220は、表示領域50A及び表示領域50Bを生成し、制御部240の指示に基づいて、設定されている表示領域50にユーザの情報を表示する。
また、表示部220は、制御部240の指示に基づいて、ユーザの情報が設定されている表示領域50を変更する。例えば、制御部240からの指示に基づいて、表示部220は、ユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bに変更する。
入力部230は、端末20のユーザから各種操作を受け付ける。入力部230は、表示部220に表示されているユーザの情報の選択と、選択されたユーザの情報の表示領域50の変更の指示を受け付け、制御部240にかかる指示を通知する。
なお、ユーザの情報の選択と変更の指示は様々な方法で実現可能である。ここでは、表示部220がディスプレイにより形成され、入力部230が、ディスプレイと同じ領域に形成されているタッチパネルの場合について説明する。入力部230は、ディスプレイに表示されているユーザの情報の選択、例えばタッチ操作と、タッチ操作により選択されたユーザの情報への所定の操作とを基に、ユーザの情報の表示領域50の変更の指示を受け付けたと判断する。
ここで、例えば、ユーザの情報とは、端末20のユーザ、及び端末20のユーザと関連するユーザの情報であって、ユーザのアイコン30、メッセージ40、及び投稿60等である。
また、表示領域50の変更に加えて、ユーザの情報が選択され所定の操作が実行された場合、入力部230は、選択されたユーザに関する処理が入力されたと判断してもよい。選択されたユーザに関する処理とは、例えば、選択されたユーザへの1対1のメッセージ40の送信、選択されたユーザのチャットグループからの脱退の処理等である。
制御部240は、端末20の各機能に対して各種制御を行う。制御部240は、メッセージ40、及び端末20のユーザからの投稿60等を情報処理サーバ10に送信することを、通信部210に指示する。また、制御部240は、通信部210を介して、メッセージ40の表示領域50の設定に関する要求を送信してもよい。
制御部240は、入力部230が受けたユーザからの指示に基づいて決定された表示領域50に、ユーザの情報を表示するように、表示部220に指示する。
制御部240は、入力部230から受けたユーザの情報の表示領域50に関する情報を、記憶するように情報記憶部250に指示する。新たなユーザの情報を受信した場合、制御部240は、情報記憶部250を参照し、新たなユーザの情報を表示する表示領域50を特定する。
全てのユーザを一つの表示領域50に表示する指示を、入力部230が端末20のユーザから受信した場合、つまり、他の表示領域50に表示されるユーザの情報が存在しなくなる場合、制御部240は、各ユーザの情報をデフォルトの表示領域50に戻すように、表示部220に指示してもよい。1つの表示領域50にユーザの情報が偏ると、ユーザの情報を閲覧し難くなるためである。
また、入力部230が受け付けたユーザの情報に対する操作に応じて、制御部240は、選択されたユーザに関連する処理を実行する。
情報記憶部250は、端末20のユーザの各種情報を記憶する。また、情報記憶部250は、制御部240の指示に基づいて、ユーザの情報の表示領域50を、ユーザ毎に記憶する。
なお、上述した機能構成の説明において、情報処理サーバ10及び端末20の両方が具備している機能については、情報処理サーバ10又は端末20のいずれかの機能を用いて実現すればよい。
<表示領域の設定>
図6及び図7を用いて、ユーザから受け付けた表示領域50に、ユーザの情報を表示するように設定する動作について説明する。
(1)情報処理サーバによる設定
図6は、第1の実施形態に係る情報処理サーバ10による表示領域50の設定の一例を示す図である。
情報記憶部130は、図6に示すようにGroup#1に属するユーザA、ユーザB、ユーザCの各々について、ユーザの情報と、表示領域50とを対応付けて記憶している。ユーザの端末20から、ユーザの情報の表示領域50の変更要求を受信しない場合、情報記憶部130は、デフォルトの設定で、ユーザの情報と、表示領域50とを記憶する。
情報処理サーバ10の制御部120は、端末20からユーザの情報を表示する表示領域50の変更要求を受け付ける。かかる変更要求を受け付けると、制御部120は、ユーザの情報を表示する領域を、変更するように情報記憶部130に指示する。
図6では、情報処理サーバ10の制御部120は、ユーザAの端末20Aから、Group#1に属するユーザBの情報の表示領域50を、表示領域50Bに変更する変更要求を受け付ける。かかる変更要求の受け付けに応じて、制御部120は、ユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bとするように、情報記憶部130に指示する。
情報記憶部130は、ユーザの情報を表示する領域の変更を記憶すると共に、制御部120から指示を受けた時間を記憶してもよい。
端末20Aからの変更要求に、Group#1に属する全てのユーザの端末20において、ユーザBの情報の表示を表示領域50Aから表示領域50Bに変更する旨が含まれている場合、制御部120は、Group#1に属するユーザBの端末20Bを除く全ての端末20において、ユーザBの表示を表示領域50Aから表示領域50Bに変更するように、情報記憶部130に指示する。図6では、ユーザAとユーザCの端末20において、ユーザBの情報が表示領域50Bに表示されるように変更される様子を示している。つまり、ユーザAの端末20Aからの変更要求に連動して、ユーザCの端末20CにおけるユーザBの情報の表示領域50が変更される。
ユーザBの情報が表示領域50Bに表示されるように変更された後、情報処理サーバ10がユーザBの端末20BからユーザA及びユーザC宛のメッセージ40を受信すると(図6の(1))、情報処理サーバ10の制御部120は、情報記憶部130を参照し、ユーザBの情報が表示領域50Bに表示されるように設定されていることを確認する。制御部120は、受信したメッセージ40の表示領域50が、「表示領域50B」であることを示す情報要素をメッセージ40に設定する(図6の(2))。
ユーザAの端末20AとユーザCの端末20Cは、メッセージ40の表示領域50が、「表示領域50B」であることを示す情報要素を含むメッセージ40を受信し、メッセージ40を各々の端末20の表示領域50Bに表示する(図6の(3)、(4))。
(2)端末による設定
情報処理サーバ10による表示領域50の設定方法について説明したが、端末20により表示領域50の設定が行われてもよい。
図7は、第1の実施形態に係る端末20による表示領域50の設定の一例を示す図である。
ユーザAの端末20Aの情報記憶部250は、図7に示すようにGroup#1に属するユーザA、ユーザB、ユーザCの各々について、ユーザの情報と、表示領域50とを対応付けて記憶している。入力部230がユーザから、ユーザの情報の表示領域50の変更の指示を受け付けていない場合、情報記憶部250は、デフォルトの設定で、ユーザの情報と、表示領域50とを記憶する。
情報記憶部250は、Groupの識別子(Group#1)、Groupに属するユーザの識別子(ユーザA、ユーザB、ユーザC)、及び各々のユーザの表示領域に加えて、表示領域の変更の指示を受け付けた時間と、変更を受け付けたユーザの情報(例えば、メッセージ)とを対応付けて記憶してもよい。
入力部230がユーザから表示領域50の変更の指示を受け付けた場合、ユーザAの端末20Aの制御部240は、情報記憶部250にかかる指示を記憶させる。
図7の例では、入力部230がユーザAからの指示を受けたことに応じて、端末20Aの制御部240は、ユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bに変更す様子を示している。
図7の(1)は、端末20Aが、ユーザBからのメッセージ40を、情報処理サーバ10を介して受信する様子を示している。かかるメッセージ40には表示領域50を示す情報要素は設定されていない。
メッセージ40を受信すると、制御部240は、情報記憶部250を参照して、ユーザBの情報を表示する表示領域50が、表示領域50Bであることを確認する(図7の(2))。
制御部240は、表示部220に、受信したユーザBからのメッセージ40を表示領域50Bに表示することを指示する。
<動作手順>
(1)動作シーケンス
図8は、第1の実施形態に係る動作シーケンスの一例を示す図(その1)である。図8は、端末20で、ユーザの情報の表示位置を変更する制御を行う場合の動作シーケンスを示している。
ステップS801で、端末20Aの入力部230は、ユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bに変更する指示をユーザAから受け付ける。かかる指示は、表示部220に表示されているユーザBのアイコン30を選択し、所定の操作をすることにより実行される。なお、かかる指示は、表示部220に表示されているユーザBのメッセージ40を選択し、所定の操作をすることにより実行されてもよい。
ステップS802で、入力部230は、ユーザBの表示領域50を、表示領域50Aから、表示領域50Bに変更する指示を受け付けたことを、制御部240に通知する。かかる通知には、1以上のユーザBのアイコン30のうちのいずれのアイコン30が選択されたかを示す情報を含む。
ステップS803で、制御部240は、選択されたユーザBのアイコン30と、かかるアイコン30に付随するメッセージ40等の情報の表示領域50を、表示領域50Aから表示領域50Bに変更することを、表示部220に指示する。
表示部220には、アイコン30、及びメッセージ40等のユーザの情報が時系列に沿って表示されている。制御部240は、選択されたユーザBのアイコン30以降に、表示されるユーザBの情報の表示領域50を、表示領域50Aから表示領域50Bに変更するように表示部220に指示する。
ステップS804で、制御部240は、記憶されているユーザBの表示領域50を、表示領域50Aから表示領域50Bに変更するように、情報記憶部250に指示する。
ステップS805で、端末20Aの通信部210は、情報処理サーバ10を介して、ユーザBからのメッセージ40を受信する。
ステップS806で、通信部210は、制御部240にユーザBからのメッセージ40を受信したことを通知する。
ステップS807で、制御部240は、情報記憶部250を参照してユーザBのメッセージ40の表示領域50が、表示領域50Bであることを特定する。
ステップS808で、制御部240は、表示部220に、ユーザBのメッセージ40と、メッセージ40に対応するアイコン30とを、表示領域50Bに表示することを指示する。
上述したように、ユーザBの情報が選択され、選択されたユーザBの表示領域50が、表示領域50Bに変更された場合、以後のユーザBの情報は表示領域50Bに表示される。
なお、ステップS801では、端末20Aは、ユーザAからの指示を受けて表示領域50の変更を行っているが、情報処理サーバ10からの指示を受けて表示領域50を変更してもよい。かかる、指示は、他の端末20の操作に応じて、情報処理サーバ10から送信されてもよい。例えば、同じグループに属するユーザの端末20の表示を統一する場合に、情報処理サーバ10からの指示を受けて表示領域50を変更してもよい。
図9は、第1の実施形態に係る動作シーケンスの一例を示す図(その2)である。図9は、端末20と、情報処理サーバ10とで連携して表示位置を変更する制御を行う場合の動作シーケンスを示している。
図9のシーケンスの場合も、まずステップS801乃至ステップS803と同様の処理が実行され、ユーザBの情報の表示領域50が、表示領域50Aから表示領域50Bに変更される。
ステップS901で、端末20Aの制御部240は、通信部210を介して、ユーザBの表示領域50が変更になった旨の通知を送信する。かかる通知にはユーザBの情報の表示領域50が、表示領域50Aから表示領域50Bに変更になった旨を含む。
ステップS902で、情報処理サーバ10の通信部110は、端末20AからユーザBの表示領域50が変更になった旨の通知を、制御部120に通知する。制御部120は、表示領域50の変更を記憶することを、情報記憶部130に指示する。
ステップS903で、情報記憶部130は、ユーザBの情報の表示領域50が、表示領域50Aから表示領域50Bに変更になったことを記憶する。
ステップS904で、通信部110が、ユーザBの端末20Bから、ユーザA及びユーザC宛のメッセージ40を受信する。
ステップS905で、通信部110は、ユーザBからメッセージ40を受信した旨を、制御部120に通知する。
ステップS906で、制御部120は、情報記憶部130を参照し、ユーザBからのメッセージ40をユーザAの端末20Aで表示する表示領域50が、表示領域50Bであることを特定する。
ステップS907で、制御部120は、ユーザBからのメッセージ40に対して表示領域50の設定を行う。制御部120は、表示領域50Bに表示する旨の情報要素をメッセージ40に設定する。
ステップS908で、制御部120は、設定の処理が完了したユーザBからのメッセージ40を、ユーザAの端末20Aに送信することを、通信部110に指示する。
ステップS909で、通信部110は、ユーザBからのメッセージ40を端末20Aに送信する。
ステップS910で、端末20Aの通信部210は、制御部240にユーザBからのメッセージ40を受信したことを通知する。
ステップS911で、制御部240は、ユーザBからのメッセージ40の表示領域50に関する設定を確認し、メッセージ40の表示領域50が、表示領域50Bであることを特定する。制御部240は、ユーザBからのメッセージ40をユーザBのアイコン30と共に、表示領域50Bに表示することを、表示部220に指示する。
ステップ912で、制御部120は、情報記憶部130を参照し、ユーザBからのメッセージ40をユーザCの端末20Cで表示する表示領域50を確認する。例えば、ステップS901で、ユーザAの端末20Aから受信した通知に応じて、ユーザCの端末20Cで、ユーザBの情報を表示する表示領域50が、表示領域50Aから表示領域50Bに変更されている場合、端末20Cで、ユーザBのメッセージ40を表示する表示領域50は、表示領域50Bと記憶されている。
ここでは、ユーザCの端末20CでユーザBからのメッセージ40を表示する表示領域50は、表示領域50Bと記憶されているものとして説明を進める。
ステップS913で、制御部120は、ユーザBからのメッセージ40に対して表示領域50の設定を行う。
ステップS914で、制御部120は、設定の処理が完了したユーザBからのメッセージ40をユーザCの端末20Cに送信することを、通信部110に指示する。
ステップS915で、通信部110は、ユーザBからのメッセージ40を、ユーザCの端末20Cに送信する。メッセージ40を受信すると、ユーザCの端末20Cは、かかるメッセージ40を、端末20Cの表示領域50Bに表示する。
(2)フローチャート
図10は、第1の実施形態に係る端末20の処理に関するフローチャートの一例を示す図である。
ステップS1001で、端末20の入力部230は、表示部220に表示されているユーザの情報を所定の領域に動かす動作が検出されたか否かを判断する。ここで、「ユーザ」とは、端末20のユーザ、及び端末20のユーザとSNSで関連のあるユーザである。また、「ユーザの情報」とは、これらのユーザのアイコン30、メッセージ40、SNSへの投稿60等である。
動作が検出されたと判断された場合(ステップS1001 YES)、ステップS1002に進む。一方、動作が検出されたと判断できなかった場合(ステップS1001 NO)、引き続き、動作が検出されるか否かの判断を行う。
ステップS1002で、端末20の入力部230は、検出された動作が表示領域50の変更か否かを判断する。表示領域50の変更の場合(ステップS1002 YES)、ステップS1003に進む。一方、表示領域50の変更の場合でない場合(ステップS1002 NO)、ステップS1004に進む。
入力部230は、所定の操作をユーザから受け付けた場合、表示領域50の変更と判断してよい。ここで、所定の操作は、SNSのアプリケーション等に予め設定可能であり、例えば、選択したユーザの情報に対して、変更先の表示領域50の方向へ所定の距離以上スクロールすること、はじく操作をすること、所定の速度で複数回選択すること等が想定されるが、これらの操作に限られないのは勿論である。
ステップS1003で、制御部240は、ユーザの情報の表示領域50を変更する処理を行い、表示部220に表示領域50の変更を指示する。
ステップS1004で、端末20の入力部230は、検出された動作がSNSのアプリケーションに対する処理の開始の指示か否かを判断する。
例えば、ユーザの情報を選択して所定の操作がされた場合、入力部230は、選択されたユーザに関する処理の開始の指示が入力されたと判断してもよい。ユーザに関する処理とは、例えば、選択されたユーザへの1対1のメッセージ40の送信、選択されたユーザのチャットグループからの脱退の処理等である。
ユーザの情報を表示部220の外側に移動させる動作を入力部230が検知した場合、入力部230は、選択されたユーザをチャットグループから脱退させる処理の開始の指示を受け付けたと判断してもよい。例えば、入力部230が、ユーザの情報が表示部220の外縁に到達したことを検知した場合、入力部230は、選択されたユーザをチャットグループから脱退させる処理の開始の指示を受け付けたと判断してもよい。
また、例えば、ユーザの情報を、表示部220の所定の方向に移動させる動作、又は所定のアイコン30に重ねる動作を検知した場合、入力部230は、選択されたユーザに1対1のメッセージ40を送信するための処理の開始の指示を受け付けたと判断してもよい。
処理の開始の指示と判断された場合(ステップS1004 YES)、ステップS1005に進む。処理の開始の指示と判断されなかった場合(ステップS1004 NO)、処理を終了する。
ステップS1005で、制御部240は入力部230が受け付けた処理を実行する。
<表示の変形例>
(1)タイムラインサービスにおける表示領域の変更
図11及び図12は、第1の実施形態に係るタイムラインサービスにおける表示領域50の変更時の表示画面の遷移の一例を示す図である。
タイムラインサービスにおいても、チャットサービスと同様に、ユーザの情報の表示位置を変更可能である。タイムラインサービスとは、SNSサービスのユーザ毎に設けられた掲示板(ウォール)に、ユーザ自身、及びかかるユーザと関連するユーザ等による投稿60を受け付け、投稿60を時系列に沿って表示するサービスである。
図11の(1)は、端末20のタイムラインの表示画面の一例を示す図である。端末20のユーザ及び、ユーザに関連するユーザの投稿60が時系列に沿って、最新の投稿60から順番に表示される。
図11の(2)では、アイコン30Aが選択され、表示領域50Bの方向にスワイプされる様子を示している。
この場合も、チャットサービスと同様に、ユーザの操作に応じて選択されたアイコン30A、及びアイコン30Aに対応する投稿60Aの表示領域50が、表示領域50Aから表示領域50Bに変更される。
図11の(3)に、変更後の画面表示の例を示す。アイコン30Aと投稿60Aとが表示領域50Bに表示される。なお、ユーザの情報の一部が、表示領域50Aからはみ出してもよい。
図12は、タイムラインサービスの表示画面の別の例を示している。投稿60に付随するコメント70についても同様に、表示領域50の変更が可能である。
図12の(1)では、ユーザ及びユーザに関連するユーザの投稿60が時系列に沿って表示され、投稿60に付随するコメント70が投稿60の下に表示される様子を示している。
図12の(2)では、アイコン30Bが選択され、表示領域50Bの方向にスワイプされる様子を示している。
この場合も、ユーザの操作に応じて選択されたアイコン30B、及びアイコン30Bに対応するコメント70Aの表示領域50が、表示領域50Aから表示領域50Bに変更される。
図12の(3)に、変更後の画面表示の例を示す。アイコン30Bとコメント70とが表示領域50Bに変更される。
(2)処理の起動
図13及び図14は、端末20によるSNS利用中に行われる処理起動時の表示画面の一例を示す図である。
端末20の入力部230が、ユーザの情報が選択され、選択されたユーザの情報に所定の操作が実行されたと判断した場合(図10のステップS1001、ステップS1004)、制御部240は選択されたユーザに対する所定の処理を実行してもよい。
図13は、端末20のユーザの操作を受け付け1対1のメッセージ40の作成処理を起動する様子を示している。図13の(1)では、ユーザBを表すアイコン30Cが選択され、表示画面の下方向にスワイプされる様子を示している。
アイコン30Cに対する下方向へのスワイプ操作に応じて、制御部240は、1対1のメッセージ40の作成処理を起動する。具体的には、図13の(2)に示すように、宛先を示す「To」にユーザBが設定され、キーボードが表示画面に表示される。
送信されるメッセージはユーザBとの一対一のトークルームに送信されてもよいし、チャットグループに送信してユーザBだけが閲覧できるようにしてもよい。
図14は、端末20のユーザの操作を受け付けチャットグループからユーザBを退出させる処理を起動する様子を示している。図14の(1)では、ユーザBのアイコン30Cが選択され、表示画面の外方向にスワイプされる様子を示している。入力部230は、ユーザの情報へのスワイプ操作により、ユーザの情報が表示部220の外縁に到達したことを検知し、選択されたユーザをチャットグループから脱退させる処理の開始の指示を受け付けたと判断する。
アイコン30Cに対する外方向へのスワイプ操作に応じて、制御部240は、ユーザBをチャットのグループであるGroup#1から退出させる処理を起動する。具体的には、図14の(2)に示すように、表示画面に、「ユーザBをGroup#1から退出させてよいか」確認を促すメッセージが表示される。
(3)デフォルト表示への変更
図15は、第1の実施形態に係る端末20におけるデフォルト表示への表示画面の遷移の一例を示す図である。
ユーザの情報の表示領域50を変更することにより、全てのユーザの情報が一つの表示領域50に表示される場合、ユーザの情報を確認し難くなるおそれがある。このため、全てのユーザの情報が一つの表示領域50に表示されるような操作を、入力部230が受け付けた場合、制御部240は、表示部220にデフォルトの表示に戻すように指示してもよい。
図15の(1)は、Group#1に属するユーザA、ユーザB、及びユーザCとの間でチャットサービスが使用されているときに、表示領域50AにユーザCの情報が表示され、表示領域50BにユーザA及びユーザBの情報が表示されている様子を示している。
図15の(2)は、ユーザBのアイコン30Bが選択され、表示領域50Bの方向にスワイプされる様子を示している。かかる操作は、ユーザBの表示領域50を、表示領域50Bに変更するための操作である。
この操作を受け付けると、全てのユーザの情報が表示領域50Bに表示されることになるため、制御部240は、表示部220にデフォルトの表示に戻してよいか確認する画面を表示させる。
入力部230が、デフォルトの表示に戻してよい旨の指示を受け付けると、制御部240は、デフォルトの表示に戻すように、表示部220に指示する。
図15の(4)は、デフォルトの表示を示している。端末20のユーザAの情報が右側に表示され、その他のユーザ(ユーザB、ユーザC)の表示が左側に表示される。
(4)表示領域の設定例(その他)
上述した実施形態においては、2つの表示領域50にユーザの情報が表示される例について説明したが、表示画面上に、3つ以上の表示領域50が設定されてもよい。
図16は、第1の実施形態に係る端末20の表示画面の一例(その1)を示す図である。表示画面に3つの表示領域50が設定され、各々の表示領域50に、ユーザのアイコン30とメッセージ40が表示されている。表示領域50のサイズや幅は、等分に設定されても良いし、表示領域50に表示されるユーザの情報の量、及び表示領域50に設定されているユーザの数等に応じて調整されてもよい。
なお、表示領域50の境界線は、ユーザから認識されないように表示されることが想定されているが、表示部220は、表示領域の区切り線を表示してもよい。また、表示部220は、表示領域50毎に背景色の設定、又は背景のグラデーション設定等を行ってもよい。これにより、ユーザは、各表示領域50を認識することが可能となる。
また、表示領域50の表示画面に占める割合は、端末20がユーザの指示を受け付け、適宜変更することが可能である。図17は、第1の実施形態に係る端末20の表示画面の一例(その2)を示す図である。図17の例では、表示領域50Aと、表示領域50Bとの表示面積の割合が略7対3となっている。これにより、各表示領域50に表示されるユーザの情報の数、及びメッセージ40の数等を基に、表示領域50の表示画面に占める割合を設定することが可能となる。
上述した、端末20の表示の例では、選択されたユーザのアイコン30に加えて、アイコン30に対応するメッセージ40、又は投稿60の表示領域50が変更される場合について説明したが、選択されたユーザのアイコン30の表示領域50のみが変更されてもよいし、対応するメッセージ40、又は投稿60の表示領域50のみが変更されてもよい。
入力部230が、同一の表示領域50にユーザの情報を表示するユーザに関する設定を受け付け、情報記憶部250に記憶させてもよい。例えば、入力部230は、ユーザAとユーザBのユーザの情報を表示する表示領域50を表示領域50Aにする設定を受け付け、情報記憶部250に記憶させる。制御部240は、ユーザAとユーザBのユーザの情報を表示領域50Aに表示するように、表示部220を制御する。なお、入力部230が、ユーザA、又はユーザBのいずれかへの表示領域50の変更を受け付けたことに応じて、制御部240は、ユーザAとユーザBを同一の表示領域50に表示する設定を解除してもよい。
上述した実施形態によれば、ユーザの指示に応じて、ユーザの情報の表示領域50を柔軟に変更することが可能となり、端末20のユーザは、多数のメッセージ40、及び投稿60等の中から、必要な情報を容易に確認できる。
なお、ソーシャルネットワークサービス以外でも、端末20上に時系列でユーザ情報が表示される場合において、上述した表示制御方法を適用可能である。
例えば、映像配信サイトやニュースサイトで、ユーザ名とコメントとが表示される場合において、上述した表示制御方法を適用可能である。
[第2の実施形態]
次に、第2の実施形態について説明する。第2の実施形態では、複数のユーザの間で特定のテーマについて議論する場合の表示制御を提供する。第1の実施形態と重複する部分については説明を省略し、異なる部分についてのみ説明する。
<概要>
ユーザがチャットのメッセージ40を用いて所定のテーマについて議論を行う場合、第2の実施形態に係る情報処理システム1では、議論の状況を適切に把握し易いように端末20の表示が制御される。具体的には、情報処理システム1では議論の状況を適切に把握するための動作モードである「議論モード」が提供される。議論モードは、情報処理サーバ10と、端末20上で動作するSNS用のアプリケーション、又はウェブブラウザとの間で処理が実行されることにより実現される。
図18及び図19を用いて、議論モードの概要について説明する。図18は、第2の実施形態に係る端末20における議論モードの設定画面の一例を示す図である。
図18の(1)は、端末20がユーザから議論モードの起動の要求を受け付けたことに応じて表示される、議論モードの初期設定画面を示している。端末20は、この画面から議論モードを開始するために必要な情報の入力を受け付ける。なお、端末20はユーザ端末と呼ばれてもよい。
「議論タイトル入力設定欄」には、議論モードで議論する議論タイトル80が設定される。「参加メンバ選択欄」に、チャットのメッセージ40を送受信するユーザのアイコン30が表示される。例えば、議論モード起動時に「参加メンバ選択欄」に、ユーザにより設定された所定のグループに属するユーザのアイコン30が設定されてもよい。「オピニオングループ設定欄(1〜3)」には、議論タイトル80に対する選択肢であるオピニオングループ90が設定される。図18の(1)の例では、3つのオピニオングループ設定欄が表示されているが、端末20は、ユーザからの要求に応じて、所定の数のオピニオングループ90を作成可能である。
以下の説明では、議論モードに参加するユーザの端末20に議論タイトル80が入力される場合について説明するが、議論モードに参加していないユーザや、第三者(例えば、SNSの運営者、新聞社、テレビ局、教師等)により議論タイトル80は設定されてもよい。また、議論モード用の一時的なグループを形成しメンバを参加させてもよいし、既に設定されているグループのメンバを議論モードに参加させてもよい。
例えば、大学等で教授が、自身の端末20から、研究テーマについて議論タイトル80を情報処理サーバ10に送信し、情報処理サーバ10から研究室の学生の端末20に議論タイトルを通知し、学生に研究テーマについて議論させてもよい。
図18の(2)は、議論モードの設定画面の一例を示している。「議論タイトル80」に「今日飲む店どうする?」が設定される。また、アイコン30A、アイコン30B、アイコン30C、及びアイコン30Dで表されるユーザが参加メンバとして選択されている。参加メンバのアイコン30は、選択されたことを端末20のユーザが認識できるように表示される。図18の(2)では、選択されたユーザのアイコン30の外縁がハイライトされて表示される。
ユーザの選択については、端末20がユーザから、対象ユーザのアイコン30にタップ等の操作を行うことにより実行される。
オピニオングループ90に、「渋谷の店」、「六本木の店」、及び「保留」が設定されている。
これらの入力を受け付けた後、端末20は、情報処理サーバ10に議論モードの開始要求を送信する。開始要求には、入力された「議論タイトル80」、「オピニオングループ90」、及び選択されたユーザの識別子を含む。
ここで、議論モードの開始要求を送信した端末20のユーザは、議論モードの主催者と呼ばれてもよい。開始要求を受信すると、情報処理サーバ10は、議論モードの開始に関する処理を行い、選択されたユーザに議論モードへの参加要求を送信する。
参加要求を受信すると、選択されたユーザの端末20の各々において議論モードへの参加を促すメッセージが表示画面に表示される。
図18の(3)は、議論モードへの参加を促すメッセージの表示の一例である。
「議論タイトル80」、「参加メンバ」、及び「オピニオングループ90」が表示される。
参加を促すメッセージを受信し、端末20のユーザからオピニオングループ90の選択と、「参加」ボタンの選択とを受け付けると、端末20は、情報処理サーバ10に参加する旨と、選択したオピニオングループ90とを通知する。 情報処理サーバ10は、ユーザの端末20の各々から選択したオピニオングループ90等の通知を受けると、各ユーザの選択したオピニオングループ90を議論に参加しているユーザの端末20に通知する。かかる通知を受信すると、ユーザの端末20には、各ユーザの選択したオピニオングループ90等を、表示画面に表示する。
図19は、第2実施形態に係る端末20の議論モード実行中の表示画面の一例を示す図である。
オピニオングループ90毎に表示領域50が設定される。つまり、オピニオングループ90の数に応じて、表示領域50の数が設定される。図19の例では、オピニオングループ90A「渋谷の店」には、表示領域50Aが割り当てられる、オピニオングループ90B「六本木の店」には、表示領域50Bが割当てられ、オピニオングループ90C「保留」には、表示領域50Cが割り当てられる。
表示領域50の各々に、ユーザのアイコン30が表示される。ユーザのアイコン30は、ユーザが選択したオピニオングループ90に割り当てられた表示領域50に表示される。
ユーザBの端末20BがユーザAの端末20Aからメッセージ40を受信すると、端末20Bは、ユーザAのアイコン30Aが表示されている表示領域50Bに、時系列に沿って上から順番に、ユーザAのメッセージ40を表示する。
端末20は、端末20のユーザが属するオピニオングループ90の表示領域50が表示画面の右側に表示されるように表示画面を制御してもよい。例えば、図19では、ユーザBの端末20Bにおいて、ユーザBが属するオピニオングループ90「六本木の店」の表示領域50が、表示画面右側の表示領域50Bに表示される。また、ユーザBのアイコン30Bが表示領域50Bに表示される。
複数のユーザがオピニオングループ90を選択した場合、端末20のユーザのメッセージ40が識別し難くなるおそれがある。このため、端末20は、端末20のユーザのメッセージ40を識別し易くするためハイライト、背景色の変更、又は背景のグラデーションの設定等して表示してもよい。
表示領域50に表示されるメッセージ40の数は、表示領域50のサイズに応じて、調整される。例えば、最新の2から3のメッセージ40が表示されるようにしてもよい。
オピニオングループ90C「保留」を選択したユーザは、議論モードにメッセージ40を投稿できないようにしてもよい。これにより、保留以外のオピニオングループ90を選択したユーザのメッセージ40の表示領域50を可能な限り広げることができる。
また、参加していないユーザのアイコン30を表示画面の所定の領域に表示し、議論モードのメンバを追加できるようにしてもよい。
以上のように、議論モードを動作させることにより、複数のユーザの間で所定のテーマである議論タイトル80についてメッセージ40を交換して、議論をするときに、オピニオングループ90毎に割り当てられた表示領域50にユーザのアイコン30、及びメッセージ40等を表示することができる。これにより、端末20のユーザは、現在の議論の状況を適切に把握し易くすることができる。
上述した説明では、主催者のユーザによりオピニオングループ90が設定される例について説明したが、参加者がオピニオングループ90を追加してもよい。また、主催者のユーザの端末から送信される開催要求にオピニオングループ90を含まないでもよい。この場合、参加者のユーザが端末20にオピニオングループ90を入力し、情報処理サーバ10に通知する。
<機能構成>
(1)情報処理サーバ
図5を参照して、情報処理サーバ10の機能構成について説明する。情報処理サーバ10は、第1の実施形態と同じ機能部を有する。各機能部は以下のように連携する。通信部110は、SNSを使用するユーザの端末20に、議論タイトル80と、議論タイトル80に対する選択肢であるオピニオングループ90とを通知し、ユーザの端末20の各々からユーザに選択されたオピニオングループ90を受信する。制御部120は、選択されたオピニオングループ90の受信に応じて、オピニオングループ90の各々と、オピニオングループ90を選択したユーザの情報とを対応付けて、ユーザの端末20の各々に表示させるように制御する。ここで、通信部110は、SNSを使用するユーザの端末20に、議論タイトル80を通知し、ユーザの端末20の各々からユーザに選択された議論タイトル80に対する選択肢であるオピニオングループ90を受信してもよい。主催者の端末20から議論タイトル80が通知され、対応するオピニオングループ90が通知されない場合には、主催者を含む参加者の端末20からオピニオングループ90を受け付けるためである。
ここで、ユーザの情報とは、ユーザを示すアイコン30や、ユーザの端末20の送信したメッセージ40である。なお、ユーザの情報は、ユーザ情報と呼ばれてもよい。
通信部110は、ユーザの端末20から、議論モードの開始要求を受信し、かかる開始要求を受信したことを、制御部120に通知する。通信部110は、制御部120からの指示を受けて、ユーザの端末20に議論モードへの参加要求を送信する。通信部110は、ユーザの端末20から選択されたオピニオングループ90の通知を受信し、制御部120に通知する。通信部110は、制御部120からの指示を受けて、議論モードの状況を、議論モードに参加しているユーザの端末20に通知する。また、通信部110は、ユーザの端末20からオピニオングループ90の変更通知を受信し、制御部120に通知する。
制御部120は、議論モードの開始要求の受信に応じて、議論モードの処理を開始する。具体的には、情報記憶部130に、図20に示す議論モード管理テーブル135の生成を指示する。議論モード管理テーブル135については後述する。
制御部120は、開始要求に参加メンバとして含まれるユーザの端末20に、議論モードへの参加要求を送信するように通信部110に指示する。かかる参加要求には、議論タイトル80、及びオピニオングループ90等を含む。
制御部120は、ユーザの端末20の各々により選択されたオピニオングループ90、及び議論モードに投稿されたメッセージ40等を、議論モード管理テーブル135に記憶するように、情報記憶部130に指示する。また、制御部120は、これらの情報を議論モードの状況として、通信部110を介して、ユーザの端末20に通知する。これにより、制御部120は、議論モードの状況が、ユーザの端末20の各々に表示されるように制御する。
表示の制御をするときに、制御部120は、端末20の表示部220のオピニオングループ90毎に設けられた表示領域50に、議論モードに参加しているユーザの各々の情報が表示されるように制御する。
なお、オピニオングループ90には、具体的な選択肢を未選択であることを示す「保留」を含んでもよい。また、オピニオングループ90「保留」の表示領域50は、選択待ち領域と呼ばれてもよい。
制御部120は、オピニオングループ90「保留」のユーザの端末20に対して、具体的な選択肢を選択するように促すメッセージを表示させるように、端末20の表示制御を行ってもよい。これにより、議論モードの各ユーザの具体的な意見が明確になり、議論が円滑に進むためである。
制御部120は、通信部110を介して、ユーザの端末20からオピニオングループ90の変更要求を受信すると、議論モード管理テーブル135の更新を、情報記憶部130に指示する。また、制御部120は、かかるユーザの変更後のオピニオングループ90を、議論モードに参加しているユーザの端末20に、通信部110を介して、通知する。かかる通知により、制御部120は、ユーザの端末20に表示領域50の変更を指示する。なお、この表示領域50の変更に関する指示は、オピニオングループ90「保留」のユーザが、所定のオピニオングループ90を選択した場合も同様である。
議論モードは、グループでのチャットのメッセージ交換の表示画面で提供される場合もある。この場合、端末20は、議論タイトル80に対するメッセージ40であることを示すタグをメッセージ40に設定する指示を受け付ける。なお、メタデータをメッセージ40に付与することにより、タグをメッセージ40に設定してもよい。
制御部120は、通信部110を介して、メッセージ40のタグの設定に関する情報を取得し、情報記憶部130に記憶するように指示する。メッセージ40にタグを設定することにより、議論タイトル80に関するメッセージ40の抽出が可能となる。
制御部120は、所定のグループに属するユーザの端末20の間で頻繁にメッセージ40が送受信されている場合に、議論モードを起動するように促す信号を、通信部110を介して、グループに属するユーザの端末20に送信する。例えば、メッセージ40が所定の閾値を上回る頻度で送受信される場合に、制御部120は、議論モードを起動するように促す信号を送信してもよい。ユーザの端末20の通信部210が、議論モードの起動を促す信号を受信すると、制御部240は、表示部220に、議論モードの起動を促す表示をさせる。
所定の閾値は、情報処理サーバ10の管理者が設定可能な値である。例えば、所定の閾値は、「グループに属するユーザの50%以上が5分以内にメッセージ40を投稿したこと」、「グループに属するユーザの3人以上が5分以内に2回以上メッセージ40を投稿したこと」、及び「グループに属するユーザの間で、所定の時間内に50回以上のメッセージ40が投稿されること」等を基に所定の閾値は設定される。
所定の条件を満たす場合に議論モードを起動することにより、チャットのメッセージ40を頻繁に交換するグループのユーザの間で、効率的に意見の交換をすることが可能となる。
全てのユーザが同じオピニオングループ90を選択した場合、或いは所定の割合以上のユーザが同じオピニオングループ90を選択した場合、制御部120は、かかるオピニオングループ90を議論タイトル80の結論として決定し、通信部110を介して、議論モードに参加しているユーザの端末20に通知してもよい。また、制御部120は、かかるオピニオングループ90を結論として決定するように促すメッセージを、主催者の端末20に、通信部110を介して、送信してもよい。
通信部110が、主催者の端末20から、議論モードの結論を受信した場合、制御部120は、通信部110に、議論モードに参加しているユーザの端末20に結論を通知するように指示する。
制御部120は、ユーザの端末20に、オピニオングループ90の追加を促す信号を、通信部110を介して、送信してもよい。例えば、制御部120は、所定のオピニオングループ90を選択しているユーザが存在しない場合、主催者の端末20に、新たなオピニオングループ90の追加を促してもよい。
所定のオピニオングループ90を選択しているユーザが存在しない場合、制御部120は、このオピニオングループ90を削除するように、通信部110を介して、ユーザの端末20に指示してもよい。また、制御部120は、このオピニオングループ90の表示領域50の領域を縮小するように、通信部110を介して、ユーザの端末20に指示してもよい。例えば、このオピニオングループ90の表示領域を、オピニオングループ90が存在することが認識できる程度まで縮小して表示させてもよい。
情報記憶部130は、制御部120の指示を受けて議論モード管理テーブル135を生成し、ユーザによるオピニオングループ90の選択、変更、及びメッセージ40の投稿等を記憶する。
図20に、議論モード管理テーブル135の一例を示す。議論モード管理テーブル135は、議論タイトル80の識別子(Discussion Group ID(DG ID))毎に生成され、オピニオングループ90の識別子(Opinion Group ID(OG ID))90と、ユーザと、ユーザの投稿したメッセージ40とが対応付けられて記憶される。また、主催者のユーザの欄には、主催者フラグが設定される。
例えば、ユーザAが、オピニオングループ90をOG ID2のオピニオングループ90に変更した場合、情報記憶部130は、ユーザAに関する情報を、OG ID2に属する情報として記憶する。
(2)端末
端末20は、第1の実施形態と同じ機能部を有する。各機能部は以下のように連携する。通信部210は、議論タイトル80と、議論タイトル80に対するオピニオングループ90とを、情報処理サーバ10を介して通知する。また、通信部210は、他のユーザにより選択されたオピニオングループ90を受信する。表示部220は、受信したオピニオングループ90の各々と、他のユーザの情報とを対応付けて、表示する。
端末20の各機能部は、以下の機能を有する。
通信部210は、制御部240の指示を受けて、議論モードに関する各種信号、及び議論モードにおける端末20のユーザの投稿等を、情報処理サーバ10に送信する。また、通信部210は、情報処理サーバ10から議論モードに関する各種信号を受信し、制御部240に通知する。
表示部220は、制御部240の指示に基づいて、端末20に各種情報を表示する。表示部220は、オピニオングループ90毎に割り当てられた表示領域50を有する。表示部220は、制御部240の指示に基づいて、オピニオングループ90毎に設けられた表示領域50に、議論モードに参加しているユーザの各々の情報を表示する。
表示部220は、制御部240の指示に基づいて、議論モードを、通常のグループでのチャットのメッセージ交換の表示画面で表示する場合がある。この場合、表示部220は、ユーザのメッセージ40の選択の操作に応じて、議論タイトル80に対するメッセージ40であることを示すタグを設定するか否か選択を促す表示をする。
入力部230は、議論モードの主催者から、議論モードを開始するための設定である、議論タイトル80、議論タイトル80に対するオピニオングループ90の入力、及び議論への参加ユーザの選択を受け付ける。
また、入力部230は、議論モード起動中に、オピニオングループ90の選択、変更、結論の決定等の操作、及び投稿するメッセージ40の入力をユーザから受け付け、制御部240に通知する。
制御部240は、入力部230が受け付けた議論モードの開始の設定、オピニオングループ90の選択、変更、結論の決定、及び投稿するメッセージ40を、情報処理サーバ10に送信するように、通信部210に指示する。
また、制御部240は、通信部210を介して受信した、他のユーザの選択したオピニオングループ90、他のユーザから投稿されたメッセージ40、及び情報処理サーバ10から通知される議論の結論等の各種メッセージ等の情報を表示するように表示部220に指示する。
制御部240は、受信した議論モードに関する情報を、情報記憶部250に記憶させる。
ユーザが選択されたメッセージ40に対して所定の操作を行った場合、制御部240は、議論タイトル80に関するメッセージ40であることを示すタグを設定し、かかるメッセージ40をタグと共に記憶することを情報記憶部250に指示する。
ユーザのオピニオングループ90を変更する場合、制御部240は、変更後のオピニオングループ90に対応する表示領域50にユーザの情報を表示するように、表示部220に指示する。なお、ユーザのオピニオングループ90を変更する場合には、端末20のユーザから入力部230が変更を受け付けた場合と、他のユーザのオピニオングループ90の変更を情報処理サーバ10から通知された場合とを含む。
入力部230がユーザから議論モードの起動指示、議論モードの結論の決定、オピニオングループ90の追加の指示等を受け付けた場合、制御部240は、受け付けた内容を、通信部210を介して、情報処理サーバ10に通知する。
情報記憶部250は、制御部240の指示に基づいて、議論モードに関する情報を記憶する。
<動作手順>
(1)オピニオングループの選択
図21及び図22を用いて議論モードにおけるオピニオングループ90の選択の動作手順について説明する。
図21は、第2の実施形態に係る動作手順のフローチャート(その1)の一例を示す図である。
ステップS2101で、情報処理サーバ10の制御部120は、通信部110を介して、ユーザAの端末20Aから議論モードの開始要求を受信する。議論モードの開始要求には、議論モードに参加するユーザの識別子、議論タイトル80(DR ID)、及びオピニオングループ90(OG ID)を含む。ここで、開始要求に含まれる参加するユーザの識別子、議論タイトル80(DR ID)、及びオピニオングループ90(OG ID)は、ユーザAにより端末20Aの入力部230に入力された内容に基づいて設定される。
ステップS2102で、制御部120は、議論モードの処理を開始する。具体的には、制御部120は、情報記憶部130に議論モード管理テーブル135の生成を指示する。
ステップS2103で、制御部120は、通信部110を介して、議論モードに参加するユーザの端末20に、議論モードへの参加要求を送信する。参加要求には、議論タイトル80(DR ID)、及びオピニオングループ90(OG ID)を含む。
ステップS2104で、制御部120は、通信部110を介して、ユーザの端末20から議論モードへの参加の許諾を受信する。参加の許諾には、ユーザの識別子と、端末20のユーザに選択されたオピニオングループ90とを含む。
ステップS2105で、制御部120は、情報記憶部130に、ユーザの端末20から受信した内容に基づいて、議論モード管理テーブル135の更新を指示する。かかる指示を受けて、情報記憶部130は、議論モード管理テーブル135を更新する。
ステップS2106で、制御部120は、議論モードに参加しているユーザの端末20に議論モードの状況を通知する。議論モードの状況には、各々のユーザに選択されたオピニオングループ90を特定する情報を含む。また、議論モードの状況には、ユーザにより議論モードに投稿されたメッセージ40を含んでもよい。議論モードの状況の受信に応じて、端末20の制御部240は、オピニオングループ90毎に割り当てられた表示領域50に、ユーザが選択したオピニオングループ90に対応付けて、ユーザの情報を表示する。
図22は、第2の実施形態に係る動作手順のシーケンス(その1)の一例を示す図である。
ステップS2201で、情報処理サーバ10の制御部120は、通信部110を介して、ユーザAの端末20Aから議論モードの開始要求を受信する。議論モードの開始要求には、議論モードに参加するユーザの識別子、議論タイトル80(DR ID)、及びオピニオングループ90(OG ID)を含む。
ステップS2202で、制御部120は、議論モードの処理を開始する。制御部120は、情報記憶部130に議論モード管理テーブル135の生成を指示する。
ステップS2203で、制御部120は、通信部110を介して、議論モードに参加するユーザAの端末20A、ユーザBの端末20B、及びユーザCの端末20Cに、議論モードへの参加要求を送信する。ここで、図22中のステップS2203Aは端末20Aへの信号を表し、ステップS2203Bは端末20Bへの信号を表し、ステップS2203Cは、端末20Cへの信号を表す。参加要求には、議論タイトル80(DR ID)、及びオピニオングループ90(OG ID)を含む。なお、議論モードの主催者である、ユーザAの端末20Aには、参加要求を送信しないでもよい。
ステップS2204で、制御部120は、通信部110を介して、ユーザAの端末20A、ユーザBの端末20B、及びユーザCの端末20Cから議論モードへの参加の許諾と、選択したオピニオングループ90を受信する。ここで、図22中のステップS2204Aは端末20Aへの信号を表し、ステップS2204Bは端末20Bへの信号を表し、ステップS2204Cは、端末20Cへの信号を表す。
ステップS2205で、制御部120は、情報記憶部130に議論モード管理テーブル135の更新を指示する。かかる指示を受けて、情報記憶部130は、議論モード管理テーブル135を更新する。
ステップS2206で、制御部120は、議論モードに参加しているユーザの端末20に議論モードの状況を通知する。議論モードの状況には、各々のユーザに選択されたオピニオングループ90を特定する情報を含む。
ここで、議論モードの状況の通知は、議論モードにおける情報が更新される度に送信されてもよい、或いは所定のタイミングで送信されてもよい。
議論モードにおける情報とは、ユーザによるオピニオングループ90の選択、変更、ユーザによるメッセージ40のオピニオングループ90への投稿、及び議論モードの結論の通知等の情報のことである。
(2)オピニオングループの選択
図23及び図24を用いて議論モードにおけるオピニオングループ90の選択の動作手順について説明する。
図23は、第2の実施形態に係る動作手順のフローチャート(その2)の一例を示す図である。
ステップS2301で、ユーザAの端末20Aの入力部230は、ユーザAの入力操作を検知する。
ステップS2302で、入力部230は、かかる入力操作がオピニオングループ90を変更する操作であると判断し、オピニオングループ90を変更する操作が入力されたことを、制御部240に通知する。ここで、オピニオングループ90を変更する操作とは、所定の操作に対応付けることが可能である。例えば、ユーザAのアイコン30を選択して、変更後のオピニオングループ90に割り当てられた表示領域50の方向にスクロールする操作を、オピニオングループ90を変更する操作としてもよい。或いは、ユーザAのアイコン30を選択して、変更後のオピニオングループ90に割り当てられた表示領域50の方向にはじく操作を、オピニオングループ90を変更する操作としてもよい。
ステップS2303で、制御部240は、表示部220に表示領域の更新を指示する。具体的には、制御部240は、ユーザAの情報を変更後のオピニオングループ90に割り当てられている表示領域50に表示することを、表示部220に指示する。
また、制御部240は、通信部210を介して、ユーザAの変更後のオピニオングループ90を、情報処理サーバ10に通知する。かかる通知に応じて、情報処理サーバ10の制御部120は、議論モード管理テーブル135を更新することを情報記憶部130に指示する。具体的には、制御部120は、ユーザAの情報を変更後のオピニオングループ90に属するように、議論モード管理テーブル135を更新することを、情報記憶部130に指示する。
ステップS2304で、情報処理サーバ10の制御部120は、通信部110を介して、ユーザAの変更後のオピニオングループ90を、議論モードに参加しているユーザの端末20に通知する。かかる通知を受けて、ユーザの端末20の各々は、変更後のオピニオングループ90に割り当てられている表示領域50にユーザAの情報を表示する。
図24は、第2の実施形態に係る動作手順のフローチャート(その2)の一例を示す図である。図24ではユーザAが議論の主催者であるものとして説明を進める。
ステップS2401で、ユーザAの端末20Aの通信部210は、変更後のオピニオングループ90(OG ID2)を、情報処理サーバ10に通知する。
ステップS2402で、情報処理サーバ10の制御部120は、議論モード管理テーブル135を更新することを情報記憶部130に指示する。具体的には、ユーザAの情報を、オピニオングループ90(OG ID1)から変更後のオピニオングループ90(OG ID2)に属するものとして記憶を更新する。
ステップS2403で、制御部120は、通信部110を介して、ユーザAの変更後のオピニオングループ90を、議論モードに参加しているユーザの端末20に通知する。ステップS2403Aが、ユーザAの端末20Aへの信号を示し、ステップ2403Bが、ユーザBの端末20Bへの信号を示し、ステップ2403Cが、ユーザCの端末20Cへの信号を示している。ここで、端末20Aへの信号の送信は省略されてもよい。
議論モードで、グループ内の各ユーザから意見の選択、及び投稿等を受け付けた後に、情報処理サーバ10は、主催者であるユーザAの端末20Aに、議論の結論の選択を促し、端末20Aは、ユーザAにより選択された結論を情報処理サーバ10に通知してもよい。
ステップS2404で、制御部120は、通信部110を介して、議論モードの主催者であるユーザAの端末20Aに結論の選択を促すメッセージを送信する。
なお、ステップS2404のメッセージを受信する前に、ユーザAが端末20Aの入力部230に議論の結論を入力し、通信部210が情報処理サーバ10に結論を通知してもよい。この場合、情報処理サーバ10からステップS2404のメッセージは送信されない。
ステップS2405で、ユーザAの端末20Aの入力部230が、結論の選択を受け付けると、制御部240は、通信部210を介して、情報処理サーバ10に選択した結論を通知する。
ステップS2406で、情報処理サーバ10の通信部110が、主催者により選択された結論を受信すると、制御部120は、通信部110に、議論モードに参加しているユーザの端末20に、結論を通知する。ここで、ステップS2406Aは、ユーザAの端末20Aへの信号を表し、ステップS2406Bは、ユーザBの端末20Bへの信号を表し、ステップS2406Cは、ユーザCの端末20Cへの信号を表す。なお、ステップS2406Aの信号の送信は省略してもよい。
(3)議論モードの起動
上述したように、グループ内のユーザで頻繁にメッセージ40が交換される場合、情報処理サーバ10は、議論モードの使用を促す。
図25を用いて、議論モードの起動に関する動作手順を説明する。図25は、第2の実施形態に係る動作手順のフローチャート(その3)の一例を示す図である。
ステップS2501で、情報処理サーバ10の制御部120は、チャットのメッセージ40に含まれるグループの識別子(グループID)を抽出する。
ステップS2502で、制御部120は、抽出されたグループIDに属しているユーザの識別子(ユーザID)を特定する。
ステップS2503で、制御部120は、アクティブユーザ数を算出する。ここで、アクティブユーザ数とは、所定の時刻から5分以内にグループにメッセージ40を投稿したユーザの数である。
ステップS2504で、制御部120は、グループ内のアクティブユーザ数の割合が所定の割合を上回るか否かを判定する。所定の割合を上回る場合(ステップS2504 Yes)、ステップS2505に進む。一方、所定の割合以下の場合(ステップS2504 No)、ステップS2503に戻る。ステップS2504の判断処理は定期的に実行されてもよい。例えば、10分から15分毎に実行されてもよい。
ステップS2505で、制御部120は、通信部110を介して、議論モードを推奨するメッセージを、グループに属するユーザの端末20に送信する。
(4)メッセージへの議論モードのタグの設定
上述したように、議論モードを、通常のグループでのチャットのメッセージ40交換の表示画面で表示することも可能である。この場合、ユーザはメッセージ40に議論モードの所定の議論タイトル80に関するメッセージ40である旨のタグを設定し、かかるタグを用いてメッセージ40を抽出することにより、所定の議論タイトル80に関するメッセージ40を特定することができる。
図26を用いてメッセージ40への議論モードのタグの設定方法について説明する。図26は、第2の実施形態に係る動作のフローチャート(その4)の一例を示す図である。
図26の(1)は、メッセージ40に議論モードのタグを設定する手順を示している。
ステップS2601で、端末20の入力部230は、端末20のユーザから、表示部220に表示されているメッセージ40に対する選択を受け付ける。かかるメッセージ40に対する選択、及び所定の操作を検知すると、入力部230は、所定の操作は議論モードのタグの設定要求であると判断する。所定の操作は、例えば、メッセージ40を所定時間以上、選択することである。
ステップS2602で、端末20の制御部240は、表示部220に議論モードの設定画面を表示するように指示する。ここで議論モードの設定画面には、設定済みの議論タイトル80が表示されてもよいし、新たな議論タイトル80を入力する画面が表示されてもよい。
入力部230は、端末20のユーザの入力を受け付ける。具体的には、端末20のユーザは設定済みの議論タイトル80一覧の中からメッセージ40にタグとして設定する議論タイトル80を選択する入力を行う。或いは、端末20のユーザはメッセージ40にタグとして設定する新たな議論タイトル80を入力する。
制御部240は、入力部230を介して設定された議論タイトル80を記憶するように情報記憶部250に指示し、情報記憶部250は、入力された議論タイトル80を記憶する。
図26の(2)は、議論モードのタグが設定されたメッセージ40を表示する手順を示している。
ステップS2604で、端末20の入力部230が、端末20のユーザからチャットサービスの起動指示を受け付けると、端末20は、チャットサービスを起動する。
ステップS2605で、入力部230が、ユーザから所定の議論タイトル80のメッセージ40を表示する指示を受ける。かかる指示に応じて、表示部220は、議論タイトル80一覧を表示する。入力部230は、端末20のユーザから議論タイトル80の選択を受け付ける。
ステップS2606で、議論タイトル80の選択に応じて、表示部220は、表示設定の画面を表示する。入力部230は、ユーザから、表示設定の指示を受け付ける。表示設定の指示とは、例えば、選択された議論タイトル80のメッセージ40のみを表示部220に表示する指示である。また、例えば、選択された議論タイトル80のメッセージ40をハイライトして表示する指示である。表示部220は、議論タイトル80のタグが設定されたメッセージ40について、ユーザからの指示に従って表示をする。
これにより、通常のチャットのメッセージを用いる場合であっても、容易に議論タイトル80に関するメッセージ40を抽出することが可能となる。
<端末の表示>
(1)議論モードの表示画面
図27乃至図33を用いて端末20における議論モードの設定画面について説明する。
(1.1)議論モードの起動
図27は第2の実施形態に係る端末20の議論モード起動時の表示画面の一例を示す図である。図27の(1)は、端末20で動作するチャットサービスの画面を示す図である。かかるサービスの画面に、ユーザがチャットのメッセージ40を交換するグループに属するユーザのメッセージ40が、時系列に沿って表示される。入力部230が、メニュー選択ボタン74が選択されたことを検知すると、制御部240は、表示部220にメニュー選択画面を表示することを指示する。
図27の(2)は、端末20で動作するチャットサービスのメニュー選択画面を示す図である。入力部230が、議論モード選択ボタン75が選択されたことを検知すると、制御部240は、表示部220に議論モードの初期設定画面を表示するように指示する。議論モードの初期設定画面については、図18に示した通りである。
(1.2)複数のオピニオングループの表示
図28は、第2の実施形態に係る端末20の議論モード実行時の表示画面(4つのオピニオングループ90)の一例を示す図である。
上述した議論モードの実行中の表示画面では、各オピニオングループ90が左側、右側、下側の3つの表示領域50に割り当てる例を説明した。表示領域50は、オピニオングループ90の数に応じて、様々な形の領域を設定することができる。例えば、図28に示すように、オピニオングループ90A(渋谷の店)に対応する表示領域50Aを表示画面の上部左側、オピニオングループ90B(恵比須の店)に対応する表示領域50Bを表示画面の上部中央、及びオピニオングループ90C(六本木の店)に対応する表示領域50Cを表示画面の上部右側に設定してもよい。この場合、各々のオピニオングループ90に投稿されたメッセージ40は、時系列に沿って上から表示される。また、図28の例では、メッセージ40が投稿できないオピニオングループ90D(保留)に対応する表示領域50Dは表示画面の下部に設定される。
(1.3)オピニオングループの変更
図29は、第2の実施形態に係る端末20の議論モード実行時の表示画面(オピニオングループ90の変更)の一例を示す図である。
図29は、ユーザBの端末20Bの表示画面に示されるユーザBのアイコン30Bのオピニオングループ90を変更する際の画面遷移を示す図である。
図29の(1)は、入力部230が、ユーザBからオピニオングループ90Cに属しているユーザBのアイコン30Bの選択を受け付けた様子を示している。ユーザBが選択したアイコン30Bに対して所定の操作をすることにより、ユーザBの所属するオピニオングループ90が変更される。
図29の(2)は、アイコン30Bに対して所定の操作がされたことにより、ユーザBのオピニオングループ90が、オピニオングループ90Cからオピニオングループ90Aに変更された様子を示している。アイコン30Bの表示領域50が、オピニオングループ90Aに割り当てられている表示領域50Aに変更となっている。
オピニオングループ90の変更のための所定の動作は、例えば、変更の対象となるユーザのアイコン30に対する、変更後のオピニオングループ90の表示領域50の方向へのスワイプ操作、又は、はじく操作等である。
(1.4)議論完了
情報処理サーバ10は、実行中の議論モードが所定の条件を満たす場合、議論の完了を促す表示をするように端末20を制御してもよい。
例えば、全てのユーザが同一のオピニオングループ90に属する場合や、所定の割合以上のユーザが同一のオピニオングループ90に属する場合に、所定の条件を満たすと判断してもよい。
図30は、第2の実施形態に係る端末20の議論モード実行時の表示画面(議論の完了確認)の一例を示す図である。
所定の条件を満たす場合、情報処理サーバ10は、ユーザの端末20に図30のメッセージを表示させてもよい。かかるメッセージは、議論モードの主催者の端末20にのみ表示させてもよい。
主催者のユーザから、結論とするオピニオングループ90の選択、及び結論の投稿ボタン95の選択の操作を入力部230が受け付けると、制御部240は、通信部210を介して、情報処理サーバ10に議論結果を通知する。
情報処理サーバ10は、議論結果を受け付けると、議論モードに参加しているユーザの端末20に議論結果を通知する。
図31は、第2の実施形態に係る端末20の議論モード実行時の表示画面(結論の通知)の一例を示す図である。
情報処理サーバ10が、主催者のユーザの端末20から、結論の選択を受け付けると、議論モードに参加しているユーザの端末20の制御部240は、表示部220に、表示画面の所定の領域に結論の通知96を表示させる。なお、ユーザの端末20がロック中の場合、又はSNSのアプリケーションを起動していない場合、制御部240は、結論をポップアップにより、表示画面に表示させてもよい。
(1.5)議論タイトル等の変更
端末20のユーザの所定の操作を、入力部230が検知したことに応じて、制御部240が議論タイトル80、及びオピニオングループ90に対する変更、追加、及び削除等の処理を実行してもよい。例えば、議論タイトル80へのタップを検知し、議論タイトル80の変更、追加及び削除等の処理を起動してもよい。また、例えば、オピニオングループ90のタップを検知し、議論タイトル80の変更、追加及び削除等の処理を起動してもよい。なお、議論タイトル80の変更は、主催者のユーザの操作に応じて変更され、オピニオングループ90の変更は、主催者を含む参加メンバからの操作に応じて変更されることが想定される。
入力部230が変更、追加、及び削除等の処理を受け付けると、制御部240は、表示部220に、受け付けた内容に応じた表示をすることを指示する。
図32は、第2の実施形態に係る端末20の議論モード実行時の表示画面(議論タイトル80の変更)の一例を示す図である。
図32の(1)は、入力部230が議論タイトル80の変更の操作を受け付けた様子を示している。ユーザからの入力に応じて、変更後の議論タイトル80が表示部220に表示される。
図32の(2)は、入力部230がオピニオングループ90の変更の操作を受け付けた様子を示している。ユーザからの入力に応じて、変更後のオピニオングループ90が表示部220に表示される。
なお、端末20に入力された変更内容は、情報処理サーバ10に通知され、情報処理サーバ10から、グループに属する他のユーザの端末20に通知される。
(1.6)議論モードの状況通知
上述したように、情報処理サーバ10は、議論の状況を、グループに属するユーザの端末20に通知する。
図33は、第2の実施形態に係る端末20の議論モード実行時の表示画面(議論の状況通知)の一例を示す図である。
情報処理サーバ10からの通知を受け、端末20の表示部220が通知の内容を表示する。情報処理サーバ10は、議論に参加していないユーザの端末20にのみ、議論の状況通知97を送信してもよい。なお、議論に参加していないユーザとは、「保留」のオピニオングループ90に属するユーザや、メッセージ40の投稿をしていないユーザ等である。
議論の状況の表示は、図33の(1)に示すように、議論の状況通知97は、チャットの表示画面にポップアップにより表示されてもよいし、図33の(2)に示すように、表示画面の下部に表示されてもよい。
<変形例1>
図34は、変形例1に係る端末20の議論モード実行時の表示画面(表示例)の一例を示す図である。
上述した第2の実施形態においては、オピニオングループ90毎に割り当てられた表示領域50に、ユーザのアイコン30を表示する形態について説明したが、図34に示すように議論モードのユーザのアイコン30及びかかるユーザの投稿したメッセージ40を表示画面内の所定領域に表示してもよい(図34の(1)、(2))。
グループのユーザ数が所定の人数、例えば4名以下の場合、其々のユーザのアイコン30とメッセージ40とを表示した方が、議論の状況が分かり易い場合がある。図34の表示をする場合、端末20の制御部240は、メッセージ40の表示領域50が限られるため、各ユーザのメッセージ40を2つ程度に制限する、或いは文字数を制限する制御をする。
また、図34の(3)に示すように、ユーザからの操作を受け付けて、端末20の表示部220は、表示画面に議論モードを行う表示領域50Aと、通常のチャットのメッセージ40の送受信を行う表示領域50Bを設けてもよい。
<変形例2>
上述したように、議論モードを、通常のグループでのチャットのメッセージ40の交換の表示画面で表示することも可能である。
図35及び図36は、変形例2に係る端末20の議論モード実行時の表示画面(タグ設定)の一例を示す図である。
図35の(1)は、通常のグループでのチャットのメッセージ40の交換を行う場合に、メッセージ40Aに対して議論モードのタグを設定する様子を示している。入力部230が、メッセージ40Aに対して端末20のユーザから所定の操作を受け付けると、表示部220は、表示画面に議論モード設定メニュー400を表示する。ユーザからの所定の操作とは、例えば、メッセージ40Aを所定の時間以上選択すること(長押しすること)である。
図35の(2)は、議論モード設定メニュー400の選択の操作を、入力部230がユーザから受け付けたことに応じて、表示部220が表示する表示画面である。端末20のユーザの議論モードの選択の操作に応じて、メッセージ40Aに設定するタグ名の入力受付メニュー410が表示される。
図35の(3)は、タグ名の入力受付メニュー410の選択の操作を、入力部230がユーザから受け付けたことに応じて、表示部220が表示する表示画面である。端末20のユーザのタグ名の入力受付メニュー410の選択の操作を、入力部230がユーザから受け付けたことに応じて、表示部220は、いずれかの議論タイトル80を表すタグの選択を促す表示画面を表示する。図35の(3)では、議論タイトル1、議論タイトル2、又は議論タイトル3(80A、80B、80C)のいずれかを選択することを、ユーザに促す表示画面を示している。
ここで、入力部230は、新たな議論タイトル80を、端末20のユーザから受け付けてもよい。
図36の(1)は、議論タイトル80の選択の操作を、入力部230が受け付けた様子を示す表示画面である。図36の(1)では、議論タイトル1(80A)が選択された様子を示している。選択された議論タイトル80は、ハイライト、色付け等により選択されたことが識別できるように表示される。
また、議論タイトル80が選択された状態で、端末20は、選択した議論タイトル80に対して、新たなメッセージ40を投稿することが可能である。その場合、入力部230は、ユーザの入力欄430への選択操作を検知し、メッセージ40の入力を受け付ける。
図36の(2)は、メッセージ40に議論タイトル80のタグが設定された様子を示す表示画面である。図36の(2)では、タグが設定されたメッセージ40Aに、タグが設定されていることを示すマーク440が設定されている様子を示している。ハイライト、色付け等によりメッセージ40にタグが設定されていることを示してもよいことは勿論である。
図36の(3)は、タグが設定されたメッセージ40に対する設定の様子を示す表示画面である。図36の(3)では、タグが設定されたメッセージ40Aに、「完了」、「削除」、「修正」、及び「共有」等の設定をする操作メニュー450を示している。
入力部230が、タグが設定されたメッセージ40の設定を、ユーザから受け付けると、メッセージ40は、操作に応じた表示がされる。例えば、タグを「削除」する操作が、メッセージ40にされた場合、かかるメッセージ40は通常のメッセージ40と同じように表示される。
なお、情報記憶部250は、議論タイトル80の最初のメッセージ40、及び最後のメッセージ40の少なくとも1つに設定されたタグの設定を記憶してもよい。これにより、ユーザは、議論タイトル80に対応するメッセージ40の開始と終了の少なくとも1つを特定することができる。
<変形例3>
図37は、第2の実施形態に係る端末20の議論モード実行時の表示画面(スケジュール調整)の変形例を示す図である。
グループ内のユーザのスケジュール調整のメニューにおいて、議論モードを適用してもよい。この場合、オピニオングループ90が、候補日程となる。情報処理サーバ10、及び端末20の動作については、上述した議論モードと同様である。
図37は、議論タイトル80「飲み会の日程」について、グループのユーザの間で議論モードを用いて日程を調整する様子を示している。
オピニオングループ90A「9/7」に表示領域50Aが割り当てられ、オピニオングループ90B「9/8」に表示領域50Bが割り当てられている。表示領域50Cは、通常のチャットのメッセージ40が表示される。
ユーザCはオピニオングループ90Aを選択したため、ユーザCのアイコン30CとユーザCの投稿したメッセージ40Cとがオピニオングループ90Aの表示領域50Aに表示される。
<変形例4>
第2の実施形態で説明した議論モードにおいても、同様にユーザからの入力に応じて表示領域50を変更することが可能である。
図38は、変形例4に係る端末20の表示画面の一例を示す図である。
議論モードのデフォルトの設定では、端末20のユーザの属するオピニオングループ90Bは、右側、又は図38の表示領域50Bのように右上の領域に表示される。
端末20のユーザの属するオピニオングループ90Bの表示領域50を、ユーザの指示に基づいて、端末20は変更してもよい。
図38の(1)は、端末20のユーザの属するオピニオングループ90Bが選択され、表示領域50Aの方向にスワイプされる様子を示している。
入力部230がオピニオングループ90Bに対するスワイプの動作を受け付けたことに応じて、制御部240は、オピニオングループ90Bの表示領域50を、表示領域50Aから表示領域50Bに変更することを判断する。制御部240は、オピニオングループ90Bに属するユーザの情報を表示領域50Aに表示し、オピニオングループ90Aに属するユーザの情報を表示領域50Bに表示することを、表示部220に指示する。かかる指示を受けて、表示部220は、表示画面の表示を変更する。図38の(2)は変更後の表示画面の表示例である。
以上のように、議論モードを実行中の場合でも、端末20はユーザの情報の表示領域50をユーザの指示に基づいて変更することができる。
第2の実施形態に記載の議論モードの実行中の表示画面においても、第1の実施形態に記載した全ての表示領域50の変更の動作を実現することが可能なことは勿論である。
なお、表示領域50の変更については、アイコン30に対するスワイプ以外の所定の操作を実行することによって実現されてもよい。
<変形例5>
図39は、変形例5に係る表示領域50の変更の一例を示す図である。
上述した実施形態においては、主に端末20がタッチパネルを有するスマートフォン等の場合を例に説明したが、タッチパネルを有さない場合であっても同様に実施できることは勿論である。
図39では、端末20がPCのときに、マウスを用いて、ユーザBのアイコン30Bを選択し、ユーザBの表示領域50を、表示領域50Aから表示領域50Bに変更する様子を示している。
アイコン30Bが、クリックにより選択され、ドラッグ・アンド・ドロップの操作により移動されることに応じて、ユーザBの情報の表示位置が、表示領域50Bから、表示領域50Aに変更される。
なお、端末20がPCのときでも、ドラッグ・アンド・ドロップ以外の所定の操作により表示領域50が変更されてもよい。
<変形例6>
図40及び図41を用いて、変形例6について説明する。
端末20の入力部230は、端末20のユーザから、他のユーザに対する表示設定を受け付ける。入力部230が他のユーザに対する表示設定を受け付けると、制御部240は、情報記憶部250に表示設定を記憶させる。また、制御部240は、通信部210を介して、情報処理サーバ10に他のユーザの表示設定を通知する。ここで、表示設定は、お気に入りユーザの登録と表現されてもよい。
情報処理サーバ10の通信部110が表示設定の通知を受けたことに応じて、制御部120は、情報記憶部130に、表示設定を記憶させる。
他のユーザの情報を、通信部210が情報処理サーバ10から受信した場合、制御部240は、他のユーザの表示設定がされているか情報記憶部250を参照して確認する。他のユーザの表示設定がされている場合、制御部240は、表示設定がされていることが端末20のユーザに認識可能な形態で、他のユーザの情報を表示するように表示部220に指示する。表示部220は、指示に従って他のユーザの情報を表示する。
なお、情報処理サーバ10の通信部110が他のユーザの情報を端末20に送信する際に、他のユーザの表示設定がされている旨が含まれてもよい。この場合、端末20は、情報処理サーバ10から受信した内容を基に、他のユーザの情報の表示形態を判断する。
図40は、変形例6に係る表示設定の受け付けの一例を示す図である。
図40は、ユーザ「CCC」のアイコン30Cが選択され、「お気に入り登録」をされる様子を示している。例えば、図40の(1)に示すように、入力部230が、アイコン30Cに対する右方向へのスワイプ操作を受け付ける。スワイプの操作の受け付けに応じて、図40の(2)に示すように、表示部220は「ユーザCCCがお気に入り登録されました」というメッセージを表示する。そして、制御部240は、ユーザ「CCC」がお気に入り登録されたことを記憶するように情報記憶部250に指示する。
図41は、変形例6に係るユーザの情報の表示形態の一例を示す図である。お気に入り登録がされているユーザの情報(図41ではメッセージ40)が端末20のユーザAに認識できるような表示態様で表示される。例えば、お気に入り登録されているユーザの情報が通常とは異なる色で表示されてもよいし、通常とは異なる背景のグラデーションで表示されてもよし、或いはお気に入り登録がされている旨を示すマークと共に表示されてもよい。 図41の(1)は、端末20AのユーザAとユーザCとの間で一対一のチャットメッセージを実行している際の画面表示の一例を示す図である。ここで、ユーザCはお気に入り登録されているものとする。図41の(1)の例では、ユーザCはお気に入り登録されているため、ユーザCのメッセージ40Cは、お気に入り登録がされていることがユーザAに認識できるような表示態様で表示される。図41の(1)では、ユーザCのメッセージ40Cが通常とは異なる色で表示される例を示している。
図41の(2)は、端末20のユーザAと複数のユーザとの間でチャットメッセージを実行している際の画面表示の一例を示す図である。ここで、ユーザCとユーザEがお気に入り登録されているものとする。図41の(2)では、ユーザCとユーザEはお気に入り登録されているため、ユーザCのメッセージ40C、及びユーザEのメッセージ40Eは、マーク98と共に表示される例を示している。
<その他>
情報処理サーバ10は、情報処理装置の一例である。情報処理サーバ10の各機能が別のハードウェア上に実装されてもよい。この場合、別のハードウェア上に実装された各機能が連携することにより情報処理サーバ10の機能を実現する。例えば、情報処理サーバ10は、他の装置に実装されている情報記憶部130から情報を取得して、上述した動作を実現してもよい。
入力部230は、受け付け部の一例である。通信部110は、受信部の一例である。制御部120は、表示制御部の一例である。
上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、情報処理サーバ10、及び端末20に供給してもよい。そして、情報処理サーバ10、及び端末20が、記憶媒体に格納されたプログラムコードを読み出し実行することによっても、上述の実施形態が、達成されることは言うまでもない。この場合、記憶媒体には、SNSのユーザの情報を時系列に沿って表示する制御方法を、情報処理サーバ10、及び端末20に実行させるプログラムが記憶される。
具体的には、時系列でユーザ情報を表示する表示制御方法を、端末20に実行させるプログラムであって、受信した前記ユーザ情報を表示する第1の表示領域、及び前記第1の表示領域と異なる第2の表示領域を、端末の画面上に表示するステップと、前記第1の表示領域に表示されているユーザ情報を、前記第2の表示領域に表示させる指示を、受け付けるステップと、前記ユーザ情報を前記第2の表示領域に表示させるステップと、を端末20に実行させる、プログラムが、記憶媒体に記憶される。
また、画面上に第1の表示領域、及び前記第1の表示領域と異なる第2の表示領域を含む画面を有する端末20に、時系列でユーザ情報を表示させる制御を行う情報処理サーバ10のプログラムであって、前記第1の表示領域に表示されている前記端末が受信したユーザ情報を、前記第2の表示領域に表示させる通知を、端末20から受信するステップと、前記ユーザ情報を前記第2の表示領域に表示させるように、端末20を制御するステップと、を情報処理サーバ10に実行させる、プログラムが、記憶媒体に記憶される。
そして、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになる。
また、コンピュータ装置が読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。そのプログラムコードの指示に従って、コンピュータ装置上で動作しているオペレーティングシステム(OS)等が実際の処理の一部または全部を行ってもよい。さらに、その処理によって前述した実施形態の機能が実現されてもよいことは言うまでもない。
以上、本発明の好ましい実施形態について説明したが、本発明はこうした実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。