【文献】
カカオトークもついに参戦!入れて損なしの無料通話アプリをいろいろ使い比べてみました,CatchApp,2012年 4月 6日,[online],2016年12月7日検索,URL,http://catchapp.net/contents/story/646
(58)【調査した分野】(Int.Cl.,DB名)
メッセージを入力するメッセージ入力部と、送信した利用者の情報と関連付けて送信されたメッセージを表示するメッセージ表示部とを含んで構成されるチャット・ユーザインターフェースによって、グループを構成する複数の利用者のそれぞれから送信されたメッセージを、当該利用者の間で閲覧可能に提供するメッセージ管理装置であって、
ゲームの開始指示を受け付ける開始受付部と、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であるか否かを判断するメッセージ判別部と、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であると判断された場合に、前記開始指示によって開始させたゲームの当該命令に応じた制御を行い、当該命令に応じたゲーム画像を前記メッセージ表示部に表示させるゲーム制御部と、
を備えることを特徴とするメッセージ管理装置。
前記メッセージ表示部に前記ゲーム画像が表示されずに、前記複数の利用者から送信されたメッセージが表示される態様を第1表示態様とし、前記メッセージ表示部に前記ゲーム画像と、前記複数の利用者から送信されたメッセージとが表示される態様を第2表示態様としたとき、
前記ゲーム制御部は、前記第2表示態様において、前記複数の利用者から送信されたメッセージを前記メッセージ表示部の一部の領域に表示させ、前記ゲーム画像の全部または一部を前記メッセージ表示部の残りの領域に表示させる
ことを特徴とする請求項1乃至3のいずれかに記載のメッセージ管理装置。
メッセージを入力するメッセージ入力部と、送信した利用者の情報と関連付けて送信されたメッセージを表示するメッセージ表示部とを含んで構成されるチャット・ユーザインターフェースによって、グループを構成する複数の利用者のそれぞれから送信されたメッセージを、当該利用者の間で閲覧可能に提供するメッセージ管理方法であって、
ゲームの開始指示を受け付けるステップと、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であるか否かを判断するステップと、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であると判断した場合に、前記開始指示によって開始させたゲームの進行を前記命令に応じて制御するとともに、当該命令に応じたゲーム画像を前記メッセージ表示部に表示させるステップと、
を備えることを特徴とするメッセージ管理方法。
メッセージを入力するメッセージ入力部と、送信した利用者の情報と関連付けて送信されたメッセージを表示するメッセージ表示部とを含んで構成されるチャット・ユーザインターフェースによって、グループを構成する複数の利用者のそれぞれから送信されたメッセージを、当該利用者の間で閲覧可能に提供するサーバと通信可能なコンピュータを、
ゲームの開始指示を受け付ける開始受付部と、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であるか否かを判断するメッセージ判別部、および、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であると判断された場合に、前記開始指示によって開始させたゲームの当該命令に応じた制御を行い、当該命令に応じたゲーム画像を前記メッセージ表示部に表示させるゲーム制御部、
として機能させることを特徴とするプログラム。
メッセージを入力するメッセージ入力部と、送信した利用者の情報と関連付けて送信されたメッセージを表示するメッセージ表示部とを含んで構成されるチャット・ユーザインターフェースによって、グループを構成する複数の利用者の端末装置のそれぞれから送信されたメッセージを、前記端末装置に閲覧可能に提供するコンピュータを、
ゲームの開始指示を受け付ける開始受付部と、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であるか否かを判断するメッセージ判別部、および、
前記メッセージ入力部で入力されたメッセージが前記ゲームの進行に対応した命令であると判断された場合に、前記開始指示によって開始させたゲームの当該命令に応じた制御を行い、当該命令に応じたゲーム画像を前記メッセージ表示部に表示させるゲーム制御部、
として機能させることを特徴とするプログラム。
【発明を実施するための形態】
【0012】
<実施形態の概要>
まず、実施形態に係るメッセージ管理装置の概要について説明する。
このメッセージ管理装置を含むシステムの管理によって、利用者の端末装置では、グループを構成するメンバーのそれぞれから送信されたメッセージを当該メンバー同士で閲覧させるために、
図15に示されるようなグラフィカルなチャット・ユーザインターフェースが提供される。
この図において、チャット・ユーザインターフェースは、メッセージ入力部211とメッセージ表示部212とを含み、このうち、メッセージ入力部211は、文字情報を入力するための領域である。このメッセージ入力部211に文字情報が入力された状態で、ボタン273が操作されると、当該文字情報がメッセージの一部としてSNSサーバに送信される。他の利用者も同様にしてメッセージをSNSサーバに送信するので、当該SNSサーバには、複数の利用者によるメッセージが蓄積されることになる。
メッセージ表示部212には、SNSサーバに蓄積されたメッセージが送信順に表示される。詳細には同図に示されるように、吹き出しによる本文(文字情報)や、投稿者(送信者)を示すプロフィール画像、投稿者を示すアバターなどを含むメッセージが送信順で表示される。これによって、利用者同士では、投稿されたメッセージを時系列の順で互いに閲覧することができるので、一種のチャット状態となる。
【0013】
このようなチャット状態において、予め定められた条件が充足されたときにゲームが開始し、
図19に示されるように、メッセージ表示部212にあっては、例えば下側では、当該ゲームを示すゲーム画像が表示される一方、上側では、メッセージが引き続き表示される。
ゲームを進行させるためのゲーム命令の入力は、本実施形態ではチャットから引き続いて上記チャット・ユーザインターフェースが使用される。例えばリバーシのゲーム画像では、コマを置くことができるマスに数字が付されて表示される一方、ゲームのプレイヤは、当該数字をキーワードとして含む本文をメッセージ入力部211に入力し、メッセージとして送信することによって、ゲーム命令を入力することになる。
このため、
図20に示されるように、ゲームに参加している利用者は、チャットをしつつ、ゲームに興じることができるし、ゲームに参加していない利用者も、当該ゲームのギャラリーとして、または、ゲームとは無関係にチャットを続けることができる。
このため、実施形態にあっては、インターフェースの変更を少なくした上で、メッセージの閲覧等のサービスに、利用者にとって面白みがあり、かつ、場の雰囲気を盛り上げる機能を付加して提供することができる。
【0014】
ところで、チャット・ユーザインターフェースのメッセージ入力部211によってゲーム命令を入力する構成においては、次の点を考慮して、メッセージ表示部212におけるメッセージ表示やゲーム画像を制御する必要がある。すなわち、入力者(投稿者)がゲームのプレイヤであるか否か、ゲームがターン制であれば、入力者のターンであるか否か、そもそも入力された文字情報がゲーム命令を含むのか否か、などによってメッセージ表示やゲーム画像を制御する必要がある。
本実施形態では、ゲームが進行しているときに、これらの点を考慮して、メッセージ表示部212の表示内容を制御している。このため、ゲーム命令の入力にチャット・ユーザインターフェースを用いる場合であっても、メッセージ表示部212の表示が適切に制御されることになる。
【0015】
次に、実施形態の詳細について図面を参照して説明する。
【0016】
<全体構成>
図1は、実施形態に係るシステムの全体的な構成を示すブロック図である。
この図に示されるように、システム1では、複数の端末装置20−1、20−2、20−3、…が、移動通信網Nb、ゲートウェイ15およびインターネットNaを介してSNSサーバ10に接続された構成となっている。
なお、以下において、端末装置20−1、20−2、20−3、…については、端末装置を特定せずに一般的に説明するので、符号における「−(ハイフン)」以下を省略して単に「20」とする。
【0017】
SNSサーバ10は、SNS(Social Networking Service)の運営者によって運営され、SNS会員(以下、単に「会員」という。)同士が交流するためのソーシャル・ネットワーキング・サービスを提供する。このサービスには、グループを構成する複数の利用者同士にメッセージを閲覧可能に提供したり、各種のゲームを提供したり、することなどが含まれる。このような各種サービスを提供するため、SNSサーバ10は、会員に関する情報や会員から送信されたメッセージなどを管理したり、各種の情報をテーブル化して記憶したりする。
なお、本実施形態では、SNS会員の一部に当該メッセージを閲覧させるサービスを提供するが、後述するように、SNSと切り離した独立のサービスであっても良い。
【0018】
図2は、SNSサーバ10のハードウェア構成を示すブロック図である。この図に示されるように、SNSサーバ10は、装置全体を制御するCPU(Central Processing Unit)101と、CPU101の主記憶部として機能するRAM(Random Access Memory)102と、ブートプログラムなどを記憶したROM(Read Only Memory)103と、ネットワークを介して通信するためのインターフェース(I/F)105と、時間情報を出力するRTC(Real Time Clock)106と、各種のプログラムやデータを記憶するストレージユニット108と、を含む。ストレージユニット108では、データベース118が構築されるとともに、CPU101によって管理される。
【0019】
なお、データベース118によって管理されるデータ等の詳細については後述する。
また、SNSサーバ10は、
図1においては1台で構築されているが、2台以上に分散させるとともに外部からみたときに仮想的に1台であるかのようにみえる構成としても良い。一方で、SNSサーバ10の一部の機能を他のサービスを提供しているサーバで構築しても良い。また、SNSサーバ10が中継サーバを介して端末装置20と接続するように構成しても良い。
【0020】
端末装置20は、例えば利用者が操作する携帯電話機である。この端末装置20は、表示パネル210に重ねられたタッチパネル220を有し、利用者が表示パネル210に表示された画面に対してタッチ操作等することで、必要な情報の入力や各種の指示が与えられる構成となっている。
【0021】
図3は、端末装置20のハードウェア構成を示すブロック図である。この図に示されるように、端末装置20は、CPU201と、メモリ202と、通信部204と、RTC206と、表示パネル210と、タッチパネル220と、を含む。
【0022】
このうち、CPU201は端末装置20の全体を制御し、メモリ202は、基本プログラムや、SNSサーバ10から各種のサービスの提供を受けるためのアプリケーションプログラム、各種のデータなどを記憶する。ここでいうアプリケーションプログラムは、メッセージの閲覧(チャット)機能や、当該チャットにおけるユーザインターフェースでゲームを提供する機能などを実行するものであり、SNS運営者によって提供されるとともに、特定のサイトからダウンロードされて、端末装置20にインストールされている。通信部204は、移動通信網Nbなどを介してSNSサーバ10と通信する。RTC206は、現在時刻の時間情報を出力する。
【0023】
表示パネル210は、例えば液晶表示装置や有機EL(Electro Luminescence)装置などのディスプレイである。タッチパネル220は、詳細な説明については省略するが、表示パネル210によって表示された画面のタッチ位置(XY座標値)を検出し、検出したタッチ位置を示す位置情報をCPU201に供給する。CPU201(後述する操作検出部231)は、タッチパネル220からの位置情報に基づいて、タッチ位置の移動方向や、移動速度、タッチ操作の種類等を検出する。
ここで、検出可能なタッチ操作の種類には、例えばタップ、フリック、ドラッグ、ピンチ等が含まれる。このうち、タップとは、表示画面を指で軽く叩く操作である。フリックとは、画面に表示された対象物を指で軽く払う操作である。ドラッグとは、画面に表示された対象物を指で接触させた状態で移動させる操作である。ピンチとは、表示画面に二本の指を接触させた状態で広げたり狭めたりする操作である。
【0024】
なお、端末装置20は、移動通信網Nbに限られず、無線LAN(Local Area Network)に接続される構成であっても良い。無線LANに接続される場合、端末装置20は、無線基地局(アクセスポイント)およびインターネットNaを経由して、上記SNSサーバ10に接続される。また、端末装置20は、携帯電話機に限られず、タブレット型コンピュータやPDA(Personal Digital Assistant)などでも良い。
【0025】
図4は、メッセージの閲覧機能が利用者の端末装置20に提供される際に、SNSサーバ10および当該端末装置20で構築される機能ブロックを示す図である。
この機能ブロックは、SNSサーバ10においては、所定のプログラムを実行することによって、端末装置20においては、予めインストールされた上記アプリケーションプログラムを実行することによって、それぞれ構築される。
なお、
図1におけるインターネットNaや、ゲートウェイ15、移動通信網Nb、また、
図2におけるI/F105、
図3における通信部204などについては、データ等の伝送経路に過ぎないので、
図4においては図示を省略している。
【0026】
図4に示されるように、SNSサーバ10側では、データベース118とともに、当該データベース118を管理する管理部121が構築されるとともに、データベース118には、ユーザ登録テーブルTB1と、グループ登録テーブルTB2と、メッセージ登録テーブルTB3と、ゲーム進行過程記録テーブルTB4とが構築される。なお、これらのテーブルの詳細については、後述することにする。
また、SNSサーバ10は、複数の端末装置20にデータ等を送信し、逆に、複数の端末装置20からデータ等を受信する。
図4において、管理部121から端末装置20以外に向かう矢印は、当該端末装置20以外の端末装置にもデータ等が出力されることを示し、同様に、端末装置20以外から管理部121に向かう矢印は、他の端末装置からもデータ等が入力されることを示している。
【0027】
一方、端末装置20側では、CPU201がアプリケーションプログラムを実行することによって、操作検出部231、表示制御部232、メッセージ判別部235、記憶部236、ゲーム制御部237、開始受付部238および参加受付部239が構築される。また、表示パネル210の表示領域は、上述したようにメッセージ入力部211とメッセージ表示部212とに分けられる。
【0028】
操作検出部231は、上述したようにタッチパネル220からの位置情報に基づいて、タッチ位置や、その移動方向、移動速度、タッチ操作の種類等を検出して出力する。
表示制御部232は、操作検出部231や、ゲーム制御部237、管理部121からの情報に基づいて表示パネル210の表示を制御する。
【0029】
メッセージ判別部235は、ゲームが開始している期間において自己の端末装置20の利用者にゲームのターンが到来していれば、入力されたメッセージに当該ゲーム命令が含まれているか(または当該ゲーム命令であるか)否かを判別する。メッセージ判別部235は、ゲーム命令が含まれていれば、当該ゲーム命令をゲーム制御部237および管理部121にそれぞれ供給する一方、当該メッセージに当該ゲーム命令が含まれていなければ、当該メッセージを管理部121に供給する。
なお、メッセージ判別部235は、ゲームの開始前であれば、または、ゲームが開始している期間において自己の端末装置20の利用者がゲームのプレイヤ(ゲーム参加者)でなければ、入力されたメッセージを判別することなく、管理部121に転送する。
【0030】
ここで、メッセージ判別部235は、メッセージの判別にあたって、記憶部236の記憶内容を参照する。
【0031】
図8は、記憶部236の記憶内容の一例を示す図である。この図に示されるように、キーワードには、ゲーム命令、ゲーム演出、ゲーム開始またはゲーム参加のいずれかであることを示す識別子とともに、指示内容が対応付けられて登録されている。
例えば「1」のキーワードには、ゲーム命令であることを示す識別子と、「1のマスにコマ(石)をおく」という内容とが対応付けられている。
なお、この内容は、実際にはゲームの種類に応じて適切に変更される。上記の例は、ゲームがリバーシや、チェス、将棋などを想定したものであるが、例えばゲームが麻雀であれば、キーワードが「1」に対応したゲーム命令は「(数字の)1が付された牌を切る」という内容になる。また例えば、ゲームがしりとりであれば、メッセージの本文自体における最初の文字が直前メッセージの最終文字に一致しているか、メッセージの本文自体における最終の文字が禁止文字「ん」でないか、および、本文自体が既出でないかを判別すれば良いので、ゲーム命令を特別に記憶する必要はない。
【0032】
メッセージ判別部235は、メッセージの中に、ゲーム命令が含まれているかを判別する場合、識別子がゲーム命令であるキーワードのみを検索し、ゲーム演出に関するものが含まれているかを判別する場合、識別子がゲーム演出であるキーワードのみを検索する。
【0033】
また、
図8の例では、キーワードがゲーム命令またはゲーム演出に一対一に対応しているが、複数のキーワードをゲーム命令またはゲーム演出に多対一に対応させても良い。
また、識別子については、ゲーム命令、ゲーム演出、ゲーム開始またはゲーム参加を2つ以上兼用させても良い。
【0034】
説明を再び
図4に戻すと、ゲーム制御部237は、管理部121から取得したゲームのステータス(後述する)や、メッセージ判別部235から供給されたゲーム命令にしたがってゲームの進行を制御するとともに、進行に応じたゲーム画像を作成して表示制御部232に供給する。
【0035】
開始受付部238は、ゲームが進行しておらず、メッセージの閲覧のみがなされている状態(ゲーム非進行の状態)において、ゲームの開始(発動)の指示を受け付けるものである。
参加受付部239は、メッセージの閲覧においてゲーム開始が指示されているものの、当該ゲームの進行に必要なプレイヤが全員分揃っていない状態(ゲーム発動中)において、当該ゲームへの参加の指示を受け付けるものである。
なお、本実施形態では、ゲーム開始を指示した利用者が当該ゲームのプレイヤに設定されるが、ゲーム開始を指示した利用者とプレイヤの設定とを別々に分けても良い。
ゲーム開始やゲーム参加の条件については、種々のものが想定されるが、本実施形態では、予め定められたキーワードをメッセージに含ませることにする。例えばゲーム非進行の状態においてゲームの具体的名称をキーワードとしてメッセージに含ませれば、当該ゲームの開始となり、当該メッセージの投稿者がゲームのプレイヤの1人として決定され、また、例えばゲーム発動中において「参加」の単語をキーワードとしてメッセージに含ませれば、当該ゲームのプレイヤの1人として決定されるような構成となっている。
【0036】
なお、ゲーム開始/参加の管理やゲームの進行管理については、SNSサーバ10の側で一元化する必要から、管理部121で実行する構成となっている。このため、開始受付部238が適切なゲーム開始の指示を受け付けると、当該開始の指示を伴うメッセージが、メッセージ判別部235を介して管理部121に送信される構成となっている。同様に、参加受付部239が適切なゲーム参加の指示を受け付けると、当該参加への指示を伴うメッセージがメッセージ判別部235を介して管理部121に送信される構成となっている。
また、開始受付部238および参加受付部239が、キーワードによってゲーム開始/参加を受け付けるので、記憶部236には、
図8に示したように、ゲーム命令に対応したキーワードのほかに、ゲームの名称や特定の単語などがキーワードとして記憶されている。このため、
図4において破線で示されるように、開始受付部238および参加受付部239が、記憶部236を参照する構成となる。
【0037】
次に、データベース118で管理されるテーブル等について説明する。
【0038】
<ユーザ登録テーブル>
図5は、ユーザ登録テーブルTB1の一例を示す図である。
ユーザ登録テーブルTB1は、会員の情報等を記憶するテーブルであり、図に示されるように、会員IDと、利用者IDと、利用者情報(利用者の名前情報、アバター情報およびプロフィール画像情報)とを会員毎に対応付けて記憶する。
これらのうち、会員IDは、SNS会員を例えば複数の英数字で一意に識別する情報である。利用者IDは、メッセージの閲覧を提供する利用者を、システム1の内部で管理する例えば通し番号である。ここでは、会員の一部に当該メッセージを閲覧させることを想定しているので、会員IDと利用者IDとが分けて管理されている。利用者の名前情報は、SNSにおいて利用者同士で呼び合う際に使用する名前を示し、実名やニックネームが用いられる。アバター情報は、当該利用者を表象するアバターについての情報を示し、プロフィール画像情報は、当該利用者を示す画像を示し、いずれも利用者によって選択または編集されたものが用いられる。
【0039】
なお、アバターは、送信者(利用者)を表象する一種のキャラクター画像であり、例えば予め作成/選択されて、例えばSNSサーバ10に登録される。これにより、各利用者には、それぞれアバターが関連付けられることになる。なお、アバターは、例えば頭部、胴部、両手、両足に相当するブロックでデフォルメして、これらのブロックの連結部において一定のルールでモーションが与えられる構成となっている。
また、アバター情報およびプロフィール画像情報については、実体そのものではなく、実体のリンク先(参照先)であっても良い。いずれにしても、利用者ID等から、アバター情報およびプロフィール画像情報を取得できる手段が講じられていれば良い。
【0040】
<グループ登録テーブル>
本実施形態において、メッセージを閲覧させるサービスは、利用者IDで識別される利用者のうち、予め作成されたグループ(ルーム)の構成員(メンバー)に対して提供される。1つのグループは、2人以上のメンバーで構成され、いずれのメンバーも、ユーザ登録テーブルTB1において利用者IDが登録された利用者であることを条件としている。このようなグループのメンバーを管理するのが、グループ登録テーブルTB2である。
【0041】
図6は、グループ登録テーブルTB2の一例を示す図である。この図に示されるように、グループ登録テーブルTB2は、グループを一意に識別するグループIDと、グループの名称と、グループを構成するメンバーとして例えばAからEまでの5人の利用者IDとをグループ毎に対応付けて記憶する。なお、グループメンバーの<null>は、未設定の空き状態であることを示している。
【0042】
図6の例において、矢印で示されるグループは、グループIDが「xx01」であって、グループ名称が「三十路の館」であり、利用者IDが「3」、「8」、「2」、「5」の4名のメンバーによって構成されていることを示している。ここで、利用者IDが「3」、「8」、「2」、「5」であるメンバーの利用者情報などについては、
図5に示したユーザ登録テーブルTB1を参照することで取得することができる。
なお、ここでは説明の便宜のために、グループを構成するメンバー数を「5」としているが、これに限定する趣旨ではなく、4人以下でも、6人以上であっても良い点については、いうまでもない。
【0043】
<メッセージ登録テーブル>
システム1においては、当該グループのメンバーによって送信されたメッセージを送信時間の順で表示(タイムライン表示)する、というサービスが当該グループを構成するメンバーのそれぞれに提供される。このようにメッセージをタイムライン表示するために管理するのが、メッセージ登録テーブルTB3である。
【0044】
図7は、メッセージ登録テーブルTB3における記憶内容の一例を示す図である。この図に示されるように、メッセージ登録テーブルTB3では、投稿されたメッセージを一意に識別する投稿IDと、メッセージを投稿(送信)した投稿者(利用者)の利用者IDと、当該メッセージがどのグループに対応して送信されたのかを示すグループIDと、メッセージの投稿日時(送信日時)を示す送信日時情報と、動作IDと、をメッセージ毎に対応付けて記憶する。
なお、メッセージ本体については、投稿IDと関連付けられて別のテーブル(図示省略)で管理・記憶される。
【0045】
本実施形態では、利用者がメッセージを送信する際に、当該メッセージの表示時においてアバターにモーションを与えて表示させることがオプションとして用意されている。動作IDは、アバターに与えるモーションを規定するモーション情報を一意に識別する情報である。動作IDはオプションであるから、必ずしもメッセージに対応付けられて記憶されるという性質のものではない。
【0046】
<ゲーム進行過程記録テーブル>
システム1においては、当該グループのメンバーによって送信されたメッセージが閲覧されているときに、所定の条件が充足されると、メッセージのタイムライン表示とともに、ゲームが開始する。このときのゲームの進行過程を示す情報を記憶するのがゲーム進行過程記録テーブルTB4である。本実施形態では、ゲームとして、ゲーム進行の単位であるターンがルールにしたがってプレイヤに順番に到来するターン制ゲームを想定している。このため、ゲーム進行過程記録テーブルTB4では、各ターンでのプレイヤの操作や選択などを示す情報が時間の順で記憶される。
具体的には、ゲームが例えばリバーシであれば、白黒のコマがどの順番でどのマス目に置かれたのかを示す情報が逐次記録される。また、チェスや将棋であれば、棋譜に相当する情報が記録される。
なお、ターン制以外のゲーム、例えばシューティングゲームであれば、銃などの飛び道具を、どの方向に、どれだけ移動させて、どのタイミングで発射させたのかを示す情報を時間の順で記録すれば良い。
いずれにしても、あるグループのメンバーが、あるタイミングでメッセージを閲覧しようとした場合に、他のメンバーによってゲームがすでに進行しているときでも、ゲーム進行過程記録テーブルTB4を参照することによって、当該タイミングにおけるゲームの進行過程を再現できるようになっていれば良い。
【0047】
次に、システム1において、メッセージの閲覧機能が実行される際の閲覧処理について説明する。
【0048】
図9および
図10は、閲覧処理の動作を示すフローチャートである。
まず、端末装置20において、利用者がメッセージを閲覧するために所定の操作をしたとき、例えば当該機能を示すアイコンなどをメインメニュー画面(図示省略)においてタップ操作したとき、操作検出部231が当該タップ操作を検出して、SNSサーバ10における管理部121に通知する。管理部121は、グループ登録テーブルTB2にアクセスして、当該端末装置20の利用者をメンバーとするグループを特定するとともに、当該グループに関する情報を取得し、ユーザ登録テーブルTB1にアクセスして、特定したグループのメンバーに関する利用者情報を取得して、当該端末装置20の表示制御部232に転送する。表示制御部232は、転送された情報に基づいて、メッセンジャートップ画面を作成して、表示パネル210に表示させる。これにより、表示パネル210においては、メッセンジャートップ画面が表示される(ステップSa11)。
【0049】
図12は、メッセンジャートップ画面の一例を示す図である。
この図に示されるように、メッセンジャートップ画面においては、端末装置20の利用者がメンバーとして登録されているグループが、グループ名称、メンバーのプロフィール画像、当該グループのメンバーによる最終発言日時などとともに、例えば最新の投稿があった順番でタイムライン表示される。
【0050】
また、メッセンジャートップ画面においては、グループの一覧のほか、各種のソフトウェアボタンや各種案内が表示される。
このうち、ボタン251は、新規グループの作成を指示するものである。
領域252では、端末装置20の利用者に関係する「お知らせ」が告知される。
マーク253は、それが付されたグループにおいて当該端末装置20の利用者が未だに閲覧していないメッセージがあることを示している。
ボタン254、255、256のそれぞれは、各グループに対応してそれぞれ表示される。このうち、ボタン254は、対応するグループのメッセージを閲覧するページへの移動を、その操作によって指示するものであり、ボタン255は、そのグループの編集を指示するものであり、ボタン256は、そのグループから退会を指示するものである。
ボタンFinは、このメッセージ閲覧の終了(メインメニュー画面へ戻ること)を指示するものである。
【0051】
なお、各グループにおいて、左端のメンバーのプロフィール画像を囲む太枠は、当該グループの管理者(作成者)であることを示す。
また、一覧すべきグループが多数あって、表示パネル210で1度に表示しきれない場合、例えばフリックや、スライドバーの移動などの操作によって、上下にスクロール表示される。各グループの表示順序は、最新の投稿があった順に限られず、グループの作成順(新しい順、古い順)、グループメンバーの多い順、少ない順などでも良い。
端末装置20の利用者をメンバーとするグループが存在しない場合、特に図示しないが、その旨の警告がメッセンジャートップ画面に表示される。
【0052】
メッセンジャートップ画面において、操作検出部231は、タッチパネル220に対して適切な操作がなされたのか否かを判別する(ステップSa12)。ここで、適切な操作とは、予め想定された操作、例えばボタン表示部分などの操作をいう。操作がなければ、または、操作があっても想定されていない無効な領域に対する操作であれば(ステップSa12の判別結果が「No」であれば)、処理手順がステップSa11に戻る。このため、何らかの適切な操作があるまで、メッセンジャートップ画面の表示が継続することになる。
適切な操作がなされたとき(ステップSa12の判別結果が「Yes」になったとき)、操作検出部231は、当該操作が終了の指示、すなわちボタンFinの表示部分への操作であったか否かを判別する(ステップSa13)。
【0053】
終了の指示であれば(ステップSa13の判別結果が「Yes」であれば)、操作検出部231は、その旨を表示制御部232に通知し、当該表示制御部232は、閲覧処理を終了させてメインメニュー画面の表示に戻す。
終了の指示でなければ(ステップSa13の判別結果が「No」であれば)、操作検出部231は、当該操作がグループ選択の指示、すなわち、いずれかのグループに対応したボタン254の表示部分への操作であったか否かを判別する(ステップSa21)。
【0054】
当該操作がグループ選択でなければ(ステップSa21の判別結果が「No」であれば)、処理手順がステップSa29に移行する。ステップSa29においては、当該操作に対応した処理が実行される。このような処理の例としては、グループの一覧の表示部分がフリックされたときに当該表示部分をスクロール表示させる処理や、領域252がタップ操作されたときに当該端末装置20の利用者に関係する「お知らせ」を例えば別画面で詳細に表示させる処理、ボタン255の表示部分が操作されたときに対応するグループを編集させる処理、ボタン256の表示部分が操作されたときに対応するグループから退会させる処理などが挙げられる。ステップSa29の後、ステップSa11におけるメッセンジャートップ画面の表示に戻る。
【0055】
また、当該操作がグループの選択であれば(ステップSa21の判別結果が「Yes」であれば)、操作検出部231は、選択されたグループを管理部121に通知し、管理部121は、当該グループのステータスを表示制御部232およびメッセージ判別部235に通知する。
【0056】
ここで、ステータスとは、選択されたグループのメンバーによるメッセージの閲覧の際に、当該閲覧がいかなる状態にあるのかを示す情報であり、本実施形態では、次の3状態が想定されている。すなわち、ステータスとしては、ゲーム非進行、ゲーム発動中およびゲーム進行中の3状態が想定されている。このうち、ゲーム非進行とは、ゲームが進行しておらず、メッセージの閲覧のみがなされている状態をいう。ゲーム発動中とは、メッセージの閲覧においてゲームの開始が指示されているものの、当該ゲームの進行に必要なプレイヤが全員分揃っていない状態である。また、ゲーム進行中とは、ゲームの進行に必要なプレイヤが全員分揃った状態であって、ゲームの進行が可能な状態またはゲームが進行している状態をいう。
このようなステータスは、SNSサーバ10における管理部121によって、グループ毎に、かつ、当該グループにおける状態が変化する毎に変更される。なお、管理部121がステータスを変更、管理する処理については後述することにする。
【0057】
さらに、管理部121は、選択されたグループの通知を受けたとき、第1に、グループ登録テーブルTB2にアクセスして、選択されたグループのメンバー(利用者ID)を特定し、第2に、ユーザ登録テーブルTB1にアクセスして、特定したメンバーに関する利用者情報を読み出し、表示制御部232に転送する。
加えて、管理部121は、第3に、メッセージ登録テーブルTB3にアクセスして、選択されたグループのグループIDに対応付けられた投稿IDを、送信日時情報で規定される時間の順で読み出し、第4に、読み出された投稿IDに対応するメッセージを取得して、表示制御部232に転送する。
また、管理部121は、選択されたグループの通知を受けたときに、当該グループのステータスがゲーム進行中であれば、ゲーム進行過程記録テーブルTB4にアクセスして、当該ゲームの進行過程を示す情報を読み出し、表示制御部232に転送する。
このようにして表示制御部232は、選択されたグループのステータスや、当該グループのメンバーに関する利用者情報、当該メンバーによって送信されたメッセージ、ゲームが進行していれば、そのゲームの進行過程を示す情報を、取得する(ステップSa22)。
【0058】
表示制御部232は、選択されたグループのメンバーによるメッセージ内容を、当該グループのステータスに応じて表示する処理を実行する。この処理によって、グループの選択がなされた端末装置20では、表示パネル210の表示領域にメッセージ表示画面が表示される(ステップSa23)。
【0059】
このメッセージ表示画面には、グループのステータスがゲーム非進行である場合の第1表示態様と、ゲーム発動中/ゲーム進行中である場合の第2表示態様との2種類がある。第1表示態様は、ゲーム画像が表示されずに、アバターやプロフィール画像を含むメッセージだけが表示される態様をいい、第2表示態様は、メッセージとともに、ゲーム画像が表示される態様をいう。
ここでまず、第1表示態様および第2表示態様において共通のメッセージの表示について説明する。
【0060】
図14は、メッセージ表示画面の配置例を示す図であり、ステータスがゲーム非進行である場合における第1表示態様で示している。
この図に示されるように、表示パネル210の表示領域には、メッセージ入力部211と、メッセージ表示部212とが含まれる。このうち、メッセージ表示部212では、メッセージが、送信日時の順番で左右交互に、かつ、新しいものほど画面の上方に向かうように配列されて表示される。
詳細には、
図14に示されるように、表示制御部232は、あるグループで最新に送信されたメッセージを、図において右上端の領域(1)に配置させるとともに、2番目に新しいメッセージを、領域(1)に対して左斜め下側の領域(2)に配置させ、3番目に新しいメッセージを、領域(2)に対して右斜め下側の領域(3)に配置させ、以下繰り返すように、メッセージを左右に交互に配置させる。
なお、メッセージは、送信日時が新しいものほど画面の下方に向かうように左右交互に配列させても良いが、ここでは便宜的に、同図に示されるように、古いものほど画面の下方に向かうように配列させた例で説明する。
【0061】
メッセージには、メッセージの本文を示す文字情報や、当該メッセージを送信した利用者に関する利用者情報(名前情報、アバター情報およびプロフィール画像情報)が含まれる。さらに、上述したように、オプションとしてアバターにモーションを与えることが設定されたとき、メッセージには、当該モーションを識別する動作IDが含まれる。このため、本実施形態において、メッセージには、利用者情報や送信時間を除けば、
図13においてタイプ(A)、(B)で示されるように、文字情報に動作IDが含まれるものと、含まれないものとの2通りが想定される。すなわち、タイプ(A)にあっては、文字情報を含むが、動作IDを含まず、タイプ(B)にあっては、文字情報と動作IDとの双方を含む。
【0062】
メッセージの表示は、2通りに対して、同図右欄で示されるようなものとなる。詳細には、タイプ(A)では、文字情報に基づいた本文が吹き出しで表示されるとともに、利用者IDに基づくプロフィール画像と、送信日時情報に基づいて発信された時間情報とがそれぞれ吹き出しとは別個に表示される。
なお、本実施形態において、メッセージに動作IDが含まれない場合をタイプ(A)としているが、メッセージに、予め動作IDなしを示す情報を含ませて、動作IDなしの情報が含まれる場合をタイプ(A)としても良い。
【0063】
タイプ(B)では、タイプ(A)と同様な吹き出しとプロフィール画像と時間情報とともに、モーションを伴うアバターが表示される。このアバターは、利用者IDに対応したアバター情報で規定されるものであり、このモーションは、動作IDに対応するモーション情報にしたがっている。
【0064】
動作IDは、実体(モーション情報)でなく、識別するための情報に過ぎないが、SNSサーバ10では、データベース118における別のテーブルに対し、または、別途のサーバに対し、当該動作IDに対応するモーション情報を要求することで、実体であるモーション情報を取得することができる。
【0065】
なお、吹き出しの大きさ、および、吹き出しに対する文字の配置などは、文字数や改行などにより適切に制御される。
また、
図13の右欄は、メッセージの表示が画面において右側に配置された場合の例である。メッセージの表示が画面において左側に配置された場合には、同図の例を左右反転としたものとなる(
図13では図示省略)。
自己が送信したメッセージである場合に、他のメンバーと区別する意味で、プロフィール画像を非表示としても良いし、他のメンバーと区別するように自己が送信したメッセージの吹き出しの色または形状を、他の吹き出しのものと異ならせるようにしても良い。
【0066】
なお、
図15は、メッセージ表示画面の具体例を示す図であり、詳細には、
図6のグループ登録テーブルにおいて、グループIDが「xx01」のグループのメンバーが、
図7のメッセージ登録テーブルに登録されたようなメッセージを送信した場合であって、当該グループのステータスがゲーム非進行であるときに、当該メンバーの端末装置20で表示される例である。
【0067】
一方、ステータスがゲーム発動中またはゲーム進行中である場合の第2表示態様では、メッセージ表示部212の一部の領域にメッセージが表示され、メッセージ表示部212の残りの領域に、発動または進行したゲームのゲーム画像が表示される。具体的には、
図17乃至
図24に示されるように、メッセージ表示部212の上側領域において、上述したメッセージが表示される一方、メッセージ表示部212の下側の領域において、ゲーム画像、図示の例ではリバーシの画像が表示される。
なお、ゲーム画像の一部については、例えば
図20に示されるようにメッセージの表示、ここでは吹き出しの表示に重なっても良い。また、ゲーム画像(盤面)については全部でなく、例えばゲームの進行に影響がない領域を省略して一部について表示しても良い。
また、第2表示態様においても、第1表示態様と同様にメッセージ入力部211が表示パネル210の表示領域に表示される。
【0068】
メッセージ表示画面では、メッセージ入力部211、メッセージ表示部212のほか、ボタン271、272、273が表示される。このうち、ボタン271は、1つ前のメッセンジャートップ画面に戻ることを指示するソフトウェアボタンである。ボタン272は、アバターに与える動作を指定するソフトウェアボタンである。ボタン273は、メッセージの内容を確定させて送信を指示するソフトウェアボタンである。
【0069】
さて、メッセージ表示画面において、操作検出部231は、タッチパネル220に対して適切な操作がなされたのか否かを判別する(ステップSa24)。操作がなければ、または、操作があっても想定されていない無効な領域に対する操作であれば(ステップSa24の判別結果が「No」であれば)、処理手順がステップSa22に戻る。このため、何らかの適切な操作があるまで、メッセージ表示画面の表示が継続することになる。
【0070】
適切な操作がなされたとき(ステップSa24の判別結果が「Yes」になったとき)、操作検出部231は、まず、当該操作がメッセージの送信の指示、すなわちボタン273の表示部分へのタップ等のタッチ操作であったか否かを判別する(ステップSa25)。
ボタン273への操作でなければ(ステップSa25の判別結果が「No」であれば)、操作検出部231は、次に当該操作がメッセンジャートップ画面に戻る指示、すなわちボタン271の表示部分への操作であったか否かを判別する(ステップSa26)。
当該操作がボタン271の表示部分のタッチ操作であれば(ステップSa26の判別結果が「Yes」であれば)、操作検出部231は、その旨を表示制御部232に通知し、表示制御部232は、再びメッセンジャートップ画面を表示させる。
【0071】
また、当該操作がボタン271の表示部分への操作でなければ(ステップSa26の判別結果が「No」であれば)、操作検出部231は、当該操作の内容を表示制御部232に通知して、表示制御部232は、当該操作の内容に応じて表示パネル210の表示を制御する(ステップSa27)。
例えばメッセージ入力部211への文字入力の操作であれば、表示制御部232は、ソフトウェア・キーボードを別途表示するとともに(図示省略)、その操作によって入力された文字をメッセージ入力部211に反映させる。
また、ボタン272への操作であれば、表示制御部232は、例えば
図26に示されるような動作選択画面を表示させて、アバターに付与すべきモーションの選択を利用者に促す。なお、
図26に示した例では、「パンチ」、「謝る」、「屈服する」、「イライラ」などのモーション275が複数例示されており、このうち、いずれかを利用者が選択するとともに、ボタン276の表示部分をタッチ操作することによって、選択されたモーションに対応した動作IDがメッセージに含められる。
【0072】
一方、メッセージ表示画面に対してなされた操作がメッセージの送信の指示、すなわちボタン273の表示部分への操作であれば(ステップSa25の判別結果が「Yes」であれば)、操作検出部231は、当該指示時点においてメッセージ入力部211に入力されたメッセージの本文と、当該送信の指示がなされた日時情報と、動作IDが選択されていれば、その動作IDとを含めたメッセージをメッセージ判別部235に転送する。これを契機として、以下のようなメッセージ判別/送信処理が実行される(ステップSa28)。
【0073】
図10は、閲覧処理のうち、メッセージ判別/送信処理についての詳細を示すフローチャートである。
まず、メッセージ判別部235は、先のステップSa22において通知されたグループのステータスがゲーム進行中であるか否かを判別する(ステップSb11)。ステータスがゲーム非進行またはゲーム発動中であれば(ステップSb11の判別結果が「No」であれば)、メッセージ判別部235は、操作検出部231から転送されたメッセージをSNSサーバ10の管理部121に送信する(ステップSb12)。管理部121が当該メッセージを受信すると、当該メッセージをメッセージ登録テーブルTB3に登録する。
なお、ステップSb12の送信の後、端末装置20における処理手順は再びステップSa22に戻る。このとき、ステップSb12において端末装置20から送信されたメッセージは、メッセージ登録テーブルTB3に登録された後、読み出されて端末装置20に供給されるので、ステップSa23のメッセージ表示画面において当該メッセージは、時系列で最新のものとして追加されて表示されることになる。
【0074】
一方、先のステップSa22において通知されたグループのステータスがゲーム進行中であれば(ステップSb11の判別結果が「Yes」であれば)、メッセージ判別部235は、転送されたメッセージの本文の文字情報を解析する(ステップSb21)。
解析の結果、メッセージ判別部235は、記憶部236に登録されているキーワードのうち、識別子がゲーム演出に関するものが当該文字情報のなかに含まれているか否かを判別する(ステップSb22)。
【0075】
ゲーム演出に関するキーワードが含まれていれば(ステップSb22の判別結果が「Yes」であれば)、当該キーワードに対応した演出処理が実行される(ステップSb23)。詳細には、メッセージ判別部235は、ゲーム演出のキーワードが含まれていれば、当該キーワードに対応する演出内容をゲーム制御部237に通知し、ゲーム制御部237は、通知された演出内容を反映させて、ゲーム画像を作成する。
また、演出内容を、グループにおける他のメンバーの端末装置20にも反映させる場合、メッセージ判別部235は、当該キーワードに対応する演出内容を管理部121にも通知する。なお、演出の具体例については後述する。
一方、ゲーム演出に関するキーワードが含まれていなければ(ステップSb22の判別結果が「No」であれば)、ステップSb23の処理はスキップされる。
【0076】
次に、メッセージ判別部235は、開始受付部238および参加受付部239から進行中のゲームに参加しているプレイヤ(ゲーム参加者)が誰であるかの情報を取得して、送信の指示がなされたメッセージの発言者(自機の端末装置20の利用者)がゲーム参加者であるか否かを判別する(ステップSb24)。
ゲームの参加者でなければ、つまりゲームの非参加者であれば(ステップSb24の判別結果が「No」であれば)、以下のステップSb25、Sb26、Sb29の判別をすることなく、メッセージ判別部235は、操作検出部231から転送されたメッセージを管理部121に送信する(ステップSb12)。
これにより、非参加者によるメッセージは、不要な判別がスキップされてメッセージ登録テーブルTB3に登録される。そして、当該メッセージは、メッセージ表示画面において時系列で最新のものとして追加されて表示されることになる。
【0077】
一方、ゲームの参加者であれば(ステップSb24の判別結果が「Yes」であれば)、メッセージの送信を指示した発言者がゲーム参加者であれば(ステップSb24の判別結果が「Yes」であれば)、次にメッセージ判別部235は、進行中のゲームにおけるターンが当該発言者であるのか否かを判別する(ステップSb25)。
ターンが発言者にあれば(ステップSb25の判別結果が「Yes」であれば)、メッセージ判別部235は、先のステップSb21のメッセージ解析の結果を再度用いて、送信されたメッセージに、記憶部236に登録されているキーワードのうち、今度は識別子がゲーム命令であるものが含まれているか否かを判別する(ステップSb26)。なお、メッセージにゲーム命令が含まれている場合であっても、当該ゲーム命令が、ゲームの進行過程においては不適切であるときがある。例えば、ルールによって置けない地点にコマを置くような命令であるときである。このとき、メッセージ判別部235は、ステップSb26の判別結果を「No」とする。
【0078】
メッセージに適切なゲーム命令が含まれていれば(ステップSb26の判別結果が「Yes」であれば)、メッセージ判別部235は、当該ゲーム命令の指示内容をゲーム制御部237に通知する。ゲーム制御部237は、通知されたゲーム命令に応じてゲームを進行させるとともに、その進行を反映させたゲーム画像を作成して、表示制御部232に供給する。これにより、メッセージ表示部212に、表示されるゲーム画像は、メッセージに含めたゲーム命令を反映したものに更新される(ステップSb27)。
また、他のメンバーの表示内容についても更新させるために、メッセージ判別部235は、当該ゲーム命令を管理部121に通知する。管理部121は、当該ゲーム命令をゲームの進行過程を示す情報として、ゲーム進行過程記録テーブルTB4に記録する。
【0079】
この後、メッセージ判別部235は、ゲーム命令を含むメッセージを管理部121に送信する(ステップSb12)。これにより、メッセージは、メッセージ登録テーブルTB3に登録されるので、メッセージ表示画面において時系列で最新のものとして追加されて表示されることになる。
【0080】
一方、メッセージに適切なゲーム命令が含まれていなければ(ステップSb26の判別結果が「No」であれば)、メッセージ判別部235は、その旨を、ゲーム制御部237を介して表示制御部232に通知する。表示制御部232は、送信しようとしたメッセージにゲーム命令が含まれていない旨を示す警告表示(その1)を、例えば
図27(a)に示されるような表示を他のメッセージと異なる態様で、自己の端末装置20におけるメッセージ表示部212に例えば5秒間表示させる(ステップSb28)。これにより、ターンが到来しているプレイヤがゲーム命令を含んでいないメッセージを送信しようとしたときに、その旨を当該プレイヤが知ることとなる。
【0081】
また、進行中のゲームにおけるターンが当該発言者になければ(ステップSb25の判別結果が「No」であれば)、メッセージ判別部235は、ステップSb26と同様に、当該メッセージにゲーム命令であるものが含まれているか否かを判別する(ステップSb29)。
当該メッセージにゲーム命令が含まれている場合(ステップSb29の判別結果が「Yes」である場合)、それは、ゲーム参加者である利用者が、自己にターンがないにもかかわらず、錯誤等によって、ゲーム命令を含むメッセージを送信しようとしている可能性がある。このため、メッセージ判別部235は、その旨を、ゲーム制御部237を介して表示制御部232に通知する。表示制御部232は、ターンでないにもかかわらず、送信しようとしたメッセージにゲーム命令が含まれている旨を示す警告表示(その2)を、例えば
図27(b)に示されるような表示を他のメッセージと異なる態様で、自己の端末装置20におけるメッセージ表示部212に例えば5秒間表示させる(ステップSb30)。
【0082】
なお、警告表示(その1、その2)は、メッセージを送信しようとした端末装置20のみに表示され、他のメンバーの端末装置20には表示されない。また、他のメッセージと異なる態様としては、吹き出しなしの本文のみの表示や、フォント、文字色などを変更して表示しても良い。
【0083】
また、警告表示の根拠となるメッセージは、当該端末装置20の利用者がボタン273の表示部分を操作して送信を指示したものであることには変わりはない。
詳細には、ステップSb26の判別結果が「No」となる場合、それは、ターンが到来している発言者がゲーム命令を含まないメッセージを意図的に送信しようとしている可能性がある。例えば、ゲームが進行していないときと同じようなメッセージを送信しようとしている場合である。
一方、ステップSb29の判別結果が「Yes」となる場合、それは、ターンが到来していない発言者がゲーム命令を含むメッセージを意図的に送信しようとしている可能性がある。例えば相手プレイヤを騙すことや、相手プレイヤへの混乱を目的としたメッセージを送信しようとしている場合、いわゆる「三味線をひく」場合である。
このため、上記2つの場合であっても、当該メッセージを管理部121に送信することを阻止しない構成となっている。
したがって、警告の根拠となったメッセージは、警告表示の後、管理部121に送信されるので(ステップSb12)、メッセージ登録テーブルTB3に登録される結果、メッセージ表示画面において時系列で最新のものとして追加されて表示されることになる。
【0084】
一方、ステップSb29の判別結果が「No」である場合、それは、自己にターンがないゲーム参加者が、ゲーム命令を含まないメッセージの送信を指示した場合、すなわち、通常のチャットメッセージの送信を指示した場合である。このため、メッセージ判別部235は、操作検出部231から転送されたメッセージを管理部121に送信する(ステップSb12)。これにより、当該メッセージは、メッセージ登録テーブルTB3に登録される結果、メッセージ表示画面において時系列で最新のものとして追加されて表示されることになる。
【0085】
ステップSb12の後、処理手順は、
図9におけるステップSa22に戻る。
【0086】
なお、ステップSb29の判別結果が「Yes」となる場合には、上述したように公正なゲームの進行を妨げる意図が含まれる場合がある。これを防止するため、
図10において※印の破線で示されるように、ゲーム参加者であっても、ターンが到来していない者によるメッセージであれば、ゲーム非参加者によるメッセージと同様に、直ちに管理部121に送信するようにしても良い。
これにより公正なゲームの進行が確保されるとともに、ゲームに対応した命令を含むか否かを判別するメッセージの対象が、ターンが到来しているゲーム参加者によるメッセージに限定されるので、処理手順を簡素化することができる。
【0087】
次に、管理部121で実行されるグループステータス管理処理について説明する。
【0088】
図11は、グループステータス管理処理の動作を示すフローチャートである。
まず、管理部121は、イベントが発生したか否かを判別する(ステップSc11)。ここでいうイベントとは、管理部121が他の各部から通知や各種情報を受け取ったときであり、具体的には、操作検出部231から通知を受け取ったとき、メッセージ判別部235からメッセージや通知を受け取ったとき、ゲーム制御部237からゲーム命令や結果を受け取ったときなどである。
イベントが発生していなければ(ステップSc11の判別結果が「No」であれば)、処理手順はステップSc11に戻る。このため、イベントが発生しない限り、処理手順がステップSc11をループする。
【0089】
イベントが発生すると(ステップSc11の判別結果が「Yes」になると)、管理部121は、当該イベントがメッセージ判別部235からメッセージを受信したイベントであるか否かを判別する(ステップSc12)。発生したイベントがメッセージ判別部235からメッセージを受信したイベントであれば(ステップSc12の判別結果が「Yes」であれば)、管理部121は、当該メッセージにおいてグループIDで特定されるグループのステータスがゲーム進行中であるか否かを判別する(ステップSc13)。
ステータスがゲーム進行中であれば(ステップSc13の判別結果が「Yes」であれば)、管理部121は、直ちに当該メッセージをデータベース118におけるメッセージ登録テーブルTB3に登録する(ステップSc14)。
【0090】
ステータスがゲーム進行中でなければ(ステップSc13の判別結果が「No」であれば)、管理部121は、当該ステータスがゲーム非進行であるか否かを判別する(ステップSc15)。
ゲーム非進行であれば(ステップSc15の判別結果が「Yes」であれば)、管理部121は、メッセージ判別部235から受信したメッセージがゲームの開始の指示を伴っていたか否かを判別する(ステップSc16)。
ゲームの開始の指示を伴っていれば(ステップSc16の判別結果が「Yes」であれば)、当該メッセージを送信した利用者IDの利用者がゲームの開始を指示したことになる。このため、管理部121は、当該利用者を当該ゲームのプレイヤの1人に設定するとともに(ステップSc17)、ステータスをゲーム発動中にセットする(ステップSc18)。
【0091】
ステータスがゲーム進行中でなく、ゲーム非進行でもなければ(ステップSc13、Sc15の判別結果がいずれも「No」であれば)、それはゲーム発動中である。ステータスが発動中であれば、管理部121は、メッセージ判別部235から受信したメッセージがゲームへの参加の指示を伴っていたか否かを判別する(ステップSc19)。
【0092】
ゲームへの参加の指示を伴っていれば(ステップSc19の判別結果が「Yes」であれば)、当該メッセージを送信した利用者IDの利用者がゲームへの参加を指示したことになる。このため、管理部121は、当該利用者を当該ゲームのプレイヤの1人に設定する(ステップSc20)。
【0093】
この後、管理部121は、参加の指示があったゲームにおいてプレイヤが必要人数分揃ったか否かを判別する(ステップSc21)。
揃っていれば(ステップSc21の判別結果が「Yes」であれば)、管理部121は、ステータスをゲーム進行中に変更する(ステップSc22)。
【0094】
一方、揃っていなければ(ステップSc21の判別結果が「No」であれば)、他のプレイヤが参加するまで待機するために、管理部121は、ステータスをゲーム発動中に維持する(ステップSc18)。例えばゲームがリバーシのように必要人数が2人である場合、すでに発動者がプレイヤの1人として設定されているので、別の参加の指示があった時点で必要人数分揃ったことになるが、ゲームの必要人数が3人以上であれば、発動者のほかにプレイヤが2人以上必要となることから、ゲームに必要な人数が揃うまで、ステータスをゲーム発動中に維持して待機するのである。
【0095】
なお、第1に、メッセージ判別部235から送信されたメッセージが、ゲームの開始の指示を伴っていない場合(ステップSc16の判別結果が「No」である場合)、第2に、開始の指示を伴う場合、もしくは、参加の指示を伴っているときであってゲームの必要人数が揃っていないとき(ステップSc18の後)、第3に、参加の指示を伴っている場合であってゲームの必要人数が揃ったとき(ステップSc22の後)、または、第4に、ゲーム発動中においてゲームの参加の指示を伴わない場合(ステップSc19の判別結果が「No」である場合)でも、当該メッセージは、メッセージの閲覧において送信されたものである点には変わりはないから、管理部121は、ステップSc14において当該メッセージをメッセージ登録テーブルTB3に登録する。
【0096】
ところで、発生したイベントがメッセージを受信したイベントでなければ(ステップSc12の判別結果が「No」であれば)、管理部121は、当該イベントに応じた処理を実行する(ステップSc23)。
例えば管理部121は、端末装置20の操作検出部231から、選択されたグループの通知を受けたとき、第1に、グループ登録テーブルTB2にアクセスして、選択されたグループのメンバー(利用者ID)を特定し、第2に、ユーザ登録テーブルTB1にアクセスして、特定したメンバーに関する情報(名前情報、アバター情報およびプロフィール画像情報)を読み出し、表示制御部232に転送する。また、管理部121は、選択されたグループの通知を受けたとき、第3に、メッセージ登録テーブルTB3にアクセスして、選択されたグループのグループIDに対応付けられた投稿IDを、送信日時情報で規定される時間の順で読み出し、第4に、読み出した投稿IDに対応するメッセージを取得して、表示制御部232に転送する。
また、管理部121は、メッセージ判別部235から(メッセージ以外の)通知として、演出内容を受け取ったとき、グループにおける他のメンバーの端末装置20のゲーム制御部237に転送する。これにより、他のメンバーの端末装置20のメッセージ表示部212にも演出が反映されたゲーム画像が表示される。
同様に、管理部121は、ゲーム制御部237からゲームの結果を受け取ったとき、グループにおける他のメンバーの端末装置20の表示制御部232に転送する。これにより、他のメンバーの端末装置20のメッセージ表示部212にも当該ゲームの結果が反映された表示となる。
一方、管理部121は、メッセージ判別部235からゲーム命令を受け取ったとき、当該ゲーム命令をゲームの進行過程を示す情報として、ゲーム進行過程記録テーブルTB4に記録する。
【0097】
このようなグループステータス管理処理は、メッセージ閲覧機能が提供される限り、管理部121においてイベントが発生する毎に繰り返し実行される。
【0098】
なお、
図11に示したフローチャートでは、ゲームへの参加を指示した者と、ゲームの開始を指示した者とが同一である場合を除外していないが、これは、同一者が複数のプレイヤを演じる場合があるためである。これを禁じるのであれば、ステップSc19の後、ステップSc20の前において、ゲームへの参加を指示した利用者と、ゲームの開始を指示した利用者とが同一であるか否かの判別を追加して、同一者であれば、その旨の警告を端末装置20に送信するとともに、処理手順をステップSc18にスキップさせて、ステータスをゲーム発動中に維持する構成とすれば良い。
【0099】
次に、メッセージ閲覧機能の動作について具体的な例を用いて説明する。
グループIDが
図6において「xx01」のグループメンバーが、自己の端末装置20に対しメインメニュー画面で所定の操作をしたとき、
図12に示されるようなメッセンジャートップ画面が表示され(ステップSa11)、この後、グループの名称が「三十路の館」に対応するボタン254の表示部分をタッチ操作すると、
図15に示されるようなメッセージ表示画面が表示される点(ステップSa23)については、上述した通りである。なお、このとき当該グループのステータスは「ゲーム非進行」である。
【0100】
ここで、当該グループのメンバーのうち、利用者IDが「8」であるメンバーが、
図16に示されるように、自己の端末装置20においてメッセージ入力部211に「リバーシやろうぜ!」という本文をソフトウェア・キーボード等により入力して、ボタン273の表示部分を操作した場合を想定する。
この操作では、処理手順が、
図9においてステップSa24→Sa25→Sa28という経路を辿り、
図10においてステップSb11→Sb12という経路を辿る。これにより、当該端末装置20のメッセージ判別部235は、当該メッセージをSNSサーバ10の管理部121に送信する。
上記メッセージの本文には「リバーシ」というゲーム名称を含むので、開始受付部238がゲームの開始の指示を受け付け、これにより、当該開始の指示を伴うメッセージが管理部121に送信されることになる。
この送信によって、管理部121ではイベント発生となるので、処理手順が、
図11において、ステップSc11→Sc12→Sc13→Sc15→Sc16→Sc17という経路を辿る。これにより、ゲームIDが「8」であるメンバーが、当該ゲームのプレイヤの1人に設定されるとともに、当該グループのステータスがステップSc18において「ゲーム発動中」に変更される。そして、上記メッセージは、ステップSc18の後、ステップSc14においてメッセージ登録テーブルTB3に登録される。
【0101】
このため、利用者IDが「8」であるメンバーの端末装置20では、再び処理手順がステップSa22に戻ったときに、変更されたステータスおよび新規に登録されたメッセージの再読込が発生するので、メッセージ表示画面は、
図17に示されるように変更される。詳細には、メッセージ表示部212の上側では、「リバーシやろうぜ!」という本文のみのメッセージ、すなわちタイプ(A)のメッセージが時系列で最新のものとして表示されるとともに、メッセージ表示部212の下側では、発動されたゲーム画像が表示される。
【0102】
なお、グループメンバーのうち、利用者IDが「8」以外のメンバー、すなわち利用者IDが「3」、「2」、「5」であるメンバーの端末装置20でも、ステップSa22において、変更されたステータスおよび新規に登録されたメッセージの再読込によって、
図17に示されるようなメッセージ表示画面が表示されることになる。
【0103】
このメッセージ表示画面に対し、利用者IDが「3」であるメンバーが、
図18に示されるように、自己の端末装置20においてメッセージ入力部211に「参加するわよ!」という本文を入力して、ボタン273の表示部分を操作した場合を想定する。
この操作では、処理手順が、
図9においてステップSa24→Sa25→Sa28という経路を辿り、
図10においてステップSb11→Sb12という経路を辿る。これにより、当該端末装置20のメッセージ判別部235は、当該メッセージをSNSサーバ10の管理部121に送信する。
上記メッセージの本文には「参加」というキーワードを含むので、参加受付部239がゲームへの参加の指示を受け付け、これにより、当該参加の指示を伴うメッセージが管理部121に送信されることになる。
この送信によって、管理部121ではイベント発生となるが、今度は参加の指示を含むので、処理手順が、
図11において、ステップSc11→Sc12→Sc13→Sc15→Sc19→Sc20という経路を辿る。これにより、ゲームIDが「3」であるメンバーが、当該ゲームのプレイヤの1人に設定される。
リバーシにおいてゲームの必要人数が「2」であるので、これでゲームプレイヤが揃ったことになる。したがって、ステップSc20の次のステップSc21では、判別結果が「Yes」となるので、処理手順がステップSc21→Sc22→Sc14という経路を辿る。このため、当該グループのステータスが「ゲーム進行中」に変更され、上記メッセージがメッセージ登録テーブルTB3に登録される。
【0104】
このため、利用者IDが「3」であるメンバーの端末装置20では、再び処理手順がステップSa22に戻ったときに、変更されたステータスおよび新規に登録されたメッセージの再読込が発生するので、メッセージ表示画面は、
図19に示されるように変更される。詳細には、メッセージ表示部212の上側では、タイプAの、「参加するわよ!」という本文のみのメッセージが時系列で最新のものとして表示されるとともに、メッセージ表示部212の下側では、開始となったゲーム画像が表示される。
なお、グループメンバーのうち、利用者IDが「3」以外のメンバー、すなわち利用者IDが「8」、「2」、「5」であるメンバーの端末装置20でも、ステップSa22において、変更されたステータスおよび新規に登録されたメッセージの再読込によって、
図19に示されるようなメッセージ表示画面が表示されることになる。
【0105】
図19に示したゲーム画像では、先手である黒番(黒のコマを置くプレイヤ、ゲーム参加者)が選択できるマスが、斜線入りのハッチングで数字とともに表示される。このようなゲーム画像を作成しているのは、ゲーム制御部237である。
当該プレイヤがコマを置く場合に、すなわちゲーム命令を指示して当該ゲームを進行させる場合に、選択可能なマスに付された数字を含んだメッセージを、メッセージ入力部211に入力する。この入力によってゲームが逐次進行することになる。
【0106】
図20は、
図19に示した状態から、ゲームが10手、進行した場合のメッセージ表示画面の例である。
ゲームに参加しているプレイヤ(ゲーム参加者)は、利用者IDが「3」、「8」であるメンバーであり、ゲームに参加していない者(ゲーム非参加者)は、利用者IDが「2」、「5」であるメンバーである。
このメッセージ表示画面に対し、利用者IDが「8」である黒番が、
図21に示されるように、自己の端末装置20のメッセージ入力部211に「しょうがない5」という本文を入力して送信の操作をすると、処理手順が、
図9においてステップSa24→Sa25→Sa28という経路を辿り、
図10においてはステップSb11→Sb21→Sb22→Sb24→Sb25→Sb26という経路を辿る。
図8に示した例の類推から判るように、この本文にはゲーム命令となる「5」というキーワードを含んでいるので、ステップSb26の判別結果が「Yes」となり、ステップSb27においてメッセージ判別部235が「5」に対応したゲーム命令をゲーム制御部237に通知し、当該ゲーム制御部237は、通知されたゲーム命令に応じて「5」に相当するマスに、当該メンバーのターンである黒のコマをおいたゲーム画像を、次のターンである白番(白のコマを置くプレイヤ、ゲーム参加者)が選択可能なマスに数字を付して作成するとともに、当該ゲーム命令を管理部121に送信する。
ステップSb27の後、ステップSb12によって、当該端末装置20のメッセージ判別部235は、当該本文を含んだメッセージを管理部121に送信する。
【0107】
このため、管理部121では、ゲーム命令の受信と、メッセージの受信という2回のイベントが発生する。
管理部121では、ゲーム命令を受信したときに、処理手順が、
図11においてステップSc11→Sc12→Sc23という経路を辿る。これにより当該ゲーム命令は、ゲームの進行過程を示す情報として、ゲーム進行過程記録テーブルTB4に記録される。
また、管理部121では、上記メッセージを受信したときに、処理手順がステップSc11→Sc12→Sc13→Sc14という経路を辿る。これによって、当該メッセージは、メッセージ登録テーブルTB3に登録される。
【0108】
このため、利用者IDが「8」であるメンバーの端末装置20では、再び処理手順がステップSa22に戻ったときに、当該グループにおけるゲームの進行過程を示す情報、および、登録されたメッセージの再読込が発生するので、メッセージ表示画面は、
図22に示されるようなものとなる。
詳細には、メッセージ表示部212の上側では、「しょうがない5」という本文のメッセージが時系列で最新のものとして表示されるとともに、メッセージ表示部212の下側では、進行したゲーム画像が表示される。
なお、グループメンバーのうち、利用者IDが「8」以外のメンバー、すなわち利用者IDが「3」、「2」、「5」であるメンバーの端末装置20でも、ステップSa22において、変更されたステータスおよび新規に登録されたメッセージの再読込によって、
図22に示されるようなメッセージ表示画面が表示されることになる。
【0109】
ところで、
図21の例にあっては、ターンが到来しているゲーム参加者がゲーム命令を含む本文をメッセージ入力部211に入力して送信を指示した場合であったが、ゲーム命令を含まない本文の送信を指示した場合、上記処理手順においてステップSb26の判別結果が「No」となるので、ステップSb28における警告(その1)が例えば
図27(a)に示されるように表示される。なお、ステップSb28による警告は、当該ターンが到来しているゲーム参加者の端末装置20で実行されるので、その端末装置20のみに表示され、他の参加者およびゲーム非参加者の端末装置20には表示されない。
【0110】
また、ターンが到来していないゲーム参加者がゲーム命令を含む本文をメッセージ入力部211に入力して送信を指示した場合、上記処理手順においてステップSb25の判別結果が「No」となり、ステップSb29の判別結果が「Yes」となるので、ステップSb30における警告(その2)が例えば
図27(b)に示されるように表示される。なお、ステップSb30による警告は、当該ターンが到来していないゲーム参加者の端末装置20で実行されるので、その端末装置20のみに表示され、他の参加者およびゲーム非参加者の端末装置20には表示されない。
【0111】
一方、ターンが到来していないゲーム参加者がゲーム命令を含まない本文をメッセージ入力部211に入力して送信を指示した場合、上記処理手順においてステップSb25、Sb29の判別結果がいずれも「No」となるので、当該本文を含むメッセージが表示されるのみとなる。
【0112】
また、ゲーム非参加者がメッセージの送信を指示した場合、上記処理手順においてステップSb24の判別結果が「No」となるので、ターンであるか否か、または、ゲーム命令を含むか否かの判別がスキップされて、当該本文を含むメッセージが表示される。
例えば、
図20乃至
図22のメッセージ表示画面において、利用者IDが「5」であるメンバーの「絶妙の1手ですわ」というメッセージの本文には「1」というゲーム命令に対応するキーワードが含まれているが、当該メンバーはゲーム非参加者であるので、ステップSb24の判別結果が「No」となる。このため、当該メッセージの判別にあたって、ターンであるか否かの判別や、ゲーム命令を含むか否かの判別はなされない。
図20および
図21のメッセージ表示画面において、利用者IDが「2」であるメンバーの「そこ3じゃないと思う」のメッセージについても同様である。
【0113】
さて、
図22のメッセージ表示画面に対し、利用者IDが「5」であるメンバーが、すなわちゲーム非参加者が、
図23に示されるように、自己の端末装置20のメッセージ入力部211に「そこ違うでしょ!」(改行して)「ずこっ」という本文を入力するとともに、動作IDとして「ずっこける」(
図26参照)を選択して、メッセージの送信の操作をすると、処理手順が、
図9においてステップSa24→Sa25→Sa28という経路を辿り、
図10においてはステップSb11→Sb21→Sb22という経路を辿る。
図8に示されるように、この本文にはゲーム演出となる「ずこ」というキーワードを含んでいるので、ステップSb22の判別結果が「Yes」となるので、メッセージ判別部235は、ステップSb23において「ずこ」に対応する演出内容をゲーム制御部237に通知し、これにより、ゲーム制御部237は、通知された演出内容を反映させて、ゲーム画像を作成する。
また、メッセージ判別部235は、当該演出内容を管理部121にも通知する。なお、ここのメッセージは、ゲーム非参加者による入力であるから、ステップSb24の判別結果が「No」となって、ステップSb12において管理部121に送信される。
【0114】
一方、管理部121では、演出内容の受信と、メッセージの受信という2回のイベントが発生する。
管理部121では、演出内容を受信したときに、処理手順が、
図11においてステップSc11→Sc12→Sc23という経路を辿る。これにより管理部121は、当該演出内容をグループにおける他のメンバーの端末装置20のゲーム制御部237に転送する。また、管理部121では、上記メッセージを受信したときに、ステップSc14において、当該メッセージをメッセージ登録テーブルTB3に登録する。
【0115】
このため、利用者IDが「5」であるメンバーの端末装置20では、再び処理手順がステップSa22に戻ったときに、当該演出内容を示す情報、および、登録されたメッセージの読込が発生するので、メッセージ表示画面は、
図24に示されるようなものとなる。
詳細には、メッセージ表示部212の上側では、上記本文と、動作IDのモーションを伴うアバターとを含むメッセージが時系列で最新のものとして表示されるとともに、メッセージ表示部212の下側では、直前ターンの黒のコマが上下に振動する(アバターのずっこけるモーションに同期して飛び上がる)演出を伴ったゲーム画像が表示される。
なお、グループメンバーのうち、利用者IDが「5」以外のメンバー、すなわち利用者IDが「3」、「8」、「2」であるメンバーの端末装置20でも、ステップSa22によって、
図24に示されるようなメッセージ表示画面が同じように表示されることになる。
【0116】
ゲームが進行すると、やがてゲームが終了することになる。ここで、ゲームが終了する直前の最終手となるゲーム命令を受け取ったゲーム制御部237は、そのゲーム命令によって決着したゲーム画像を作成するとともに、当該ゲーム命令とその結果とを管理部121に送信する(ステップSb27)。また、メッセージ判別部235は、当該ゲーム命令を含むメッセージを管理部121に送信する(ステップSb12)。
このため、管理部121では、ゲーム命令の受信と、ゲームの結果と、メッセージの受信という3回のイベントが発生する。
ゲーム命令を受信したときと、メッセージを受信したときとは、すでに説明しているので、ここではゲームの結果を受信したときに説明すると、ステップSc23において、ゲームの結果に応じた処理が実行される。
これによって、最終手を指示したゲーム参加者の端末装置20では、再び処理手順がステップSa22に戻ったときに、ゲームの結果を示す情報、ゲーム命令、および、登録されたメッセージの読込が発生するので、メッセージ表示画面は、
図25に示されるようなものとなる。
詳細には、メッセージ表示部212の上側では、ゲーム参加者のうち、勝者のアバターには特定の、例えば「勝ち誇る」モーションが与えられる一方、敗者のアバターにも特定の、例えば「屈服する」モーションが与えられて表示される。また、メッセージ表示部212の下側では、ゲームの勝敗について結果とともに示すゲーム画像が表示される。
なお、決着時におけるゲーム参加者のメッセージについては、感想等の入力を促して得られた本文等を表示すれば良い。また、このとき動作IDが選択されていなくても、アバターには、上記特定のモーションが強制的に与えられるようにしても良い。また、動作IDが選択されていても、予め設定された時間経過するまで上記特定のモーションに置き換えられて与えられるとともに、設定時間経過後に選択された動作IDのモーションが与えられるようにしても良い。
また、他のメンバーの端末装置20でも、ステップSa22によって、
図25に示されるようなメッセージ表示画面が同じように表示されることになる。
【0117】
なお、ここではゲームの終了を契機として、ゲーム参加者のアバターに特定のモーションを与えたが、ゲームの進行状態が所定の条件を満たしたときに、ゲームの状況に応じて与える構成としても良い。例えばプレイヤが獲得したコマの枚数が相手プレイヤの獲得しているコマの枚数を逆転したとき(形勢が逆転したとき)や、相手プレイヤから所定枚数以上のコマを奪ったとき(相手にダメージを与えたとき)、四隅のうちいずれかを取ったとき(有利なポジションを得たとき)などに、アバターに特定のモーションを与えても良い。
さらには、ゲームの状況に応じて、
図24に示されるような演出をゲーム画像に与えても良い。
【0118】
<応用・変形例>
本発明は、上述した実施形態に限定されるものではなく、例えば次に述べるような各種の応用・変形が可能である。なお、次に述べる応用・変形の態様は、任意に選択された一または複数を適宜に組み合わせることもできる。
【0119】
<SNS等>
実施形態にあっては、SNS会員の一部に当該メッセージを閲覧させるサービスを提供する構成としたが、SNSサーバ10を単なる管理サーバとして考えて、SNSと切り離したサービス、または、独立のサービスとして提供しても良い。SNS会員となるためには登録が必要であり、また、SNSのサービスを受けるためには、ログイン等が必要となるが、SNSとは無関係な構成としたときに、登録やログインなどを不要とすることができる。
【0120】
<ゲームの種類等>
実施形態にあっては、チャットにおいて開始するゲームとしてリバーシを例にとって説明したが、これ以外のゲームであっても良いのは上述した通りである。典型的には、ターンが順番に到来するターン制ゲームであることが好ましい。なお、グループを構成するメンバー数がゲームの必要人数に足りない場合、SNSサーバ10(システム側)が足りないメンバーに成り代わってプレイする構成としても良い。
また、「しりとり」のように、チャットに参加しているメンバー全員が参加するゲームを開始しても良い。メンバー全員がプレイヤとなる場合、ゲームの開始指示で即、ゲーム進行中になるので、ゲームの参加の受け付けの判別(ステップSc19)や、プレイヤが揃ったかの判別(ステップSc21)をすることなく、ステータスをゲーム進行中とすれば良い。また、ゲーム非参加者が発生しないので、メッセージの送信者がゲーム参加者であるか否かの判別(ステップSb24)も不要となる。
さらに、ゲーム参加者が自らゲームをプレイするのではなく、ゲーム制御部237が、参加者に成り代わってオートプレイする、いわゆる「代打ち」をする構成としても良い。
【0121】
<ゲーム命令等>
実施形態にあっては、ゲーム開始、ゲーム参加、ゲーム命令については、これらに対応するキーワードを含むメッセージを送信する構成としたが、メッセージの本文に、予め定められた特殊文字が付加された場合にゲーム命令等が入力されたものとしても良い。例えば特殊文字として「#」(ハッシュマーク)にしたときに、「#リバーシ」という入力をしたときにゲームの開始を指示し、また例えば「#2」という入力をしたときに2に相当するマスにコマを置くという命令としても良い。
実施形態では、キーワードが予約語(リバーシ、参加、1、2、…)になるので、キーワードを通常のメッセージ(閲覧させたいメッセージ)として送信できないという問題があったが、このように特殊文字を使う構成にすると、この問題を解決することができる。例えば、「#」からスペースやカンマなどの区切り文字までの文字区間を、ゲーム命令等とするようなルールにした場合に、「#2 2と3で迷ったんだよね〜」というメッセージを送信したとき、「#2」というゲーム命令を発するとともに、「2と3で迷ったんだよね〜」というメッセージを閲覧させることができる。
また、特殊文字を使う構成にすると、ゲーム命令等の文字抽出の処理も簡易にすることができる。
【0122】
<警告表示等>
実施形態では、警告表示(その1、その2)については、メッセージを送信しようとした端末装置20のみに表示される構成としたが、当該警告については、警告の根拠となったメッセージとともに、ステップSb12において管理部121に送信して、他のメンバーにも閲覧できるようにタイムライン表示させる構成としても良い。
警告をタイムライン表示させる態様としては、
図28の(a)や(b)の例が挙げられる。同図の(a)は、ターンの到来しているゲーム参加者が、ゲーム命令の「5」を省略して単に「しょうがない」という本文をメッセージ入力部211に入力して送信の操作をしたときの表示例である。
図28の(b)は、ターンの到来していないゲーム参加者が、ゲーム命令の「3」を含んだ「3!」という本文をメッセージ入力部211に入力して送信の操作をしたときの表示例である。いずれの表示例においても、警告は、当該警告の根拠となったメッセージに対して時間的に後の位置であって、他のメッセージと区別する意味で左右の中央位置に、それぞれに表示されるのが好ましい。
【0123】
また、ターンの到来しているゲーム参加者が、ゲーム命令を含まない本文をメッセージ入力部211に入力して送信の操作したときに、処理手順については、ステップSb28の警告後に、ステップSb12をスキップさせてステップSa22に戻るようにしても良い。これにより、ターンの到来しているゲーム参加者がゲーム命令を含まない本文を入力して送信を指示しても、そのメッセージは管理部121に送信されないので、タイムライン表示されることはない。
したがって、ターンの到来しているゲーム参加者が発言するためには、ゲーム命令を含むメッセージを入力して送信しなければならない、という一種の縛りがかかる。このため、ターンの到来しているゲーム参加者がゲーム命令を含まないメッセージを送信することによって、ゲームの進行が停滞してしまうのを防止することができる。
【0124】
<ゲームの開始、参加>
実施形態にあっては、チャットにおいてゲームの開始、参加を指示する態様として、特定のキーワードを含むメッセージを送信する構成とした。これに限られず、ステータスがゲーム非進行であるときに、表示制御部232が、例えば
図29(a)に示されるように、メッセージ表示部212にゲームの開始を指示するボタン281を表示させる一方、このボタン281の表示部分が操作されたときに、開始受付部238がゲームの開始が指示されたと判断する構成としても良い。この構成において、ボタン281の表示部分が操作されたときに、複数種類のゲームがプルダウンメニューなどによって表示させて、いずれかを利用者に選択させても良い。
【0125】
また、メッセージ表示画面を表示する前に、ゲーム参加者を募集するゲーム参加者募集画面を端末装置20に表示させ、ゲームに参加する参加者が所定の人数集まることをもってゲーム開始の指示とともに、ゲームへの参加の指示を受け付けたものとして、ゲーム画像を伴ったメッセージ表示画面(例えば
図19参照)を表示しても良い。
ゲーム参加者募集画面を端末装置20に表示させる場合、SNSサーバ10の管理部121に、ゲーム参加者募集部を設け、グループのメンバーが、ゲーム参加者募集画面においてゲームへの参加を表明すると、ゲーム参加者募集部に記録され、ゲームの参加者が所定の人数集まることをもってゲーム開始の指示とともに、ゲームへの参加の指示を受け付けたものとすれば良い。
【0126】
また、ゲーム種類については、システム側がランダムに選択しても良いし、負荷などの状況に応じて適切に選択するようにしても良い。
同様に、ステータスがゲーム発動であるときに、表示制御部232が、例えば
図29(b)に示されるように、メッセージ表示部212にゲームの参加を指示するボタン282を表示させる一方、このボタン282の表示部分が操作されたときに、参加受付部239がゲームの参加が指示されたと判断する構成としても良い。
【0127】
また、ゲームの参加については、特定のキーワードを含むメッセージの送信や、ボタン282へのタッチ操作などに限られず、例えば
図17におけるメッセージ表示部212に表示された自己が送信したメッセージの表示領域、詳細にはプロフィール画像や、吹き出し、アバターなどの利用者情報に関連する表示部分へのタッチ操作によって、参加受付部239が、ゲーム発動中となっているゲームへの参加の指示であると判断する構成としても良い。
【0128】
さらに、ゲームのプレイヤについては、相手となるメンバーの自発的な参加という行動によって決定するのではなく、開始を指示したメンバーが、相手となるメンバーを指定して決定する構成としても良い。
例えば、ゲームの開始を指示するメンバーが、相手プレイヤを特定するキーワードを含むメッセージを送信したり、相手プレイヤとなるメンバーの利用者情報に関連する表示部分にタッチ操作したり、するなどによって相手となるメンバーを指定しても良い。
【0129】
<メッセージタイプ>
上記実施形態では、メッセージをタイプ(A)、(B)の2種類としたが、これ以外の組み合わせであっても良いのはもちろんである。例えば、端末装置20で録音した音声や、端末装置20に内蔵するカメラで撮影した写真や映像、端末装置20に保存された写真や映像、または位置情報をメッセージとして含めても良い。
逆に、メッセージについてはタイプ(B)のように動作IDを伴うものに限定しても良いし、本文を必須とせずに、動作IDのみを伴うものでも良い。動作IDを伴うものに限定する場合に、メッセージを送信する際に動作IDが指定されていないとき、予め用意された複数の動作IDのなかから、いずれかを所定のルール(例えばランダム)にしたがって選択して、当該選択した動作IDをメッセージに強制的に含ませて送信する構成としても良い。また、動作IDが指定されていない旨を利用者に警告して、いずれかの動作IDを、送信しようとするメッセージに含めるように促す構成としても良い。
【0130】
<ウェブ型>
実施形態においては、端末装置20にインストールされたアプリケーションプログラムの実行によってゲーム画像やメッセージの表示を制御する、いわゆるネイティブ型の構成としたが、本発明は、この構成に限られない。例えば、SNSサーバ10側で表示の制御を記述したウェブ画面を作成して端末装置20に送信する一方、端末装置20側のブラウザがウェブ画面を表示するとともに、ウェブ画面(タッチパネル)に対する操作に応じた処理を実行するウェブ型の構成としても良い。
【0131】
図30は、ウェブ型とした応用例に係るシステム1の構成を示す機能ブロック図であって、メッセージの閲覧の機能が実行される際に、SNSサーバ10および当該端末装置20で構築される機能ブロックを示す図である。
端末装置20では、表示の制御が記述されたウェブページを、表示パネル210におけるメッセージ入力部211およびメッセージ表示部212に表示させるためのブラウザが構築される。
一方、SNSサーバ10側では、管理部121とともに、表示制御部132、メッセージ判別部135、記憶部136、ゲーム制御部137、開始受付部138および参加受付部139が構築される。
これらの表示制御部132、メッセージ判別部135、記憶部136、ゲーム制御部137、開始受付部138および参加受付部139は、
図4における表示制御部232、メッセージ判別部235、記憶部236、ゲーム制御部237、開始受付部238および参加受付部239と同機能を、SNSサーバ10側で構築したものである。したがって、これらの表示制御部132、メッセージ判別部135、記憶部136、ゲーム制御部137、開始受付部138および参加受付部139は、端末装置20毎に1組ずつ構築される。
【0132】
なお、
図4に示した構成では、表示制御部232が各種情報に基づき表示パネル210に画面を直接的に表示させる構成であったが、
図30に示した構成では、表示制御部132が、ゲーム制御部237によるゲーム画像や、管理部121などから取得した各種情報に基づきウェブ画面情報を作成し、端末装置20に送信して、ブラウザ234を介して表示パネル210に画面を間接的に表示させる構成となる。
実施形態では、端末装置20のそれぞれにおいて、メッセージ判別部235やゲーム制御部237が構築されるので、端末装置20に高い処理能力が要求されるが、ウェブ型では、機能ブロックがSNSサーバ10側に移動するので、端末装置20に高い処理能力が要求されないのである。
【0133】
<メッセージ判別部、開始受付部、参加受付部>
実施形態(
図4)や応用例(
図30)では、メッセージ判別部、開始受付部及び参加受付部を別個の制御部として記載しているが、メッセージ判別部に開始受付部及び/又は参加受付部の機能を持たせ、メッセージを判別する各プロセス(例えば、
図10参照)中に、ゲーム開始やゲーム参加の指示があったか否かを判断するようにしても良い。
【0134】
<ゲーム制御部、表示制御部>
同様に、実施形態や応用例では、ゲーム制御部及び表示制御部を別個の制御部として記載しているが、ゲーム命令等に応じたゲーム画像を作成しているのはゲーム制御部であって、表示制御部は表示パネルの仕様に合わせて表示を制御しているに過ぎない。このため、実質的には、ゲーム制御部がゲーム画像をメッセージ表示部に表示させる、と言って差し支えない。
一方で、ゲーム画像をメッセージ表示部に最終的に表示させる主体は、表示制御部であることには変わりはない。この観点でいえば、表示制御部がゲーム画像をメッセージ表示部に表示させる、と言ってやはり差し支えないことになる。
【0135】
<サーバ・クライアント型>
このように表示制御部、受付部、特定部および管理部については、SNSサーバ10の側に構築されるか、端末装置20の側に構築されるかについては任意であり、各部のそれぞれがSNSサーバ10と端末装置20とに分かれる構成としても良い。
すなわち、表示制御部、メッセージ判別部、記憶部、ゲーム制御部、開始受付部、参加受付部および管理部については、端末装置20またはSNSサーバ10のいずれかが備えれば良い。なお、データベース118は、SNSサーバ10以外の他のサーバで管理する構成、すなわちクラウドコンピューティングで管理するようにしても良い。
【0136】
<付記>
上述した実施形態や、応用・変形の態様からは、インターフェースの変更を少なくした上で、メッセージの閲覧等のサービスに、利用者にとって面白みがあり、かつ、場の雰囲気を盛り上げるような機能を付加して提供する、という観点より、以下の発明が把握される。
【0137】
すなわち、グループを構成する複数の利用者のそれぞれから送信されたメッセージを、それぞれの利用者の端末装置の画面上のメッセージ表示部にて閲覧可能に提供するメッセージ管理装置であって、ゲームの開始指示を受け付ける開始受付部と、前記ゲームに参加している利用者から送信されたメッセージが、前記ゲームに対応した命令であるか否かを判別するメッセージ判別部と、前記メッセージ判別部で利用者から送信されたメッセージが前記ゲームに対応した命令であると判別された場合に、当該メッセージの内容に基づいたゲーム画像を前記メッセージ表示部に表示させる表示制御部と、を備えるメッセージ管理装置が把握される。
ここで、ゲームに参加している利用者とは、ゲームの参加者のことである。
【0138】
このメッセージ管理装置において、前記表示制御部は、前記メッセージ判別部で利用者から送信されたメッセージが前記ゲームに対応した命令でないと判別された場合に、当該メッセージを前記メッセージ表示部に表示させても良い。
また、前記表示制御部は、前記メッセージ判別部によって前記ゲームに参加している利用者から送信されたメッセージが、前記ゲームに対応した命令であると判別された場合に、前記ゲーム画像とともに、当該メッセージを前記メッセージ表示部に表示させても良い。
ここで、前記複数の利用者には前記ゲームに参加していない利用者が含まれ、前記メッセージ判別部は、前記ゲームに参加していない利用者から送信されたメッセージを、前記ゲームに対応した命令であるか否かを判別するメッセージの対象とせずに、前記表示制御部は、当該メッセージを前記メッセージ表示部に表示させても良い。
【0139】
また、このメッセージ管理装置において、前記ゲームは、前記ゲームに参加している利用者に所定順にターンが到来するターン制ゲームであることが好ましい。
ターン制ゲームである場合に、前記メッセージ判別部は、前記ゲームに対応した命令であるか否かを判別するメッセージの対象を、前記ゲームに参加している利用者のうち、前記ターンが到来している利用者から送信されたメッセージとする態様としても良い。
この態様において、前記表示制御部は、前記メッセージ判別部で前記ターンが到来している利用者から送信されたメッセージが前記ゲームに対応した命令でないと判別された場合に、当該メッセージが不適切である旨のメッセージを前記メッセージ表示部に表示させても良い。また、前記表示制御部は、前記ターンが到来していない利用者から送信されたメッセージを前記メッセージ表示部に表示させても良い。
【0140】
上記メッセージ管理装置において、前記表示制御部は、前記メッセージ判別部で前記ターンが到来していない利用者から送信されたメッセージが前記ゲームに対応した命令であると判別された場合に、当該メッセージが不適切である旨のメッセージを前記メッセージ表示部に表示させる態様としても良い。
この態様において、前記表示制御部は、前記メッセージ判別部で前記ターンが到来していない利用者から送信されたメッセージが前記ゲームに対応した命令でないと判別された場合に、当該メッセージを前記メッセージ表示部に表示させても良い。
【0141】
また、上記メッセージ管理装置において、前記表示制御部は、メッセージが送信された時間情報に基づいて時系列に前記メッセージ表示部に表示させても良い。
前記メッセージ判別部は、前記複数の利用者から送信されたメッセージが、前記ゲームの開始指示に対応したものであるか否かを判別し、前記メッセージが前記ゲームの開始指示に対応したものであると判別された場合に、前記開始受付部は、ゲームの開始指示を受け付けたものとしても良い。
また、前記表示制御部は、前記メッセージ表示部に前記ゲームの開始指示に対応したボタンを表示させ、前記ボタンが操作された場合に、前記開始受付部は、ゲームの開始指示を受け付けたものとしても良い。
前記表示制御部は、前記利用者から送信されたメッセージを表示させた部分の近傍に、当該メッセージを送信した利用者の利用者情報を、選択可能状態で表示させ、前記利用者情報が選択されたときに、当該利用者情報に対応する利用者を前記ゲームに参加する利用者として受け付ける参加受付部を有する構成としても良い。
【0142】
把握される発明としては、メッセージ管理装置のみならず、当該メッセージの管理方法や、サーバとしてのコンピュータで機能させるプログラム、または、当該サーバと通信可能な端末装置としてのコンピュータで機能させるプログラム、若しくは、これらのプログラムを記録したコンピュータ読み取り可能な記録媒体としても概念することができる。