(57)【要約】  断続的通信を行ない得る装置に代わってオンラインサービスとの通信をマネージすることに向けられたシステム及び方法。プロキシーサーバーは、ゲームサービスのようなオンラインサービスとの信頼性ある通信セッションを与え、オンラインサービスと、移動ターミナルのような断続的通信装置との間で情報を中継する。プロキシーサーバーは、断続的通信装置がプロキシーサーバーと通信しない間に、オンラインサービスからのメッセージ及び／又は他の情報を記憶する。プロキシーサーバーは、断続的通信装置、オンラインサービス、又は断続的通信装置が通信するポータルのような別のソースから要求があったときに、通信をマネージすることができる。プロキシーサーバーは、独特の識別子のテーブルを使用して、多数の断続的通信装置と、１つ以上のオンラインサービスとの間にメッセージをマップする。プロキシー通信は、通信中断のコマンド又は時間経過の後に終了となる。【選択図】図５
2008545455.tif 000002
【特許請求の範囲】
【請求項１】
断続的通信装置とオンラインサービスとの間の通信をマネージする方法において、
前記断続的通信装置と前記オンラインサービスとの間の通信に対する要求を受け取るステップと、
前記オンラインサービスとのプロキシー通信セッションを確立するステップと、
前記オンラインサービスから、前記断続的通信装置に意図されたメッセージを受け取るステップと、
前記断続的通信装置との一時的通信を確立するステップと、
前記断続的通信装置へメッセージを送信するステップと、
を備えた方法。
【請求項２】
前記断続的通信装置は、セルラー電話、パーソナルデジタルアシスタント、及び移動ゲーム装置の少なくとも１つを含む、請求項１に記載の装置。
【請求項３】
前記要求は、前記断続的通信装置と通信するオンラインポータルサービスから受け取られる、請求項１に記載の方法。
【請求項４】
前記要求は、別のクライアント装置が前記オンラインサービスと通信しているという指示に応答して受け取られる、請求項１に記載の方法。
【請求項５】
前記通知は、他のクライアント装置における予め定義されたファイルの実行を検出するゲームプローブにより開始される、請求項４に記載の方法。
【請求項６】
前記断続的通信装置が一時的通信を要求するまでメッセージを記憶するステップを更に備えた、請求項１に記載の方法。
【請求項７】
前記プロキシー通信セッションは、
前記プロキシー通信セッションを終了するためのインストラクションを前記断続的通信装置から受け取り、
前記断続的通信装置との通信以来、予め定義された周期が経過した、
の一方が起きるまで、アクティブに保たれる、請求項１に記載の方法。
【請求項８】
前記オンラインサービスは、ゲームサービスを含む、請求項１に記載の方法。
【請求項９】
前記断続的通信装置からクライアントメッセージを受け取るステップであって、前記クライアントメッセージはオンラインサービスに意図されたものであるステップと、
前記クライアントメッセージを前記オンラインサービスへ送信するステップと、
を更に備えた請求項１に記載の方法。
【請求項１０】
断続的通信装置とオンラインサービスとの間の通信に対する要求を受け取り、
前記オンラインサービスとのプロキシー通信セッションを確立し、
前記オンラインサービスから、断続的通信装置に意図されたメッセージを受け取り、
前記断続的通信装置との一時的通信を確立し、
前記断続的通信装置へメッセージを送信する、
ことを含むアクションを遂行するための実行可能なインストラクションを備えたコンピュータ読み取り可能なメディア。
【請求項１１】
ネットワークを経てデータを通信するための変調されたデータ信号であって、この変調されたデータ信号は、
断続的通信装置とオンラインサービスとの間の通信に対する要求を受け取り、
前記オンラインサービスとのプロキシー通信セッションを確立し、
前記オンラインサービスから、断続的通信装置に意図されたメッセージを受け取り、
前記断続的通信装置との一時的通信を確立し、
前記断続的通信装置へメッセージを送信する、
というアクションをコンピューティング装置が遂行できるようにするインストラクションを含む、変調されたデータ信号。
【請求項１２】
断続的通信装置とオンラインサービスとの間の通信をマネージするためのサーバー装置において、
前記断続的通信装置及びオンラインサービスと通信する通信インターフェイスと、
インストラクション及びデータを記憶するためのメモリと、
前記通信インターフェイス及び前記メモリと通信するプロセッサであって、
断続的通信装置とオンラインサービスとの間の通信に対する要求を受け取り、
前記オンラインサービスとのプロキシー通信セッションを確立し、
前記オンラインサービスから、断続的通信装置に意図されたメッセージを受け取り、
前記断続的通信装置との一時的通信を確立し、
前記断続的通信装置へメッセージを送信する、
ことを含むアクションを、前記記憶されたインストラクションに少なくとも一部分基づいて遂行するプロセッサと、
を備えたサーバー装置。
【請求項１３】
前記通信インターフェイスは、更に、オンラインポータルサービスと通信し、そして前記要求は、前記断続的通信装置とも通信しているオンラインポータルサービスから受け取られる、請求項１２に記載のサーバー装置。
【請求項１４】
前記要求は、別のクライアント装置が前記オンラインサービスと通信しているという通知に応答して受け取られる、請求項１２に記載のサーバー装置。
【請求項１５】
前記インストラクションは、前記プロセッサが、
前記断続的通信装置を表わす独特な識別子をメッセージに関連付け、
前記メッセージ及び前記独特な識別子を記憶し、
前記断続的通信装置との一時的な通信の確立を検出する、
というアクションを更に遂行するようにさせる、請求項１２に記載のサーバー装置。
【請求項１６】
前記プロキシー通信セッションは、
前記プロキシー通信セッションを終了するためのインストラクションを前記断続的通信装置から受け取り、
前記断続的通信装置との通信以来、予め定義された周期が経過した、
の一方が起きるまで、アクティブに保たれる、請求項１２に記載のサーバー装置。
【請求項１７】
前記オンラインサービスはゲームサービスである、請求項１２に記載のサーバー装置。
【請求項１８】
前記インストラクションは、前記プロセッサが、
前記断続的通信装置からクライアントメッセージを受け取り、前記クライアントメッセージはオンラインサービスに意図されたものであり、更に、
前記クライアントメッセージを前記オンラインサービスへ送信する、
というアクションを更に遂行するようにさせる、請求項１２に記載のサーバー装置。
【請求項１９】
オンラインサービスと通信するためのクライアント装置において、
プロキシーサーバーと通信する通信インターフェイスと、
インストラクションを記憶するメモリと、
前記通信インターフェイス及び前記メモリと通信するプロセッサであって、このプロセッサは、
前記オンラインサービスとの通信に対する要求を送信し、
プロキシーサーバーとの一時的通信を確立し、
前記オンラインサービスから前記プロキシーサーバーにより受け取られたメッセージを前記プロキシーサーバーから受け取り、前記プロキシーサーバーは、前記オンラインサービスとのプロキシー通信セッションを有する、
ことを含むアクションを、前記記憶されたインストラクションに少なくとも一部分基づいて遂行するようなプロセッサと、
を備えたクライアント装置。
【請求項２０】
前記クライアント装置は、セルラー電話、パーソナルデジタルアシスタント、及び移動ゲーム装置の少なくとも１つを含む、請求項１９に記載のクライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、マルチパーソンオンラインサービスに係り、より詳細には、断続的通信を行ない得る装置に代わってオンラインサービスとの通信をマネージすることに係るが、これに限定されない。
【０００２】
関連出願へのクロスリファレンス：本出願は、２００６年５月１２日に出願された米国特許出願第１１／３８３，１７８号、及び２００５年５月１３日に出願された米国プロビジョナル特許出願第６０／６８１，２０２号の利益を請求するもので、その早い方の出願日の利益をここで３５ＵＳＣ§１１９（ｅ）のもとで請求し、且つその両方を参考としてここに援用する。
【背景技術】
【０００３】
ネットワーク通信が改良されるにつれて、オンラインマルチプレーヤゲーム及び他のコラボレーションサービスが益々普及してきている。互いに地理的に離れたユーザは、オンラインサービスと通信し、ゲーム及び／又は他のコラボレーションサービスに一緒に参加することができる。通常、ユーザは、ローカル処理を遂行しそしてオンラインサービスと通信するクライアントプログラムを実行し、マルチユーザゲーム又はサービスの連係状態を整合する。ユーザが同じオンラインゲーム又はオンラインサービスへの参加を開始するために、ユーザは、オンラインゲーム又はオンラインサービスに関連したオンラインロビー又は他のマッチングシステムにおいて出会うことができる。しかしながら、個人が同じロビーとまだ通信していないか、又は同じオンラインサービスにまだ参加していない場合には、その個人は、友人又は同僚が参加していることに気付かない。友人又は同僚は、その個人に手動で電話するか、又は識別子を伴うメッセージを送信して、同じオンライン又はサービスに参加するように個人を招待することができる。オンラインゲームサービスの外部にいる人々に到達するために、メッセージが、通常、独立したメッセージングサービス、例えば、オンラインポータルｅメールサービス又はインスタントメッセージサービスを通して送信され、これは、一般的に、オンラインゲームサービスの登録されたユーザに限定されない。しかしながら、このアウトオブバンド(out-of-band)メッセージングは、連絡先情報を見出すのに時間がかかり、現在のゲームセッション又は他のサービスセッションからかけ離れている。
【０００４】
移動装置も、オンラインゲームに参加するように使用される。オンラインサービスへの移動ユーザの参加を他の者に通知する困難さに加えて、移動装置は、オンラインサービスとの一貫した通信を維持する更なる困難さがある。移動セル間を遷移する間に通信が中断することもある。又、通信のクオリティ及び／又はスピードは、ジッタ、大気条件及び他のファクタによって影響されることがある。その結果、オンラインセッションがドロップしたり、低速化したり、さもなければ、質低下したりする。
【０００５】
本発明の非限定的及び非徹底的実施形態を、添付図面を参照して説明する。添付図面において、特に指示のない限り、種々の図面全体にわたり同じ部分を同じ参照番号で示す。
本発明を良く理解するために、添付図面を参照して以下に詳細に説明する。
【発明を実施するための最良の形態】
【０００６】
本発明は、本発明の特定の実施形態を一例として示す添付図面を参照して以下に詳細に説明する。しかしながら、本発明は、多数の異なる形態で実施することができ、ここに示す実施形態に限定されず、むしろ、これら実施形態は、この開示を完全なものとし、且つ本発明の範囲を当業者に完全に伝えるように設けられている。とりわけ、本発明は、方法又は装置として実施される。従って、本発明は、完全にソフトウェアの実施形態、完全にハードウェアの実施形態、或いはソフトウェア及びハードウェア観点を結合した実施形態の形をとる。それ故、以下の詳細な説明は、これに限定されるものではない。簡単に述べると、本発明は、完結的な通信を行ない得る装置に代わってオンラインサービスとの通信をマネージすることに向けられる。本発明は、これに限定されないが、ゲームプログラムを実行してオンラインゲームシステムに参加するクライアント移動装置と、オンラインゲームシステムに直接関連してもしなくてもよいプロキシーシステムとに関して実施形態を説明する。
【０００７】
例示的オペレーティング環境
図１は、本発明が動作し得る環境の一実施形態を示す。しかしながら、本発明を実施するのにこれらコンポーネントの全てが要求されるのではなく、又、本発明の精神又は範囲から逸脱せずにこれらコンポーネントの配列及び形式の変更がなされ得る。
【０００８】
図示されたように、システム１０は、クライアント装置１２−１４と、ネットワーク１５と、プロキシーサービス１６（ポータルサービスでもよい）と、この実施形態ではプロキシーサービスに直接関連していないゲームサービス１７（ゲームサービスはプロキシーサービスに関連してもよい）とを備えている。ネットワーク１５は、各クライアント装置１２−１４、プロキシーサーバー１６及びゲームサーバー１７と通信し、且つそれらの間の通信を可能にする。
【０００９】
クライアント装置１２−１４は、実質上、ネットワーク１５のようなネットワークを経て、プロキシー装置１６のような別のコンピューティング装置と互いにメッセージを送信及び受信することのできる何らかのコンピューティング装置、等を含む。このような装置のセットは、より特殊な装置と通常考えられ且つ典型的にワイヤレス通信メディアを使用して接続する移動ターミナル、例えば、セルラー電話、スマートフォン、ページャー、ウオーキートーキー、高周波（ＲＦ）装置、赤外線（ＩＲ）装置、ＣＢ、これら装置の１つ以上を結合する一体化装置、又は、実質上、任意の移動装置、等を含む。又、このような装置のセットは、より汎用の装置と通常考えられ且つ典型的にワイヤード通信メディアを使用して接続する装置、例えば、パーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースの又はプログラム可能な消費者向け電子装置、ネットワークＰＣ、等も含む。同様に、クライアント装置１２−１４は、ワイヤード又はワイヤレス通信メディアを使用して接続できる装置、例えば、パーソナルデジタルアシスタント（ＰＤＡ）、ＰＯＣＫＥＴ  ＰＣ、着用型コンピュータ、並びにワイヤード及び／又はワイヤレス通信メディアを経て通信するように装備された他の装置であってもよい。
【００１０】
クライアント装置１２−１４内の各クライアント装置は、ユーザが、存在設定のような設定をコントロールすると共に、クライアント装置にオペレーションの遂行を命令できるようにするユーザインターフェイスを備えている。又、各クライアント装置は、そのクライアント装置が、同じ又は異なる通信モードを使用して別のコンピューティング装置とメッセージをやり取りできるようにする通信インターフェイスも備え、その通信モードは、ショートメッセージサービス（ＳＮＳ）メッセージング、マルチメディアメッセージサービス（ＭＭＳ）メッセージング、インスタントメッセージング（ＩＭ）、ｅメール、インターネットリレーチャット（ＩＲＣ）、Ｍａｒｄａｍ−Ｂｅｙのインターネットリレーチャット（ｍＩＲＣ）、Ｊａｂｂｅｒ、等を含むが、これらに限定されない。クライアント装置１２−１４は、更に、独立して実行されるか又はブラウザアプリケーションを通して実行されるゲームクライアントプログラムで構成されてもよく、ブラウザアプリケーションは、ウェブページ、ウェブベースメッセージ、等を受信し及び送信するように構成される。ゲームクライアントプログラム及び／又はブラウザアプリケーションは、グラフィック、テキスト、マルチメディア、等を受け取り及び表示するように構成されてもよい。ブラウザアプリケーションは、実質上、いかなるウェブベース言語を使用してもよく、これは、ハンドヘルドデバイスマークアップ言語（ＨＤＭＬ）、例えば、ワイヤレスマークアップ言語（ＷＭＬ）、ＷＭＬＳｃｒｉｐｔ、ＪａｖａＳｃｒｉｐｔ、標準的一般化マークアップ言語（ＳＧＭＬ）、ハイパーテキストマークアップ言語（ＨＴＭＬ）、拡張性マークアップ言語（ＸＭＬ）、ワイヤレスアプリケーションプロトコル（ＷＡＰ）、等を含むが、これらに限定されない。
【００１１】
ネットワーク１５は、１つのコンピューティング装置を別のコンピューティング装置に結合してそれらが通信を行なえるように構成される。ネットワーク１５は、ある電子装置から別の電子装置へ情報を通信するためのいかなる形式のメディアを使用することもできる。又、ネットワーク１５は、セルラーネットワークインターフェイスのようなワイヤレスインターフェイス、及び／又はインターネットインターフェイスのようなワイヤードインターフェイスを、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、ユニバーサルシリアルバス（ＵＳＢ）ポートによる直接的接続、他の形式のコンピュータ読み取り可能なメディア、又はその組み合せに対するインターフェイスに加えて、含んでもよい。異なるアーキテクチャー及びプロトコルをベースとするものを含むＬＡＮの相互接続セットにおいて、ルーターがＬＡＮとＬＡＮとの間のリンクとして働き、一方から他方へメッセージを送信できるようにする。又、ＬＡＮ内の通信リンクは、通常、ねじれワイヤ対又は同軸ケーブルを含み、一方、ネットワークとネットワークとの間の通信リンクは、空中、アナログ電話回線、Ｔ１、Ｔ２、Ｔ３及びＴ４を含む全及び部分専用デジタル回線、サービス総合デジタル網（ＩＳＤＮ）、デジタル加入者ライン（ＤＳＬ）、衛星リンクを含むワイヤレスリンク、或いはそれらと同等の及び／又は当業者に知られた他の通信リンクを経てセルラー電話信号を利用することができる。更に、リモートコンピュータ及び他の関連電子装置は、モデム及び一時的電話リンクを経てＬＡＮ又はＷＡＮにリモート接続することができる。本質的に、ネットワーク１５は、クライアント装置１２−１４、プロキシーサーバー１６及び／又はゲームサーバー１７の間に情報を移動させる通信方法を含む。ネットワーク１５は、送信コントロールプロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ＷＡＰ、コード分割多重アクセス（ＣＤＭＡ）、移動通信用のグローバルシステム（ＧＳＭ）、等を含む種々の通信プロトコルと共に使用するように構成される。
【００１２】
上述した通信リンクにおいて情報を送信するのに使用されるメディアは、一般に、コンピューティング装置によりアクセスできるメディアであって、導電性メディア、磁気メディア、光学的メディア、空中又は他の搬送波メディア、等を含むメディアを包含する。コンピュータ読み取り可能なメディアは、コンピュータ記憶メディア、ワイヤード及びワイヤレス通信メディア、又はその組み合せを含む。更に、コンピュータ読み取り可能なメディアは、通常、コンピュータ読み取り可能なインストラクション、データ構造体、プログラムモジュール、又は他のデータを、変調データ信号、例えば、搬送波、データ信号又は他の搬送メカニズムにおいて実施し、そして情報配送メディアを含む。「変調データ信号」及び「搬送波信号」という語は、信号において情報、インストラクション、データ、等をエンコードするように、その特性の１つ以上を設定又は変更した信号を含む。更なる例として、通信メディアは、ワイヤレスメディア、例えば、音響、ＲＦ、赤外線、及び他のワイヤレスメディア、並びにワイヤードメディア、例えば、ねじれ対、同軸ケーブル、光ファイバー、導波器、及び他のワイヤードメディアを含む。
【００１３】
例示的クライアント環境
図２は、本発明を実施するシステムに含まれるクライアント装置１００の一実施形態を示す。クライアント装置１００は、図２に示す以上の又は以下の多数のコンポーネントを含んでもよい。しかしながら、本発明を実施するための実施形態を開示するのに、図示されたコンポーネントで充分である。図示されたように、クライアント装置１００は、バス１２４を経て大量メモリ１３０と通信する処理ユニット１２２を備えている。
【００１４】
又、クライアント装置１００は、電源１２６、１つ以上のネットワークインターフェイス１５０、オーディオインターフェイス１５２、ディスプレイ１５４、キーパッド１５６、イルミネータ１５８、入力／出力インターフェイス１６０、触覚インターフェイス１６２、及びオプションのグローバルポジショニングシステム（ＧＰＳ）受信器１６４も備えている。電源１２６は、クライアント装置１００へ電力を供給する。電力を供給するのに充電型又は非充電型バッテリを使用してもよい。又、電力は、バッテリを補給及び／又は再充電するＡＣアダプタ又はパワードッキングクレードルのような外部電源により供給されてもよい。
【００１５】
クライアント装置１００は、ベースステーション（図示せず）と通信するか又は別のコンピューティング装置と直接通信するのも任意である。ネットワークインターフェイス１５０は、クライアント装置１００を１つ以上のネットワークに結合するための回路を備え、そして１つ以上の通信プロトコル及び技術と共に使用するように構成され、これらは、移動通信用のグローバルシステム（ＧＳＭ）、コード分割多重アクセス（ＣＤＭＡ）、時分割多重アクセス（ＴＤＭＡ）、ユーザデータグラムプロトコル（ＵＤＰ）、送信コントロールプロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ＳＭＳ、汎用パケット無線サービス（ＧＰＲＳ）、ＷＡＰ、ウルトラワイドバンド（ＵＷＢ）、ＩＥＥＥ８０２．１６マイクロウェーブアクセスのためのワールドワイドインターオペラビリティ（ＷｉＭａｘ）、ＳＩＰ／ＲＴＰ、等を含むが、これらに限定されない。
【００１６】
オーディオインターフェイス１５２は、人間の音声のサウンドのようなオーディオ信号を発生し及び受信するように構成される。例えば、オーディオインターフェイス１５２は、スピーカ及びマイクロホン（図示せず）に結合されて、他の者との通信を可能にし及び／又はあるアクションに対するオーディオ確認を発生することができる。ディスプレイ１５４は、液晶ディスプレイ（ＬＣＤ）、ガスプラズマ、発光ダイオード（ＬＥＤ）、又はコンピューティング装置と共に使用される他の形式のディスプレイでよい。又、ディスプレイ１５４は、スタイラスのような物体又は人間の手の指から入力を受け取るように構成されたタッチ感知スクリーンを含んでもよい。
【００１７】
キーパッド１５６は、ユーザから入力を受け取るように構成された入力装置を含む。例えば、キーパッド１５６は、プッシュボタン数字ダイヤル又はキーボードを含む。又、キーパッド１５６は、カーソル移動のようなコマンド、メニュー選択、映像の選択及び送信に関連したインストラクション、等を入力するためのボタンを含んでもよい。イルミネータ１５８は、状態指示を与え、及び／又は光を発生する。イルミネータ１５８は、特定の時間周期中アクティブに保たれてもよいし、或いは事象に応答してアクティブになってもよい。例えば、イルミネータ１５８がアクティブになると、キーボード１５６のボタンを後方照明し、クライアント装置が付勢されている間、オンに留まることができる。又、イルミネータ１５８は、別のクライアント装置をダイヤルするような特定のアクションが行なわれるときに、これらボタンを種々のパターンで後方照明することができる。又、イルミネータ１５８は、クライアント装置の透明又は半透明ケース内に入れられた光源がアクションに応答して照明するようにさせてもよい。
【００１８】
又、クライアント装置１００は、図２には示されていないヘッドセット或いは他の入力又は出力装置のような外部装置と通信するための入力／出力インターフェイス１６０も備えている。この入力／出力インターフェイス１６０は、１つ以上の通信技術、例えば、ＵＳＢ、赤外線、ＢｌｕｅｔｏｏｔｈTM、等を使用することができる。触覚インターフェイス１６２は、クライアント装置のユーザに触覚フィードバックを与えるように構成される。例えば、触覚インターフェイスは、コンピューティング装置の別のユーザがコールしているときにクライアント装置１００を特定の仕方で振動するように使用できる。
【００１９】
オプションのＧＰＳトランシーバ１６４は、地表面上におけるクライアント装置１００の物理的座標を決定し、通常、緯度及び経度値として位置を出力することができる。又、ＧＰＳトランシーバ１６４は、三角法、支援型ＧＰＳ（ＡＧＰＳ）、Ｅ−ＯＴＤ、ＣＩ、ＳＡＩ、ＥＴＡ、ＢＳＳ、等を含む（これに限定されないが）他のジェオ−ポジショニングメカニズムを使用して、地表面上におけるクライアント装置１００の物理的位置を更に決定することもできる。異なる条件のもとで、ＧＰＳトランシーバ１６４は、クライアント装置１００に対して数ミリメーター内で物理的位置を決定することができ、そして他のケースでは、決定される物理的位置は、精度が低く、１メーター以内又はそれより著しく大きい距離である。
【００２０】
大量メモリ１３０は、ＲＡＭ１３２、ＲＯＭ１３４、及び他の記憶手段を含む。大量メモリ１３０は、コンピュータ読み取り可能なインストラクション、データ構造体、プログラムモジュール、又は他のデータのような情報を記憶するためのコンピュータ記憶媒体の別の例を示す。大量メモリ１３０は、クライアント装置１００の低レベルオペレーションを制御するための基本的入力／出力システム（ＢＩＯＳ）１４０を記憶する。又、大量メモリは、クライアント装置１００のオペレーションを制御するためのオペレーティングシステム１４１も記憶する。このコンポーネントは、Ｗｉｎｄｏｗｓ  ＭｏｂｉｌｅTM又はＳｙｍｂｉａｎ（登録商標）オペレーティングシステムのような特殊なクライアント通信オペレーティングシステム、或いはＵＮＩＸ、ＬＩＮＵＸTM、Ｗｉｎｄｏｗｓ（登録商標）、等のバージョンのような汎用のオペレーティングシステムを含むことが明らかであろう。オペレーティングシステムは、Ｊａｖａアプリケーションプログラムを経てハードウェアコンポーネント及び／又はオペレーティングシステムのオペレーションの制御を可能にするＪａｖａTMバーチャルマシンモジュールのようなバーチャルマシンモジュールを備えるか、又はそれとインターフェイスすることができる。
【００２１】
メモリ１３０は、更に、とりわけ、プログラム１４４及び／又は他のデータを記憶するためにクライアント装置１００により使用できる１つ以上のデータ記憶装置１４２も備えている。例えば、データ記憶装置１４２は、クライアント装置１００の種々の能力を記述する情報を記憶するのにも使用できる。この情報は、次いで、種々の事象のいずれかに基づいて別の装置に与えることができ、これは、通信中にヘッダの一部として送信したり、要求があったときに送信したり、等々を含む。
【００２２】
プログラム１４４は、クライアント装置１００により実行されたときに、テキスト、オーディオ、ビデオ、等を処理するコンピュータ実行可能なインストラクションを含むことができる。アプリケーションプログラムの他の例は、カレンダー、連絡先マネージャー、タスクマネージャー、トランスコーダー、データベースプログラム、ワードプロセスプログラム、スプレッドシートプログラム、ゲーム、コーデックプログラム、等々を含む。更に、大量メモリ１３０は、メッセージングクライアント１４６を記憶し、メッセージ（例えば、ＳＭＳ、ＭＭＳ、ＩＭ、ｅメール、及び／又は他のメッセージ）を送信し、受信し、及び／又はその他、処理し、そしてサーバー、別のクライアント装置の別のユーザ、等とのテレコミュニケーションを可能にする。大量記憶装置１３０は、更に、クライアント装置１００におけるゲーム実行インストラクションを与えるゲームクライアント１４８、及び／又はオンラインゲームとのゲーム通信サービスを含むことができる。又、クライアント装置１００におけるゲームプログラムを検出し及び／又は監視するためにゲームプローブ１４９も含まれる。
【００２３】
例示的プロキシー／ポータルサーバー
例示的プロキシーサーバー、例えば、サーバー装置２００の一実施形態を、図３を参照して以下に詳細に説明する。簡単に述べると、プロキシーサーバー装置２００は、ユーザが、他の装置、例えば、ゲームサーバー１７及び／又は他の装置と通信できるようにするために、ネットワーク１５に接続できるコンピューティング装置を含むことができる。プロキシーサーバー装置２００は、ポータルサービス、例えば、ニュースサービス、金融サービス、メッセージングサービス、サーチサービス、等に結合され、又はそれと通信し、さもなければ、それに関連付けられてもよいし、そうでなくてもよい。プロキシーサーバー装置２００は、図示された以上の多数のコンポーネントを備えてもよい。しかしながら、本発明を実施するための実施形態を開示するのに、図示されたコンポーネントで充分である。又、プロキシーサーバー装置２００の多数のコンポーネントが、ポータルサービス１６のサーバー、ゲームサービス１７のサーバー、及び／又は他のサーバー装置に複製されてもよい。
【００２４】
図示されたように、クライアント装置２００は、バス２２３を経て大量メモリ２２４と通信する処理ユニット２２２を備えている。大量メモリ２２４は、一般に、ＲＡＭ２２６、ＲＯＭ２２８、及び他の記憶手段を備えている。又、大量メモリ２２４は、ある形式のコンピュータ読み取り可能なメディア、即ちコンピュータ記憶メディアも示している。コンピュータ記憶メディアは、コンピュータ読み取り可能なインストラクション、データ構造体、プログラムモジュール又は他のデータのような情報を記憶するための方法又は技術で実施される揮発性及び不揮発性の、取り外し可能及び取り外し不能なメディアを含む。コンピュータ記憶メディアの他の例は、ＥＥＰＲＯＭ、フラッシュメモリ又は他の半導体メモリ技術、ＣＤ−ＲＯＭ、デジタル多様性ディスク（ＤＶＤ）、或いは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、又は他の磁気記憶装置、或いは希望の情報を記憶するのに使用できると共にコンピューティング装置によってアクセスできる他のメディアを含む。
【００２５】
大量メモリ２２４は、プロキシーサーバー装置２００の低レベルオペレーションを制御するための基本的入力／出力システム（ＢＩＯＳ）２３０を記憶する。又、大量メモリは、プロキシーサーバー装置２００のオペレーションを制御するためのオペレーティングシステム２３１も記憶する。このコンポーネントは、ＷｉｎｄｏｗｓTM、ＵＮＩＸ、ＬＩＮＵＸTM、等のバージョンのような汎用オペレーティングシステムを含むことが明らかであろう。又、オペレーティングシステムは、アプリケーションプログラムを経てハードウェアコンポーネント及び／又はオペレーティングシステムのオペレーションの制御を可能にするバーチャルマシンモジュールを含んでもよいし、又はそれとインターフェイスしてもよい。
【００２６】
大量メモリ２２４は、更に、とりわけ、プログラム２３４及び／又は他のデータを記憶するためにプロキシーサーバー装置２００により使用することのできる１つ以上のデータ記憶ユニット２３２も備えている。プログラム２３４は、通信信号を送信し、受信し、さもなければ、処理するためのＷＡＰ又は他のプロトコルハンドラーアプリケーションを実施するためにクライアント装置２００により実行できるコンピュータ実行可能なインストラクションを含む。同様に、プログラム２３４は、外部アプリケーションとの通信をセキュアな形態で開始するといった、セキュアな接続を取り扱うためのＷＡＰＳ又は他のプロトコルハンドラーアプリケーションを含むことができる。アプリケーションプログラムの他の例は、スケジューラ、カレンダー、ウェブサービス、トランスコーダー、データベースプログラム、ワードプロセスプログラム、スプレッドシートプログラム、等々を含む。従って、プログラム２３４は、データ通信、ウェブページ、オーディオ、ビデオを処理し、そして電子装置とのテレコミュニケーションを可能にする。
【００２７】
更に、大量メモリ２２４は、メッセージ、ゲーム及び／又は他のアプリケーションのための１つ以上のプログラムを記憶することができる。メッセージングサーバーモジュール２３７は、オペレーティングシステム２３１の制御のもとで実行されて、ＳＭＳ、ＭＭＳ、インスタントメッセージング、ｅメール及び／又は他のメッセージングサービスを可能にするコンピュータ実行可能なインストラクションを含むことができる。同様に、プロキシーサーバー装置２００は、ルーティング、アクセスコントロール、及び／又は他のサーバー側メッセージングサービスを与えることができる。更に、プロキシーサーバー装置２００は、ショッピングサービス、社交的ネットワークサービス、マッピングサービス、等を含む他のポータルサービスを提供するポータルサーバー３８も含むことができる。プロキシーサーバー装置２００に非常に良く似た構成のサーバー装置（及び／又はプロキシーサーバー装置２００それ自体）は、オンラインゲームサービスのアクティビティを監視するモニタリングモジュール（図示せず）を含むことができる。同じサーバー又は異なるサーバーが、オンラインゲームサービスに関する集計情報を収集し、分析しそして記憶するデータ貯蔵モジュール（図示せず）を含むか又はそれと通信してもよい。
【００２８】
又、プロキシーサーバー装置２００は、キーボード、マウス、ホイール、ジョイスティック、ロッカースイッチ、キーパッド、プリンタ、スキャナ、及び／又は図３に特に示されていない他の入力装置のような入力／出力装置と通信するための入力／出力インターフェイス２４０も備えている。プロキシーサーバー装置２００のユーザは、入力／出力装置を使用して、オペレーティングシステム２３１及び／又はプログラム２３４−２３８とは個別であるか又はそれと一体化されたユーザインターフェイスと対話することができる。ユーザインターフェイスとの対話は、ディスプレイ及びビデオディスプレイアダプタ２４２を経ての視覚的対話を含む。
【００２９】
プロキシーサーバー装置２００は、コンピュータ読み取り可能な記憶メディアに対する取り外し可能なメディアドライバ２４４及び／又は永久的メディアドライバ２４６を備えている。取り外し可能なメディアドライバ２４４は、光学的ディスクドライブ、フロッピーディスクドライブ、及び／又はテープドライブの１つ以上を含むことができる。永久的又は取り外し可能な記憶メディアは、コンピュータ読み取り可能なインストラクション、データ構造体、プログラムモジュール、又は他のデータのような情報を記憶するための方法又は技術で実施される揮発性、不揮発性の取り外し可能及び取り外し不能のメディアを含む。コンピュータ記憶メディアの例は、ＣＤ−ＲＯＭ２４９、デジタル多様性ディスク（ＤＶＤ）又は他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、又は他の磁気記憶装置、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又は他のメモリ技術、或いは希望の情報を記憶するのに使用できると共にコンピューティング装置によりアクセスできる他のメディアを含む。
【００３０】
ネットワーク通信インターフェイスユニット２４４を経て、プロキシーサーバー装置２００は、インターネットのようなワイドエリアネットワーク、ローカルエリアネットワーク、ワイヤード電話ネットワーク、セルラー電話ネットワーク、及び／又は図１のネットワーク１５のような他の通信ネットワークと通信することができる。ネットワーク通信インターフェイスユニット２４４は、時には、トランシーバ、トランシーバ装置、ネットワークインターフェイスカード（ＮＩＣ）、等としても知られている。
【００３１】
例示的プログラム検出及び通知
図４は、ゲームプログラムの実行を検出しそして別のクライアントに通知する移動クライアント装置１００のようなクライアント装置におけるゲームプローブの一実施形態に対する例示的ロジックを示すフローチャートである。オペレーション３１０において、クライアント装置は、ゲームプローブをインストールするための許可を受ける。クライアントがゲームプローブを要求したとき、ゲームプローブがそのインストールプロセスを開始するとき、及び／又は別の適当な時間に、許可が与えられる。オペレーション３１２において、ゲームプローブがクライアント装置にインストールされる。ゲームプローブは、ゲームモニタに連絡し、そしてオペレーション３１４において、利用可能なオンラインゲームサーバーの現在テーブルをダウンロードする。
【００３２】
判断オペレーション３１６において、ゲームプローブは、そのテーブルに示されたゲーム及び／又は他のアプリケーションプログラムに対応する予め定義された実行可能なファイルのファイル名に対してオペレーティングシステムのプロセスリストを監視する。ゲームプローブがその予め定義された実行可能なファイルを検出しない場合には、ゲームプローブは、プロセスリストの監視を続ける。ゲームプローブは、予め定義された又は選択可能なインターバル、例えば、各１５秒を待機して、いずれかの予め定義された実行可能なファイルをチェックする。ゲームプローブがプロセスリストにおいて予め定義された実行可能なファイルを検出すると、オペレーション３１８において、ゲームプローブは、その予め定義された実行可能なファイルに関連した通信トラフィックのヘッダをチェックする。ゲームプローブは、最も多くの通信トラフィックが、同じゲームサーバーでのものか、ゲームサービスに関連した同じプロキシーサーバーでのものか、同じポート上にあるか、及び／又は他の通信特性に関するものか調べるためのチェックを行う。判断オペレーション３２０において、ゲームプローブは、多量の通信トラフィックが、予め定義された実行可能なファイルに関連したものであるかどうか決定する。例えば、ゲームプローブは、ある数のユーザデータグラムプロトコル（ＵＤＰ）メッセージが、特定の時間周期内に、同じゲームサーバーと交換されたか又は同じプロキシーサーバーと交換されたか検出する。メッセージの数及び時間周期は、一般に、テーブルに与えられる。しかしながら、メッセージのスレッシュホールド数及び時間周期は、各ゲーム、ゲームサーバー及び／又は他の観点に対する通信の最適化に依存する。
【００３３】
クライアントがオンラインゲームサーバー及び／又はプロキシーサーバーと通信していることを通信トラフィックが指示する場合には、ゲームプローブは、オペレーション３２２において、ＳＭＳ又はインスタントメッセージのようなメッセージを１つ以上の連絡先へ送信するようにメッセンジャークライアントに命令する。クライアントユーザは、メッセージを送信すべき連絡先を予め選択し、及び／又は予め定義されたプログラム（１つ又は複数）の実行に関連した送信メッセージに対する他の制限を予め定義する。メッセージは、ゲームサービスに関連した情報を含み、従って、連絡先は、同じゲームサービスと通信することができる。これは、オンラインゲーム及び／又は他のサービスに参加するように友人を招待する自動的な方法を与える。メッセージは、クライアントに記憶された情報に基づいて連絡先へ直接送信されてもよい。それとは別に又はそれに加えて、メッセージがプロキシーサーバー又はポータルサービスへ通信され、このプロキシーサーバー又はポータルサービスにより記憶されたアドレスブック及び／又は他の連絡先情報に基づいて他のクライアントへメッセージを配布してもよい。逆に、クライアントがオンラインゲームサービス又はプロキシーサーバーと通信しておらず、ゲームをローカルでプレイしているだけであることを通信トラフィックが指示する場合には、メッセージが送信されない。
【００３４】
判断オペレーション３２４において、ゲームプローブは、プロセスリストで指示されたように、予め定義された実行可能なファイルが依然実行しているかどうか検出する。ゲームが依然実行されている場合には、ゲームプローブは、判断オペレーション３２６において、メッセージが既に送信されたかどうか決定する。メッセージが既に送信された場合には、ゲームプローブは、プロセスリストを監視し続けて、予め定義された実行可能なファイルの、リストからの削除を検出する。しかしながら、メッセージが以前に送信されていない場合には、制御がオペレーション３１８へ復帰し、予め定義された実行可能なファイルに関連した通信トラフィックの監視を続ける。ゲームが終了した場合には、予め定義された実行可能なファイルは、もはやリストされず、そしてゲームプローブは、他の予め定義された実行可能なファイルを検出し及び／又は監視することに復帰できる。
【００３５】
例示的なプロキシーサーバーオペレーション
図５は、プロキシーサーバーの例示的ロジックを示すフローチャートである。この実施形態は、断続的に通信を行なう移動装置とオンラインゲームサービスとの間の通信をマネージするプロキシーサーバーに関して説明するが、本発明は、これに限定されない。クライアント装置は、装置及び／又は通信ネットワークに基づき断続的に通信を行ない得る。断続的通信装置は、セルラー電話、ＰＤＡ、ハンドヘルドゲーム装置、ラップトップ、汎用コンピュータ、又はオンラインゲームサービスのようなオンラインサービスとの不連続な通信を経験する他の装置を含む。断続的通信は、連絡が完全に失われるか、或いは通信の質がスレッシュホールドより低下することにより生じる。
【００３６】
オペレーション３４０において、プロキシーサーバー及び移動装置は、初期通信を確立する。移動装置は、プロキシーサーバーとの通信セッションを直接要求することがある。或いは又、オンラインゲームサービス又はポータルサービスが移動装置からの要求をプロキシーサーバーへ中継してもよい。例えば、移動装置は、友人がオンラインゲームサービスに参加するという通知をオンラインポータルから受け取る。次いで、移動装置は、この通知においてリンクを選択し、同じオンラインゲームサービスとの通信を要求する。オンラインゲームサービス又はオンラインポータルは、要求を受け取り、その要求が潜在的な又は確認された断続的通信装置からのものであることを決定し、そしてその要求をプロキシーサーバーへルーティングする。いずれにせよ、移動装置は、オンラインゲームサービスとのセッションを要求する。移動装置とプロキシーサーバーとの間の通信は、ゲームセッションを確立するために及び／又はゲームセッション全体にわたり持続的にアクティブであってもよいし、そうでなくてもよい。
【００３７】
オペレーション３４２において、プロキシーサーバーは、移動装置に代わってオンラインゲームサービスとのプロキシー通信を確立する。このプロキシー通信は、ゲームセッション全体にわたりアクティブに保たれる。多くのオンラインゲームサービスは、クライアント装置がゲームセッション全体にわたりアクティブな通信を維持することを期待する。セッションが中断された場合には、ゲームサービスは、その中断を、ゲームセッションを終了するためのクライアント装置による判断として解釈する。プロキシーサーバーは、オンラインゲームサービスとの通信を維持し、ゲームセッションを維持できないことのある移動装置のような断続的通信装置に対してゲームセッションを維持する。
【００３８】
断続的通信を受け入れるために、プロキシーサーバーは、移動装置とオンラインゲームサービスとの間のメッセージ及び／又は他の情報の待ち行列も維持する。待ち行列を維持するために、プロキシーサーバーは、オペレーション３４４において、メッセージテーブルを生成する。メッセージテーブルは、移動装置の独特の識別子を含み、これは、電話番号、移動識別番号（ＭＩＮ）、等である。又、この独特の識別子は、１日の時刻、ランダム数、他のシード、又はセキュリティのための組み合せを使用するハッシュ関数で暗号化されてもよい。又、メッセージテーブルは、プロキシーサーバーとオンラインゲームサービスとの間の通信セッションに対応する接続識別子も含む。又、このテーブルは、オンラインゲームサービスと移動装置との間で配送を待機しているメッセージの１つ以上の待ち行列も含む。メッセージは、一般に、オンラインゲームに対する移動装置からの入力コマンド及び／又はデータ、並びにオンラインゲームからクライアントゲームプログラムへのインストラクション及び／又はデータである。プロキシーサーバーは、各移動装置に対する単一のメッセージテーブルを使用するか、又はプロキシーサーバーと通信する全ての移動装置に対する統合テーブルを使用する。簡単なメッセージテーブルを、以下のテーブル１に示す。
【００３９】
テーブル１：サンプルメッセージテーブル
2008545455.tif 000003
【００４０】
オペレーション３４６において、プロキシーサーバーは、移動クライアント装置に意図されたメッセージ、インストラクション又は他のデータについてオンラインゲームサービスに問合せする。プロキシーサーバーは、移動装置がプロキシーサーバーと現在通信するまで、又はそうでない限り、オンラインゲームサービスからのデータを一時的に待ち行列に入れ、バッファし、さもなければ、記憶することができる。判断オペレーション３４８において、プロキシーサーバーは、移動装置がプロキシーサーバーと現在通信するかどうか決定する。移動装置との通信が中断されるか、又は実質的に質低下した場合には、プロキシーサーバーは、移動装置がプロキシーサーバーに再接続するか、又はプロキシーサーバーとの充分な通信を再開するのを待機する。プロキシーサーバーは、待機時間を、予め定義された周期に制限し、その後、プロキシーサーバーは、オンラインゲームサービスとのゲームセッションを終了してもよい。
【００４１】
移動装置がプロキシーサーバーと現在通信している場合には、プロキシーサーバーは、オペレーション３５０において、オンラインゲームサービスから移動装置へメッセージを送信する。同様に、オペレーション３５２において、プロキシーサーバーは、移動装置からオンラインゲームサービスへメッセージを中継する。判断オペレーション３５４において、プロキシーサーバーは、移動装置が、ログアウトするか、移動装置をターンオフするか、さもなければ、通信終了希望を指示することにより、オンラインゲームサービスとのセッションを終了したかどうか決定する。移動装置が通信を終了する場合には、プロキシーサーバーは、オンラインゲームサービスとの持続的通信セッションを終了し、そして他の移動装置との通信を続ける。さもなければ、制御がオペレーション３４６へ復帰し、そこで、プロキシーサーバーは、オンラインゲームサービスからの更なるメッセージを待機する。
【００４２】
上述した仕様、実施例及びデータは、本発明の要素の製造及び使用を完全に説明するものである。しかしながら、当業者であれば、他の実施形態も明らかであろう。例えば、プロキシーサーバーは、オンラインポータルサービス又は他のサービスとの通信を維持するのに使用できる。又、プロキシーサーバーは、移動装置がオンラインサービスに参加していることを他の連絡先に通知するメッセージを移動装置からメッセージングサーバーへ中継するのにも使用される。又、移動装置のクライアントプローブは、ゲームに加えて移動装置で実行されている任意の形式の所定プロセスを検出し、他のクライアントに通知することもできる。本発明の精神及び範囲から逸脱せずに本発明の多数の実施形態を生成できるので、本発明は、特許請求の範囲により限定されるものとする。
【図面の簡単な説明】
【００４３】
【図１】本発明を実施するための環境の一実施形態を示す機能的ブリック図である。
【図２】本発明を実施するシステムに含まれるクライアント移動装置の一実施形態を示す図である。
【図３】本発明を実施するシステムに含まれるプロキシーサーバーの一実施形態を示す図である。
【図４】ゲームプログラムの実行を検出しそして別のクライアントに通知するゲームプローブの一実施形態に対する例示的ロジックを示すフローチャートである。
【図５】クライアント移動装置とオンラインサービスとの間の通信をマネージするためのプロキーサーバープロセスの一実施形態に対する例示的ロジックを示すフローチャートである。
【図１】
2008545455.tif 000004
【図２】
2008545455.tif 000005
【図３】
2008545455.tif 000006
【図４】
2008545455.tif 000007
【図５】
2008545455.tif 000008