JP2004118325A - データ通信方法及びデータ通信システム - Google Patents
データ通信方法及びデータ通信システム Download PDFInfo
- Publication number
- JP2004118325A JP2004118325A JP2002277647A JP2002277647A JP2004118325A JP 2004118325 A JP2004118325 A JP 2004118325A JP 2002277647 A JP2002277647 A JP 2002277647A JP 2002277647 A JP2002277647 A JP 2002277647A JP 2004118325 A JP2004118325 A JP 2004118325A
- Authority
- JP
- Japan
- Prior art keywords
- terminal device
- server
- generated
- predetermined information
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Small-Scale Networks (AREA)
Abstract
【解決手段】本発明は、要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバであって、端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信する受信手段と、要求メッセージにて指定された所定の情報を取得する取得手段と、所定の情報に基づく応答メッセージを端末装置へ送信する送信手段と、を備え、取得手段は、所定の情報が発生していない場合には、前記所定の情報が発生するまで待機することを特徴とする。
【選択図】 図4
Description
【発明の属する技術分野】
本発明は、端末装置とサーバとにより構成される通信システム及び通信方法の技術に関する。
【0002】
【従来の技術】
今日、インターネット等の普及に伴い、ネットワークを利用した様々なゲームが登場している。このようなネットワークを利用したゲームには、例えば、マージャンゲームがある。このマージャンゲームは、各プレーヤが自分の端末装置からネットワークを介してサーバにアクセスし、ネットワーク上で他のプレーヤとマージャンをするというものである。
【0003】
このようなマージャンゲームの流れについて、図9を用いて説明する。プレーヤの端末装置には、マージャンゲームを実行するためのアプリケーションが予め実装されている。マージャンゲームに必要なプレーヤ(例えば4人)が、全員、サーバにアクセスすると、ゲームが開始される。
【0004】
まず、サーバと端末装置は、それぞれのゲーム環境を初期化する(S1001、S2001)。そして、サーバは、各プレーヤの牌を決定し、それぞれの端末装置へ決定した牌を通知する(S1002)。端末装置は、サーバから牌を受信すると、画面に表示する(S2002)。ここで、プレーヤは、自分の牌を確認することができる。
【0005】
次に、サーバは、次の順番のプレーヤ(例えば、プレーヤA)のツモった牌を決定し、プレーヤAの端末装置へ決定した牌を通知する(S1003)。プレーヤAの端末装置は、サーバから牌を受信すると、画面に表示する(S2003)。プレーヤAは、自分がツモった牌を確認すると、持っている牌の中から捨てる牌を選択する(S2004)。端末装置は、プレーヤAが選択した捨て牌を、サーバに送信する(S2005)。
【0006】
サーバは、プレーヤAの端末装置から、プレーヤAの捨て牌を受信すると(S1004)、他のプレーヤ(例えば、プレーヤB、プレーヤC、プレーヤD)に、プレーヤAの捨て牌を通知する(S1005)。他のプレーヤの端末装置は、プレーヤAの捨て牌を受信すると、画面に表示する(S2005)。これにより、他のプレーヤは、プレーヤAが捨てた牌を確認する。
【0007】
続いて、サーバは、受信したプレーヤAの捨て牌に基づいて、プレーヤAがあがったか否かを判断し(S1006)プレーヤAが上がっていないと判断した場合は、S1003に戻り、次の順番のプレーヤ(例えば、プレーヤB)のツモった牌を決定し、プレーヤBの端末装置へ通知する(S1003)。以後、プレーヤのいずれかが上がるまで、牌の通知や捨て碑の受信等を繰り返す。
【0008】
一方、サーバは、プレーヤAが上がったと判断した場合は、プレーヤAが上がった旨を、他のプレーヤの端末装置へ通知する(S1007)。他のプレーヤの端末装置は、プレーヤAが上がった旨を受信すると、その旨を画面に表示する(S2006)。これにより、他のプレーヤは、プレーヤAが上がったこと、つまり、ゲームが終了したことを知る。サーバは、各プレーヤの得点を計算し、各プレーヤの端末装置へ通知する(S1008)。各プレーヤの端末装置は、得点を受信すると、画面に表示する。
【0009】
このようなマージャンゲームでは、ゲームの進行に合わせて発生するサーバ側の情報を、リアルタイムで端末装置へ通知する必要がある。例えば、各プレーヤの牌を決定したとき(S1002、S1003)や、プレーヤの捨て牌を受信したとき(S1004)等である。
【0010】
そこで、従来、HTTPプロトコル(HyperText Transfer Protocol)を前提とした通信方法では、このような情報をリアルタイムで端末装置へ通知するために、端末装置からサーバに対しリクエストを定期的に送信する方法(ポーリング)が採られていた。HTTPプロトコルのように、端末装置が要求(request)をかけると、それに対してサーバが応答(response)するリクエスト/レスポンス型のプロトコルの場合、サーバ側から自発的に情報を通知することができないからである。
【0011】
図10は、HTTPプロトコルに基づいてサーバ側の情報を端末装置へ通知する従来の処理の流れを説明するための図である。なお、ここでは、ゲームの進行に応じて発生しサーバから端末装置へ通知する必要のある情報を、イベント情報と呼ぶものとする。クライアントの通信ソフトとサーバの通信ソフトは、HTTPプロトコルに従って、要求メッセージと応答メッセージを送受信する。クライアントのアプリケーションは、ゲームの進行に応じて、イベント情報の取得指示を通信ソフトへ通知する。通信ソフトは、アプリケーションの指示に従い、イベント情報の取得要求メッセージを、サーバへ送信する(Request(1))。サーバの通信ソフトは、イベント情報の取得要求メッセージを受け付けると、イベント情報をアプリケーションから取得する。しかし、ここでは、イベント情報が存在しないので、サーバのアプリケーションは、その旨を通信ソフトへ通知する。サーバの通信ソフトは、イベント情報が存在しない旨を応答メッセージとしてクライアントへ通知する(Response(1))。
【0012】
クライアントの通信ソフトは、受信した応答メッセージからイベント情報がサーバに存在しないことを認識すると、再度、イベント情報の取得要求メッセージを、サーバへ送信する(Request(2))。しかし、この時点でも、イベント情報は発生していないので、イベント情報は存在しない旨がクライアントへ通知される(Response(2))。
【0013】
クライアントの通信ソフトは、再度、イベント情報の取得要求メッセージを、サーバへ送信する(Request(3))。すると、今度は、イベント情報が発生しているので、サーバのアプリケーションは、イベント情報を通信ソフトへ通知する。サーバの通信ソフトは、イベント情報を応答メッセージとしてクライアントへ通知する(Response(3))。クライアントの通信ソフトは、応答メッセージを受け付け、イベント情報の受信を確認すると、イベント情報をアプリケーションに通知する。
【0014】
【発明が解決しようとする課題】
しかしながら、上述したような従来の通信方法では、以下に述べるような問題があった。
【0015】
第1に、サーバの情報を取得するまでリクエストを繰り返し送信する従来のポーリング方法では、サーバ側で通知すべき情報が発生していない場合にも、定期的に通信を行う必要があるため、通信コストが高くなりやすいという問題があった。つまり、端末装置がサーバから情報を取得するまで、要求メッセージと応答メッセージが繰り返し送受信されるので、データ通信量が多くなる。よって、データ通信量に応じて料金が課金される場合には、ゲームに要する通信コストが高くなりやすく、プレーヤの負担となっていた。
【0016】
第2に、従来のポーリング方法では、端末装置は、サーバ側で発生した情報をリアルタイムで取得することが困難であった。つまり、従来のポーリング方法では、サーバは、端末装置へ通知すべきイベント情報が発生しても、次のリクエストが送信されるまでは、イベント情報を通知することができない。よって、端末装置は、ポーリングの周期よりも早くサーバ側の情報を取得することができないからである。
【0017】
そこで、本発明の第1の課題は、リクエスト/レスポンス型の通信手順に従った通信システムにおいて、データ通信量を抑えながら、サーバ側の情報を端末装置へ通知することができる通信システム及び通信方法を提供することにある。
【0018】
また、本発明の第2の課題は、リクエスト/レスポンス型の通信手順に従った通信システムにおいて、サーバ側で通知すべき情報が発生した場合に、その情報をリアルタイムで端末装置へ通知することができる通信システム及び通信方法を提供することにある。
【0019】
【課題を解決するための手段】
上記課題を解決するための本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバであって、前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信する受信手段と、前記受信された要求メッセージにて指定された所定の情報を取得する取得手段と、前記取得された所定の情報に基づく応答メッセージを端末装置へ送信する送信手段と、を備え、前記取得手段は、前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機することを特徴とする。
【0020】
前記取得手段は、前記要求メッセージの受信後、所定の時間内に前記所定の情報を取得できない場合には、前記待機を中止し、前記送信手段は、前記所定の情報が発生していない旨の応答メッセージを送信することを特徴とする。
【0021】
前記所定の情報は、前記端末装置の動作とは非同期にサーバにより生成される情報及び前記端末装置の動作とは非同期に他の端末装置からサーバに送信される情報のうち、少なくともいずれか1つの情報を含むことを特徴とする。
【0022】
また、本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、前記端末装置の動作とは非同期に発生する所定の情報をサーバが端末装置へ通知する通知方法であって、前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信し、該受信された要求メッセージにて指定された所定の情報が発生していない場合には、前記所定の情報が発生するまで待機し、前記所定の情報が発生したときに、この発生した所定の情報に基づく応答メッセージを前記端末装置へ送信することを特徴とする。
【0023】
また、本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバに、前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信するステップ、前記受信された要求メッセージにて指定された所定の情報が発生していない場合には、前記所定の情報が発生するまで待機するステップ、前記所定の情報が発生した場合に、この発生した所定の情報を取得するステップ、前記取得された所定の情報に基づいて応答メッセージを生成するステップ、前記生成された応答メッセージを前記端末装置へ送信するステップ、を実行させるためのプログラムである。
【0024】
また、本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバとの間で通信を行う端末装置であって、前記端末装置の動作とは非同期に発生する所定の情報に対する取得要求と、前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機する旨の条件と、を含む要求メッセージを、前記サーバへ送信する送信手段、を備えることを特徴とする。
【0025】
また、本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って通信を行う通信システムであって、前記端末装置は、該端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージをサーバに送信する送信手段、を備え、前記サーバは、前記送信された要求メッセージを受信する受信手段と、前記受信された要求メッセージにて指定された所定の情報を取得する取得手段と、前記取得された所定の情報に基づく応答メッセージを端末装置へ送信する送信手段と、を備え、前記取得手段は、前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機し、前記所定の情報が発生したときに、該発生した所定の情報を取得することを特徴とする。
【0026】
また、本発明は、端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って通信を行う通信システムにおける通信方法であって、前記端末装置は、該端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージをサーバに送信し、前記サーバは、前記送信された要求メッセージを受信し、この受信した要求メッセージにて指定された所定の情報が発生していない場合には、前記送信された要求メッセージに対する応答メッセージの送信を中止し、前記端末装置は、前記要求メッセージの送信後所定の時間が経過しても前記サーバから応答メッセージを受信していない場合には、前記サーバから前記要求メッセージにて指定した所定の情報が発生していない旨の応答メッセージを受信したものとみなす、ことを特徴とする。
【0027】
上記本発明によれば、サーバ側で通知すべき情報が発生していない場合には、所定の情報が発生するまで待機し、所定の情報が発生したときに、その発生した情報を通知することとしたので、端末装置の動作とは非同期に発生する所定の情報を、リアルタイムで端末装置に通知することができるようになる。
【0028】
また、本発明によれば、サーバ側で通知すべき情報が発生していない場合には、情報が発生するまで待機するので、端末装置とサーバ間のリクエスト及びレスポンスの回数を減らすことができる結果、通信量及び通信費用を抑えることが可能になる。
【0029】
【発明の実施の形態】
次に、本発明の実施の形態について、図面を参照しつつ説明する。なお、本実施形態では、端末装置とサーバとの間の通信は、HTTPプロトコルに従って行われるものとする。また、本実施形態では、要求メッセージを送信する端末装置の動作とは非同期に発生する情報であって、サーバから端末装置へ通知すべき情報(端末装置がサーバから取得すべき情報)を、イベント情報と呼ぶものとする。本実施形態でいうイベント情報は、典型的には、通信ゲームにおけるゲームの進行やプレーヤの決定・選択に応じて発生する情報が該当するが、本発明に係るイベント情報は、ゲームに限られず、例えば、交通情報や天気予報、株価情報、ニュースなどでもよい。
【0030】
[第1の実施の形態]
第1の実施の形態では、端末装置からイベント情報の要求メッセージを受け付けたサーバは、要求メッセージに対応するイベント情報が発生するまで待機し、イベント情報が発生したときに、応答メッセージとして端末装置へ通知することを特徴とする。換言すれば、サーバは、イベント情報が発生していない場合は、イベント情報が発生するまで応答メッセージの送信を保留することを特徴とする。
【0031】
[イベント情報]
本実施形態に係るイベント情報は、既述のように、端末装置の動作とは非同期に発生する情報であって、通信ゲームにおけるゲームの進行やプレーヤの決定・選択に応じて発生する情報であるが、イベント情報の内容や発生タイミングは、サーバ側の要求仕様に応じて適宜これを定義することが可能である。なお、ここでは、ゲームの進行に伴いサーバがイベント情報を生成した場合や、ゲームの進行に伴いプレーヤの端末装置からサーバがイベント情報を受信した場合に、イベント情報が発生する。
【0032】
サーバが生成するイベント情報には、例えば、ゲーム開始時に決定される各プレーヤの牌や、該当するプレーヤがツモった牌、各プレーヤの待ち時間制限によるタイムアウト、プレーヤが上がった際の各プレーヤの得点、などが該当する。また、他のプレーヤの端末装置から受信するイベント情報には、例えば、プレーヤの捨て牌が該当する。
【0033】
[システム全体の構成]
図1は、本発明にかかる通信システムの全体構成を表す図である。本通信システムは、ユーザにより使用される端末装置1と、所定のイベント情報をユーザの端末装置1に通知するサーバ2とを備え、端末装置1とサーバ2とは、通信路3を介して通信可能に構成されている。なお、端末装置1とサーバ2との間の通信は、HTTPプロトコルに従って行われるものとする。
【0034】
端末装置1は、HTTPプロトコルに従って通信を行うためのクライアント用の通信ソフト10と、所定のアプリケーション12と、を実装している。ここでは、マージャンゲームを実行するアプリケーション12が実装されているものとする。プレーヤの操作に従い、アプリケーション12が起動されると、端末装置1は通信路3を介してサーバ2へアクセスする。以後、端末装置1は、ゲームの進行に従って、サーバ2との間でデータ通信を行う。
【0035】
サーバ2は、HTTPプロトコルに従って通信を行うためのサーバ用の通信ソフト20と、所定のアプリケーション22と、を実装している。ここでは、既述のように、マージャンゲームを実行するアプリケーション22が実装されているものとする。サーバ2は、各端末装置1(端末装置A、B、C、D)との間でデータ通信を行うことにより、ゲーム全体の進行を制御する。
【0036】
なお、本実施形態では、端末装置1の一例として、携帯電話(携帯移動端末)が採用されている。端末装置1はパケット通信網に、サーバ2はインターネットに、それぞれ接続され、端末装置1とサーバ2は、通信路3に設けられたゲートウェイ(図示せず)を介して通信可能に構成されている。
【0037】
[クライアントの構成]
図2は、端末装置(クライアント)1の機能を示す機能構成図である。端末装置1は、通信ソフト10やアプリケーション12によって規定された各処理を実行する制御手段(図示せず)を備えており、図2は、その制御手段が実行する各処理を、それぞれ機能実現手段としてとらえて図示している。端末装置1は、通信ソフト10に規定された各処理を実行することにより、リクエスト生成手段100、通知条件付加手段102、リクエスト送信手段104、レスポンス受信手段を備える。
【0038】
リクエスト生成手段100は、アプリケーション12(ゲーム制御手段120)の指示に従って、サーバに送信すべきリクエストを生成する。具体的には、アプリケーション12から指示されたイベント情報の取得要求を、サーバに送信するためのリクエストを生成する。リクエストを生成すると、生成したリクエストを通知条件付加手段102に通知する。
【0039】
通知条件付加手段102は、リクエスト生成手段100より生成されたリクエストに、所定の通知条件を付加する。ここで、所定の通知条件とは、「サーバ側にイベント情報が発生していない場合には、イベント情報が発生するまで待機し、イベント情報が発生した時点で、そのイベント情報を通知する」、という条件が該当する。
【0040】
この所定の通知条件は、任意の構成でリクエストに付加することができるが、本実施形態では、リクエストに含まれる通知条件フラグとして設定する。具体的には、待機を指定する場合には、通知条件フラグをONに設定し、待機を指定しない場合には、OFFを設定する。また、所定の通知条件をリクエストに付加するか否かは、任意にこれを設定することができる。例えば、アプリケーション単位で指定したり、イベント情報の属性に応じて指定したりすることもできる。通知条件付加手段102は、所定の通知条件を付加すると、所定の通知条件が付加されたリクエストを、リクエスト送信手段104に通知する。
【0041】
リクエスト送信手段104は、受け付けたリクエストをサーバ2に送信する。具体的には、リクエスト送信手段104は、通知条件付加手段102からリクエストを受け付けると、サーバ2に対してコネクションの確立を要求し、サーバ2から正常なレスポンスを受け付けると、コネクションが成立する。リクエスト送信手段104は、続いて、イベント情報の取得要求であるリクエストをサーバ2に対して送信する。サーバ2は、リクエストを受け付けると、要求されたイベント情報をレスポンスとして端末装置1へ送り返す。
【0042】
レスポンス受信手段106は、サーバ2から送信されるレスポンスを受信する。例えば、レスポンス受信手段106は、レスポンスのステータスに含まれる応答コードを参照し、要求が正常に処理されたか否かを判断する。要求が正常に処理されている場合には、取得したイベント情報をアプリケーション12(ゲーム制御手段120)に通知する。一方、要求が正常に処理されなかった場合には、リクエストを再度送信する旨をリクエスト送信手段104に通知する。なお、ゲーム制御手段120は、受け取ったイベント情報をゲームの進行に応じて処理する。例えば、イベント情報記憶手段122に記憶するとともに、画面に表示する。
【0043】
[サーバの構成]
図3は、サーバ2の機能を示す機能構成図である。サーバ2は、通信ソフト20やアプリケーション22によって規定された各処理を実行する制御手段(図示せず)を備えており、図3は、その制御手段が実行する各処理を、それぞれ機能実現手段としてとらえて図示している。サーバ2は、通信ソフト20規定された各処理を実行することにより、リクエスト受信手段200、イベント情報取得手段202、タイムアウト計測手段208、レスポンス生成手段204、レスポンス送信手段206を備える。
【0044】
リクエスト受信手段200は、端末装置1からイベント情報の取得要求であるリクエストを受信する。具体的には、リクエストを受信すると、リクエストにて要求されているイベント情報を、イベント情報取得手段202に通知する。また、リクエスト受信手段200は、リクエストを受信した旨を、タイムアウト計測手段208に通知する。なお、リクエストが、端末装置1からサーバ2に対してイベント情報(例えば、プレーヤの捨て牌)を送信するものである場合には、受信したイベント情報をアプリケーション22のゲーム制御手段220に通知する。なお、ゲーム制御手段220は、イベント情報を受け取ると、ゲームの進行に応じて処理する。例えば、イベント情報がプレーヤの捨て牌である場合には、イベント情報記憶手段222に記憶するとともに、プレーヤが上がったか否かを判断する。
【0045】
イベント情報取得手段202は、端末装置1から要求されたイベント情報をアプリケーション22から取得する。具体的には、イベント情報取得手段202は、通知されたイベント情報をアプリケーション22のゲーム制御手段220に問い合わせる。ゲーム制御手段220は、イベント情報記憶手段222にイベント情報が存在する場合には、そのイベント情報を読み出して、イベント情報取得手段202に通知する。イベント情報取得手段202は、イベント情報を取得すると、取得したイベント情報をレスポンス生成手段204に通知する。
【0046】
一方、ゲーム制御手段220は、イベント情報が存在しない場合には、その旨を、イベント情報取得手段202に通知する。イベント情報取得手段202は、イベント情報を取得しなかった場合には、イベント情報が発生していないと判断し、イベント情報が通知されるまで待機する。ゲーム制御手段220は、イベント情報が発生した場合には、発生したイベント情報を、イベント情報取得手段202に通知する。イベント情報が発生した場合とは、例えば、プレーヤが捨て牌を決定して他の端末装置1から捨て牌の情報が送信された場合や、プレーヤが上がった場合などである。イベント情報取得手段202は、イベント情報を取得すると、取得したイベント情報をレスポンス生成手段204に通知する。
【0047】
タイムアウト計測手段208は、イベント情報取得手段202がイベント情報の発生を待機する最大待機時間を計測する。最大待機時間とは、イベント情報取得手段202が、待機することのできる最大時間であり、例えば、HTTPプロトコルにて規定されているタイムアウトが発生することを回避するために、該タイムアウトよりも短い時間で設定されている。タイムアウト計測手段208は、リクエスト受信手段200から、リクエストを受信した旨の通知を受け付けると、時間の計測を開始する。そして、計測時間が、最大待機時間を経過した場合には、その旨をイベント情報取得手段202に通知する。イベント情報取得手段202は、最大待機時間を経過した旨の通知を受け付けると、イベント情報の待機を中止し、イベント情報が発生していない旨を、レスポンス生成手段204に通知する。なお、イベント情報取得手段202は、タイムアウト計測手段208から通知を受ける前に、イベント情報を取得した場合には、その旨をタイムアウト計測手段208に通知する。タイムアウト計測手段208には、イベント情報を取得した旨を受け付けると、時間の計測を中止する。
【0048】
レスポンス生成手段204は、イベント情報もしくはイベント情報が発生していない旨を、イベント情報取得手段202から受け取ると、その旨を含むレスポンスを生成する。そして、生成したレスポンスをレスポンス送信手段206に通知する。
【0049】
レスポンス送信手段206は、生成されたレスポンスを要求メッセージに対する応答として端末装置1に送り返す。また、端末装置1に対してコネクションの切断要求を送信する。端末装置1が、サーバ2からのコネクションの切断を要求に応じると、コネクションが切断される。
【0050】
[イベント情報通知処理の流れ(1)]
次に、端末装置からのリクエストに応じてサーバがイベント情報を通知する、イベント情報通知処理の流れについて図4を用いて説明する。まず、端末装置側の通信ソフトは、アプリケーションからイベント情報の取得指示を受け付けると、HTTPプロトコルに従い、リクエスト(request(1))をサーバに送信する。サーバ側の通信ソフトは、端末装置からのリクエストを受信すると、アプリケーションにイベント情報の有無を確認する。サーバ側の通信ソフトは、アプリケーションにイベント情報が存在しない場合には、イベント情報が発生していないと判断し、イベント情報が発生するまで待機する。そして、アプリケーションからイベント情報を受信すると、そのイベント情報をレスポンス(Response(1))として端末装置に通知する。端末装置側の通信ソフトは、サーバからイベント情報を取得すると、それをアプリケーションに通知する。
【0051】
以上によれば、サーバ2は、イベント情報が発生すると、即座にそのイベント情報を端末装置1通知することができるようになる。また、端末装置1は、1回のリクエストで、サーバ2側のイベント情報を取得することができるようになる。
【0052】
[イベント情報通知処理の流れ(2)]
次に、サーバ側の待機時間が最大待機時間を超えた場合のイベント情報通知処理の流れについて、図5を用いて説明する。
【0053】
端末装置側の通信ソフトは、アプリケーションからイベント情報の取得指示を受け付けると、HTTPプロトコルに従い、リクエスト(request(1))をサーバに送信する。サーバ側の通信ソフトは、端末装置からのリクエストを受信すると、アプリケーションにイベント情報の有無を確認し、アプリケーションにイベント情報が発生していない場合には、イベント情報が発生するまで待機する。しかし、イベント情報が発生する前に、イベント情報の発生を待機可能な最大待機時間が経過した場合には、イベント情報が発生していない旨を、レスポンス(Response(1))として端末装置に通知する。
【0054】
端末装置側の通信ソフトは、サーバからイベント情報が発生していない旨を取得すると、再度、リクエスト(request(2))をサーバに送信する。サーバ側の通信ソフトは、端末装置からのリクエストを受信すると、アプリケーションにイベント情報の有無を確認し、アプリケーションにイベント情報が発生していない場合には、イベント情報が発生するまで待機する。そして、アプリケーションからイベント情報を受信すると、そのイベント情報をレスポンス(Response(2))として端末装置に通知する。端末装置側の通信ソフトは、サーバからイベント情報を取得すると、それをアプリケーションに通知する。
【0055】
以上によれば、通信エラー等によるタイムアウトが端末装置側へ通知される前に、イベント情報が発生していない旨を端末装置1に通知しているので、端末装置1は、イベント情報が発生していないためにレスポンスが遅いのか、他の通信エラーなどによりレスポンスが遅いのかを、判断することができるようになる。
【0056】
[端末装置側の処理]
次に、端末装置側の処理の流れについて、図6を用いて説明する。端末装置1の通信ソフトは、アプリケーションからイベント情報の取得指示を受け付けると(S601)、イベント情報の取得を要求する要求メッセージに、通知条件を付加して、サーバ2に送信する(S602)。既述のように、通知条件とは、サーバ側に要求するイベント情報が発生していない場合には、イベント情報の発生を待って、発生したイベント情報を端末装置へ通知するという条件である。通知条件は、具体的には、要求メッセージに含まれる通知条件フラグをONに設定することにより付加される。
【0057】
そして、端末装置1の通信ソフトは、応答メッセージをサーバ2から受信すると、要求したイベント情報を取得したか否かを判断し(S604)、応答メッセージにイベント情報が含まれていると判断する場合は(S604;YES)、イベント情報をアプリケーションに通知する(S605)。一方、応答メッセージにイベント情報が含まれていないと判断する場合は(S604;NO)、S602に戻り、通知条件を付加した要求メッセージを、再度、サーバ2へ送信する。
【0058】
[サーバ側の処理]
次に、サーバ側の処理の流れについて、図7を用いて説明する。サーバ2の通信ソフトは、イベント情報の取得要求メッセージを端末装置1から受信すると(S701)、最大待機時間(タイムアウト)の計測を開始するとともに(S702)、イベント情報の取得をアプリケーションに要求する(S703)。
【0059】
サーバ2の通信ソフトは、アプリケーションからイベント情報を取得したか否かを判断し(S704)、イベント情報を取得したと判断する場合には(S704;YES)、応答メッセージにイベント情報を添付して、端末装置1へ送信する(S705)。これに対し、イベント情報を取得していない(イベント情報が発生していない)と判断する場合には(S704;No)、イベント情報を取得するまで待機するか否かを判断する(S706)。具体的には、要求メッセージに含まれる通知条件フラグがONに設定されている場合には、イベント情報を取得するまで待機すると判断する。なお、通知条件フラグがOFFの場合には(S706;NO)、待機する必要がないので、S708にて、イベント情報が発生していない旨の応答メッセージをただちに送信する。
【0060】
イベント情報を取得するまで待機すると判断した場合には(S706;YES)、続いて、最大待機時間が経過していないか否かを判断し(S707)、経過していないと判断する場合には(S707;NO)、ステップS704に戻り、処理を続ける。一方、最大待機時間が経過していると判断する場合には(S707;YES)、イベント情報の待機を解除し、応答メッセージにイベント情報は発生していない旨をセットして、端末装置1へ送信する(S708)。
【0061】
[第2の実施の形態]
第1の実施の形態では、サーバ側で通知すべき情報が発生していない場合には、通知すべき情報が発生するまで待機する場合について説明した。しかし、第2の実施の形態では、サーバ側で通知すべき情報が発生していない場合には、サーバは、応答メッセージを送信せず、端末装置は、所定の時間が経過しても、サーバから応答メッセージが通知されない場合には、「通知すべき情報が発生していない」という応答メッセージが送信されたとみなす。つまり、第2の実施の形態では、応答メッセージの不送信により、通知すべき情報が発生していない旨を、端末装置へ通知することを、特徴とする。
【0062】
ここで、図2及び図3を用いて、第2の実施の形態に係る端末装置及びサーバの機能について説明する。第2の実施の形態では、端末装置1の通知条件付加手段102は、通知条件として、「通知すべき情報が発生していない場合には、応答メッセージを送信しない」という条件を設定する。また、リクエスト送信手段104は、リクエストを送信すると、その旨をレスポンス受信手段106に通知する。
【0063】
レスポンス受信手段106は、リクエストを送信した旨を受け付けると、非通知時間の計測を開始する。非通知時間は、端末装置からの取得要求に対してサーバが応答メッセージを通知するのに要する平均的な時間や、通信のトラフィック状況などを考慮して設定、更新される。レスポンス受信手段106は、非通知時間の計測開始後、設定された非通知時間を経過しても、サーバ2から応答メッセージを受信していない場合には、イベント情報不存在による応答メッセージの非通知であると判断する。そして、この場合、イベント情報が発生していない旨の応答メッセージを受信したものとみなし、その旨を、アプリケーションに通知する。
【0064】
一方、サーバ2のイベント情報取得手段202は、アプリケーション22からイベント情報が発生していない旨を受け付けると、通知条件に従って、応答メッセージを送信しない旨を決定する。よって、レスポンス送信手段206からは、応答メッセージが送信されない。
【0065】
[イベント情報非通知処理の流れ]
次に、サーバ側で通知すべき情報が発生していない場合には、応答メッセージを送信しないイベント情報非通知処理の流れについて、図8を用いて説明する。図8では、イベント情報が存在する場合の処理と、イベント情報が発生していない場合の処理を、それぞれ記載している。
【0066】
まず、端末装置側の通信ソフトは、アプリケーションからイベント情報の取得指示を受け付けると、HTTPプロトコルに従い、リクエスト(request(1))をサーバに送信する。サーバ側の通信ソフトは、端末装置からのリクエストを受信すると、アプリケーションにイベント情報の有無を確認する。アプリケーションにイベント情報が存在する場合には、そのイベント情報をレスポンス(Response(1))として端末装置に通知する。端末装置側の通信ソフトは、サーバからイベント情報を取得すると、それをアプリケーションに通知する。
【0067】
また、端末装置1の通信ソフトは、リクエスト(request(2))をサーバに送信すると、これに伴い、非通知時間の計測を開始する。リクエスト(request(2))を受け付けたサーバ側で、アプリケーションにイベント情報が発生していない場合には、通知条件に従って、応答メッセージを送信しない旨を決定する。端末装置1の通信ソフトは、非通知時間の計測開始後、設定された非通知時間を経過してもサーバ2から応答メッセージを受信していない場合には、イベント情報不存在による応答メッセージの非通知であると判断する。そして、この場合、イベント情報が発生していない旨の応答メッセージを受信したものとみなし、その旨を、アプリケーションに通知する。
【0068】
以上によれば、応答メッセージの非通知という構成により、イベント情報が発生していない旨を端末装置側へ通知することができるようになる。よって、イベント情報が発生していない旨の応答メッセージの送信が不要となり、データ通信量ひいては通信コストを軽減することができるようになる。
【0069】
[その他の実施の形態]
上記実施形態は、本発明を説明するための例示であり、本発明を上記実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。例えば、上記機能実現手段の動作をシーケンシャルに説明したが、特にこれにこだわるものではない。従って、動作に矛盾が生じない限り、処理の順序を入れ替えまたは並行動作するように構成しても良い。
【0070】
【発明の効果】
本発明によれば、リクエスト/レスポンス型の通信手順に従って所定の情報を送受信する通信システムにおいて、データ通信量を削減することが可能になる。また、端末装置の動作とは非同期に発生する所定の情報を、リアルタイムで端末装置に通知することができるようになる。
【図面の簡単な説明】
【図1】本発明にかかる通信システムの全体構成を表す図である
【図2】端末装置(クライアント)1の機能を示す機能構成図である。
【図3】サーバ2の機能を示す機能構成図である。
【図4】イベント情報通知処理の流れ(1)を示すフローチャートである。
【図5】イベント情報通知処理の流れ(2)を示すフローチャートである。
【図6】端末装置側の処理の流れを示すフローチャートである。
【図7】サーバ側の処理の流れを示すフローチャートである。
【図8】イベント情報非通知処理の流れ示すフローチャートである。
【図9】ネットワークゲームの流れを説明するための図である。
【図10】HTTPプロトコルに基づいてサーバ側の情報を端末装置へ通知する従来の処理の流れを説明するための図である。
【符号の説明】
1…端末装置
2…サーバ
3…通信路
10…通信ソフト
12…アプリケーション
20…通信ソフト
22…アプリケーション
Claims (8)
- 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバであって、
前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信する受信手段と、
前記受信された要求メッセージにて指定された所定の情報を取得する取得手段と、
前記取得された所定の情報に基づく応答メッセージを端末装置へ送信する送信手段と、を備え、
前記取得手段は、
前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機することを特徴とするサーバ。 - 前記取得手段は、
前記要求メッセージの受信後、所定の時間内に前記所定の情報を取得できない場合には、前記待機を中止し、
前記送信手段は、
前記所定の情報が発生していない旨の応答メッセージを送信することを特徴とする請求項1記載のサーバ。 - 前記所定の情報は、前記端末装置の動作とは非同期にサーバにより生成される情報及び前記端末装置の動作とは非同期に他の端末装置からサーバに送信される情報のうち、少なくともいずれか1つの情報を含むことを特徴とする請求項1または2記載のサーバ。
- 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、前記端末装置の動作とは非同期に発生する所定の情報をサーバが端末装置へ通知する通知方法であって、
前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信し、該受信された要求メッセージにて指定された所定の情報が発生していない場合には、前記所定の情報が発生するまで待機し、前記所定の情報が発生したときに、この発生した所定の情報に基づく応答メッセージを前記端末装置へ送信することを特徴とする通知方法。 - 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバに、
前記端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージを端末装置から受信するステップ、
前記受信された要求メッセージにて指定された所定の情報が発生していない場合には、前記所定の情報が発生するまで待機するステップ、
前記所定の情報が発生した場合に、この発生した所定の情報を取得するステップ、
前記取得された所定の情報に基づいて応答メッセージを生成するステップ、
前記生成された応答メッセージを前記端末装置へ送信するステップ、
を実行させるためのプログラム。 - 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って、所定の情報を端末装置へ通知するサーバとの間で通信を行う端末装置であって、
前記端末装置の動作とは非同期に発生する所定の情報に対する取得要求と、前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機する旨の条件と、を含む要求メッセージを、前記サーバへ送信する送信手段、
を備えることを特徴とする端末装置。 - 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って通信を行う通信システムであって、
前記端末装置は、
該端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージをサーバに送信する送信手段、を備え、
前記サーバは、
前記送信された要求メッセージを受信する受信手段と、
前記受信された要求メッセージにて指定された所定の情報を取得する取得手段と、
前記取得された所定の情報に基づく応答メッセージを端末装置へ送信する送信手段と、を備え、
前記取得手段は、
前記所定の情報が発生していない場合には、前記所定の情報が発生するまで待機し、前記所定の情報が発生したときに、該発生した所定の情報を取得することを特徴とする通信システム。 - 端末装置から送信される要求メッセージに基づいてサーバが応答メッセージを返信する要求/応答型の通信手順に従って通信を行う通信システムにおける通信方法であって、
前記端末装置は、該端末装置の動作とは非同期に発生する所定の情報に対する要求メッセージをサーバに送信し、
前記サーバは、前記送信された要求メッセージを受信し、この受信した要求メッセージにて指定された所定の情報が発生していない場合には、前記送信された要求メッセージに対する応答メッセージの送信を中止し、
前記端末装置は、前記要求メッセージの送信後所定の時間が経過しても前記サーバから応答メッセージを受信していない場合には、前記サーバから前記要求メッセージにて指定した所定の情報が発生していない旨の応答メッセージを受信したものとみなす、ことを特徴とする通信システムにおける通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002277647A JP2004118325A (ja) | 2002-09-24 | 2002-09-24 | データ通信方法及びデータ通信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002277647A JP2004118325A (ja) | 2002-09-24 | 2002-09-24 | データ通信方法及びデータ通信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004118325A true JP2004118325A (ja) | 2004-04-15 |
Family
ID=32273189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002277647A Pending JP2004118325A (ja) | 2002-09-24 | 2002-09-24 | データ通信方法及びデータ通信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004118325A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007335960A (ja) * | 2006-06-12 | 2007-12-27 | Mitsubishi Electric Corp | 情報提供装置及び情報提供方法及びプログラム |
WO2010140570A1 (ja) * | 2009-05-31 | 2010-12-09 | コミットメントテクノロジー株式会社 | 電子会議サーバおよびコンピュータプログラム |
JP2011154651A (ja) * | 2010-01-28 | 2011-08-11 | Casio Computer Co Ltd | Httpトンネルサーバ装置およびその制御プログラム |
JP2012501481A (ja) * | 2008-08-29 | 2012-01-19 | マルチモーダル・テクノロジーズ・インク | 片方向通信を使用する分散型音声認識 |
-
2002
- 2002-09-24 JP JP2002277647A patent/JP2004118325A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007335960A (ja) * | 2006-06-12 | 2007-12-27 | Mitsubishi Electric Corp | 情報提供装置及び情報提供方法及びプログラム |
JP2012501481A (ja) * | 2008-08-29 | 2012-01-19 | マルチモーダル・テクノロジーズ・インク | 片方向通信を使用する分散型音声認識 |
WO2010140570A1 (ja) * | 2009-05-31 | 2010-12-09 | コミットメントテクノロジー株式会社 | 電子会議サーバおよびコンピュータプログラム |
JP2011154651A (ja) * | 2010-01-28 | 2011-08-11 | Casio Computer Co Ltd | Httpトンネルサーバ装置およびその制御プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4668268B2 (ja) | ネットワーク参加者のステータス評価 | |
CN100477614C (zh) | 用于选择数据提供者的系统和方法 | |
JP2004129042A5 (ja) | ||
RU2006144606A (ru) | Способ и устройство для роуминга в системе информации о местоположении | |
CN111224999A (zh) | 一种传输协议切换方法、装置、设备及存储介质 | |
US20160050267A1 (en) | Sign-In Method and Terminal | |
JP2008015593A (ja) | 中継装置、プログラム、中継方法及び通信システム | |
WO2008074244A1 (zh) | 一种即时通信的方法、系统及装置 | |
JP2004118325A (ja) | データ通信方法及びデータ通信システム | |
JP2004015336A (ja) | 緊急情報通知機能を備えたサーバ装置 | |
AU2713701A (en) | System and method for inputting a web-page input data into web page by employing a wire/wireless telephone | |
JP3507824B2 (ja) | データ伝送装置及びデータ伝送方法 | |
JP4547210B2 (ja) | クライアント端末、サービス提供装置及びサービス発見方法 | |
JP2007243814A (ja) | Ip電話システム | |
JP3776848B2 (ja) | 管理サーバ及びプログラム | |
CN111245874B (zh) | 信息推送方法、装置、服务器及存储介质 | |
US9106608B2 (en) | Communication device, communication method, and non-transitory computer-readable recording medium | |
CN103338115B (zh) | 信息处理系统、管理终端装置、信息处理装置 | |
JP2002062159A (ja) | 測位履歴転送装置、測位履歴記録システム、測位履歴記録方法、及び測位履歴用プログラムを記録した記録媒体 | |
JP3968060B2 (ja) | セッションメディア保留方法、保留装置、保留プログラム及び該プログラムを記録した記録媒体 | |
JP4140728B2 (ja) | 管理サーバ及びプログラム | |
JP2008113427A (ja) | ネットワーク・アクセス設備、ネットワーク接続を確立する方法及びこれらを使う移動通信システム | |
JP3929903B2 (ja) | 呼接続システム、方法及び該方法を実行させるためのプログラム | |
CN108769006A (zh) | 一种基于实时通讯库的协同办公系统及方法 | |
JP4958225B2 (ja) | リクエスト受付方法およびシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070501 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070723 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071114 |