(57)【要約】【課題】  ワールドワイドウェブおよびインターネットワーキング技術を用いるゲームサービスフレームワークを提供すること。【解決手段】  ゲームサービスフレームワークは、サービス、プロトコル、ＸＭＬスキーマのセット、および分散型ネットワークベースのアーキテクチャにゲームシステム機能を提供する方法を含む。本システムおよび方法は、インターネットワーク技術およびウェブサービス概念に基づいて、ゲームおよびプロパティ管理のためのサービス指向フレームワークを提供する。本システムおよび方法のある局面は、サービスの詳細を公表し、ゲーム機および他のクライアントから登録リクエストを受信し、かつゲーム機および他のクライアントにゲーム管理サービスを提供するように動作するゲーム管理サービスを含む。【選択図】  図２
2004255194.tif 000002
【特許請求の範囲】
【請求項１】
ゲームネットワークにおけるゲーム管理サービスを提供する方法であって、該方法は、
発見エージェントにゲーム管理サービスの可用性を公表するステップと、
該発見エージェントが該ゲーム管理サービスのロケーションに対するリクエストをゲーム機から受信するステップと、
該ゲーム機が該ゲーム管理サービスに登録するステップと、
該ゲーム機と該ゲーム管理サービスとの間で１つ以上のサービスリクエストを処理するステップと
を包含する、方法。
【請求項２】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含む、請求項１に記載の方法。
【請求項３】
構成変更を受信するステップと、
該構成変更に応答して、前記ゲーム管理サービスによって前記ゲーム機に構成更新を発行するステップと
をさらに包含する、請求項２に記載の方法。
【請求項４】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含む、請求項１に記載の方法。
【請求項５】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含む、請求項１に記載の方法。
【請求項６】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含む、請求項１に記載の方法。
【請求項７】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含む、請求項１に記載の方法。
【請求項８】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項１に記載の方法。
【請求項９】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項１に記載の方法。
【請求項１０】
前記状態は、前記ゲーム機におけるデバイスの状態を含む、請求項９に記載の方法。
【請求項１１】
前記デバイスは、コインアクセプタを含む、請求項１０に記載の方法。
【請求項１２】
ゲームネットワークシステムは、
ゲームネットワークに通信可能に接続されるゲーム管理サービスと、
該ゲームネットワークに通信可能に接続される発見エージェントと、
該ゲームネットワークに通信可能に接続される少なくとも１つのゲーム機と
を備え、
該ゲーム管理サービスは、
該発見エージェントに該ゲーム管理サービスの可用性を公表し、
該少なくとも１つのゲーム機から登録リクエストを受信し、
該ゲーム機と該ゲーム機サービスとの間でサービスリクエストを処理する
ように動作可能である、ゲームネットワークシステム。
【請求項１３】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含む、請求項１２に記載のゲームネットワークシステム。
【請求項１４】
前記ゲーム管理サービスは、
構成変更を受信し、
該構成変更に応答して、前記ゲーム機に構成更新を発行する
ようにさらに動作可能である、請求項１３に記載のゲームネットワークシステム。
【請求項１５】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含む、請求項１２に記載のゲームネットワークシステム。
【請求項１６】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含む、請求項１２に記載のゲームネットワークシステム。
【請求項１７】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含む、請求項１２に記載のゲームネットワークシステム。
【請求項１８】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含む、請求項１２に記載のゲームネットワークシステム。
【請求項１９】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項１２に記載のゲームネットワークシステム。
【請求項２０】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項１２に記載のゲームネットワークシステム。
【請求項２１】
前記状態は、前記ゲーム機におけるデバイスの状態を含む、請求項２０に記載のゲームネットワークシステム。
【請求項２２】
前記デバイスは、コインアクセプタを含む、請求項２１に記載のゲームネットワークシステム。
【請求項２３】
ゲームネットワークにおいてゲーム管理サービスを提供する方法を実行するコンピュータ実行可能命令を有するコンピュータ読み出し可能媒体であって、該方法は、
発見エージェントにゲーム管理サービスの可用性を公表するステップと、
該発見エージェントが該ゲーム管理サービスのロケーションに対するリクエストをゲーム機から受信するステップと、
該ゲーム機が該ゲーム管理サービスに登録するステップと、
該ゲーム機と該ゲーム管理サービスとの間で１つ以上のサービスリクエストを処理するステップと
を包含する、コンピュータ読み出し可能媒体。
【請求項２４】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項２５】
構成変更を受信するステップと、
該構成変更に応答して、前記ゲーム管理サービスによって前記ゲーム機に構成更新を発行するステップと
をさらに包含する、請求項２４に記載のコンピュータ読み出し可能媒体。
【請求項２６】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項２７】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項２８】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項２９】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項３０】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項３１】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含む、請求項２３に記載のコンピュータ読み出し可能媒体。
【請求項３２】
前記状態は、前記ゲーム機におけるデバイスの状態を含む、請求項３１に記載のコンピュータ読み出し可能媒体。
【請求項３３】
前記デバイスは、コインアクセプタを含む、請求項３２に記載のコンピュータ読み出し可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、ゲーム機用のソフトウェアおよびハードウェアシステムに関する。より詳細には、本発明は、そのようなシステムにサービス指向ゲームネットワーク環境を提供することに関する。
【背景技術】
【０００２】
今日のゲームターミナルは、賭博ゲーム（例えば、ビデオ、機械スロット、ビデオカードゲーム（ポーカー、ブラックジャック等）、ビデオキーノー、ビデオビンゴ、ビデオパチンコおよびゲーム産業で典型的な他のゲーム）を提供するビデオディスプレイおよびビデオテープを制御するコンピュータシステムを通常含む。さらに、ゲーム環境を支援するために、会計、プレイヤー追跡および他の「バックオフィス（ｂａｃｋ  ｏｆｆｉｃｅ）」システム等の支援計算システムが存在する。
【０００３】
過去において、ゲームターミナルおよびバックオフィスシステムは、独占ハードウェアまたは閉じたハードウェア、オぺレーティングシステム、アプリケーション開発システム、および、通信システムを用いて開発されてきた。これらのシステムは、１つの販売元から提供される場合もある。
【０００４】
プレイヤーが飽きることを防ぐために、新バージョンの賭博ゲームおよび存在するゲームの代わりのものが常に開発されている。さらに、新しい機能（例えば、新しい会計能力、新しい追跡能力、および、新しいセキリュティ能力）を有するバックオフィスシステムを拡張することを可能にすることが望ましい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
残念なことに、以前のシステムが独占的または閉じているとった性質を有しているために、ゲームシステムは、必要な機能および拡張を提供する１つの販売元に依存し得る。この販売元がこのような機能を適宜に提供できない場合、様々なイノベーションが抑えられ得、そしてシステム提供者は、効果的に競うことができなくなり得る。さらに、１つまたは２、３の販売元に依存していることにより、新しい機能および拡張のための開発コストが増加することとなり得る。
【０００６】
さらに、既存のアーキテクチャの所有権および閉じた性質のために、現在のゲームデバイスの構成および管理方法は、時間およびリソースに集中する。結果として、構成の更新に関連するコストおよび時間は、比較的大きい。
【０００７】
上記した問題および関心事により、当該分野において本発明が必要である。
【課題を解決するための手段】
【０００８】
（要旨）
上記の欠点、不利益および問題が本発明によって取り扱われている。これは、以下の明細書を読んで検討することにより理解される。
【０００９】
本システムおよび方法の１つの局面は、ワールドワイドウェブおよびインターネットワーキング技術を用いるゲームサービスフレームワークに関する。ワールドワイドウェブ（本明細書では「ウェブ」とする）は、情報を交換するエージェント（クライアント、サーバおよび他のプログラム）を含むネットワーク情報システムである。ウェブおよびネットワークアーキテクチャは、システムのエージェントが従うルールのセットであり、十分にスケーリングして予測通りに挙動する情報スペースを共有することとなる。
【００１０】
ゲームサービスフレームワークは、サービス、プロトコル、ＸＭＬスキーム、および、分散型のネットワークベースアーキテクチャの安全なゲームシステム機能を提供する方法のセットを含む。そのゲームサービスフレームワークは、インターネットワーキング技術およびウェブサービスのコンセプトに基づくゲームおよびプロパティ管理のためのサービス指向フレームワークであることを意図している。詳細には、ゲームサービスフレームワークは、意味的に別々の機能をカプセル化する（自己も含まれており、１つの機能または関連するグループの機能を実行する−コンポーネントは、そのコンポーネントが何をするのか、そのコンポーネントの機能をどのように呼び出すのか、および、どのような結果が予想されるのかを他のソフトウェアが決定し得るという方法でそれ自体の入力および出力を説明している）ソフトウェアコンポーネントからなる緩やかに結合したアーキテクチャを支援する。これらのコンポーネントは、分散されて、標準的なインターネットワーキングプロトコル（ＴＣＰ／ＩＰ、ＨＩＴＰ、ＤＮＳ、ＤＨＣＰ等）を介してプログラムによってアクセス可能（このように呼ばれ、他のソフトウェアとデータを交換する）である。
【００１１】
本発明は、様々な範囲のシステム、方法およびコンピュータ読み出し可能媒体を記載している。この要旨で説明された本発明の局面および利点に加えて、図面および以下の詳細な説明を読むことによって、本発明のさらなる局面および利点が明らかとなる。
【００１２】
本発明による方法は、ゲームネットワークにおけるゲーム管理サービスを提供する方法であって、該方法は、発見エージェントにゲーム管理サービスの可用性を公表するステップと、該発見エージェントが該ゲーム管理サービスのロケーションに対するリクエストをゲーム機から受信するステップと、該ゲーム機が該ゲーム管理サービスに登録するステップと、該ゲーム機と該ゲーム管理サービスとの間で１つ以上のサービスリクエストを処理するステップとを包含し、これにより上記目的を達成する。
【００１３】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含んでもよい。
【００１４】
構成変更を受信するステップと、該構成変更に応答して、前記ゲーム管理サービスによって前記ゲーム機に構成更新を発行するステップとをさらに包含してもよい。
【００１５】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含んでもよい。
【００１６】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含んでもよい。
【００１７】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含んでもよい。
【００１８】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含んでもよい。
【００１９】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００２０】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００２１】
前記状態は、前記ゲーム機におけるデバイスの状態を含む、請求項９に記載の方法。
【００２２】
前記デバイスは、コインアクセプタを含んでもよい。
【００２３】
本発明によるゲームネットワークシステムは、ゲームネットワークに通信可能に接続されるゲーム管理サービスと、該ゲームネットワークに通信可能に接続される発見エージェントと、該ゲームネットワークに通信可能に接続される少なくとも１つのゲーム機とを備え、該ゲーム管理サービスは、該発見エージェントに該ゲーム管理サービスの可用性を公表し、該少なくとも１つのゲーム機から登録リクエストを受信し、該ゲーム機と該ゲーム機サービスとの間でサービスリクエストを処理するように動作可能であり、これにより上記目的を達成する。
【００２４】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含んでもよい。
【００２５】
前記ゲーム管理サービスは、構成変更を受信し、該構成変更に応答して、前記ゲーム機に構成更新を発行するようにさらに動作可能であってもよい。
【００２６】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含んでもよい。
【００２７】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含んでもよい。
【００２８】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含んでもよい。
【００２９】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含んでもよい。
【００３０】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００３１】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００３２】
前記状態は、前記ゲーム機におけるデバイスの状態を含んでもよい。
【００３３】
前記デバイスは、コインアクセプタを含んでもよい。
【００３４】
本発明によるコンピュータ読み出し可能媒体は、ゲームネットワークにおいてゲーム管理サービスを提供する方法を実行するコンピュータ実行可能命令を有するコンピュータ読み出し可能媒体であって、該方法は、発見エージェントにゲーム管理サービスの可用性を公表するステップと、該発見エージェントが該ゲーム管理サービスのロケーションに対するリクエストをゲーム機から受信するステップと、該ゲーム機が該ゲーム管理サービスに登録するステップと、該ゲーム機と該ゲーム管理サービスとの間で１つ以上のサービスリクエストを処理するステップとを包含し、これにより上記目的を達成する。
【００３５】
前記サービスリクエストは、前記ゲーム機による構成更新のリクエストを含んでもよい。
【００３６】
構成変更を受信するステップと、該構成変更に応答して、前記ゲーム管理サービスによって前記ゲーム機に構成更新を発行するステップとをさらに包含してもよい。
【００３７】
前記サービスリクエストは、前記ゲーム機に構成をダウンロードするリクエストを含んでもよい。
【００３８】
前記サービスリクエストは、前記ゲームネットワークにおけるデバイスの状態の問い合わせを含んでもよい。
【００３９】
前記サービスリクエストは、前記ゲーム機から前記ゲーム管理サービスまでのイベントレポートを含んでもよい。
【００４０】
前記サービスリクエストは、提供される判断基準と整合するイベントのリクエストを含んでもよい。
【００４１】
前記サービスリクエストは、前記ゲーム機構成を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００４２】
前記サービスリクエストは、前記ゲーム機の状態を問い合わせる前記ゲーム管理サービスによるリクエストを含んでもよい。
【００４３】
前記状態は、前記ゲーム機におけるデバイスの状態を含んでもよい。
【００４４】
前記デバイスは、コインアクセプタを含んでもよい。
【発明の効果】
【００４５】
ワールドワイドウェブおよびインターネットワーキング技術を用いるゲームサービスフレームワークを提供できる。
【発明を実施するための最良の形態】
【００４６】
本発明の例示的な実施形態の詳細な説明に従って、本発明の一部を形成する添付の図面を参照する。図面は、本発明が実施され得る特定の例示的な実施形態を示すように示される。これらの実施形態は、当業者が本発明を実施可能であるように十分詳細に説明され、他の実施形態が利用され得、論理的、機械的、電気的および他の改変が本発明の範囲を逸脱することなくなされ得る。
【００４７】
以下の詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットの動作であるアルゴリズムおよびシンボル的な表示という点に関して提示される。これらのアルゴリズムの記述および表示は、当業者に仕事の内容を最も効率良く伝えるために、データ処理の技術分野の当業者に用いられる方法である。アルゴリズムは、本明細書において、概して、所望の結果を導くステップの一貫したシーケンスであると考えられている。これらのステップは、物理的な量の物理的な操作を必要とする。通常、必ずしも必要ではないが、これらの量は、格納し、転送し、結合し、比較し、または操作することが可能である電気的または磁気的信号の形式を取る。時には、主に共通に利用するために、これらの信号をビット、値、エレメント、シンボル、文字、用語、数等と呼ぶことが便利であることが示されている。しかし、これらのおよび類似の用語の全てが適切な物理量に関連して、これらの量に適用される便利なラベルにすぎないことに留意されたい。詳細に説明していないか、以下の説明で明らかになる場合、「処理」、「コンピューティング」、「計算」、「決定」または「表示」等の用語は、コンピュータシステムのレジスタおよびメモリ内の物理（例えば、電気）量として表されるデータを、コンピュータシステムメモリ、レジスタ、あるいは、他のこのような情報の格納デバイス、伝送デバイスまたは表示デバイス内の物理量として類似して表される他のデータに転送して、変換するコンピュータシステムまたは類似のコンピューティングデバイスの動作および処理を表す。
【００４８】
図面では、複数の図面に現れる同一のコンポーネントを示すために、同じ参照番号が全体で用いられる。同じ参照番号またはラベルによって信号および接続が呼ばれ、実際の意味は、説明の文脈のその使用法から明らかである。
【００４９】
従って、以下の詳細な説明は、制限された意味を取られることなく、本発明の範囲は、添付の特許請求の範囲によってのみ制限される。
【００５０】
好ましい実施形態の説明は、例としてのみ構成され、本発明の全ての可能な例を説明するものではない。特許請求の範囲内に依然としてある現在または未来の技術の組み合わせを用いて、数多くの代替的なものが実施され得る。本発明は、閉じたシステム、１つの販売元によるソリューションを減少して、イノベーションおよび競争の多様性を考慮する（製造業者、オぺレーティングシステムまたはアプリケーションに関わらず）ソフトウェアコンポーネントの相互運用性を考慮するゲームネットワーク用のサービス指向フレームワークに関する。
【００５１】
（動作環境）
図１は、本発明の実施形態が実現され得る例示的なゲーム機１０を示す図である。いくつかの実施形態において、ゲーム機１０は、賭博ゲームを行うように動作可能である。これらの賭博ゲームは、ビデオポーカーなどのカードを用いるゲーム、または、ビデオダイスゲーム（例えば、Ｙａｈｔｚｅｅ（登録商標）のようなダイスゲーム）などの他のタイプの賭博ゲームを含み得る。ビデオ映像を用いる場合、ゲーム機１０は、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマ、または当該技術分野において公知の他のタイプのビデオディスプレイなどのビデオディスプレイ１２を含む。好ましくは、ディスプレイ１２の上にタッチスクリーンが重ねられる。例示されている実施形態において、ゲーム機１０は、ディスプレイ１２がプレーヤーに対して垂直の方向である「直立型」バージョンである。あるいは、ゲーム機は、ディスプレイ１２がプレーヤーに対して約３０度の角度で傾斜している「傾斜型」バージョンであってもよい。
【００５２】
ゲーム機１０は、ゲームにおいて賭けるために用いられるクレジットを受領する、複数の存在し得るクレジット受領機構１４を含む。クレジット受領機構１４には、例えば、コイン投入口、紙幣挿入口、チケット読み取り機、およびカード読み取り機が含まれ得る。紙幣挿入口およびチケット読み取り機は１つのユニットにまとめられ得る。カード読み取り機は、例えば、お金がコードされているか、お金が入っている口座を指定している、磁気カード、およびスマート（チップ）カードを受容し得る。
【００５３】
いくつかの実施形態において、ゲーム機１０は、複数のプッシュボタン１６、上記のタッチスクリーン、および存在し得る他のデバイスを含むユーザインターフェースを含む。複数のプッシュボタン１６は、例えば、賭けるための１つ以上の「賭け」ボタン、プレイを開始するための「プレイ」ボタン、換金するための「集金」ボタン、ヘルプ画面を見るための「ヘルプ」ボタン、支払い表を見るための「支払い表」ボタン、係員を呼び出すための「係員呼び出し」ボタンを含み得る。さらなるゲーム特有ボタンが、その機械で実行される特定のゲームのプレイを容易にするために提供され得る。タッチスクリーンは、プッシュボタンと同じ機能の多くを実現するタッチキーを規定し得る。さらに、ビデオポーカーの場合、タッチスクリーンは、プレーヤーがどのカードを次のラウンドのために保持することを望むかを示すカード識別機能を実現し得る。存在し得る他のユーザインターフェースデバイスは、キーボードと、マウスまたはトラックボールなどのポインティングデバイスとを含む。
【００５４】
プロセッサは、ゲーム機１０の動作を制御する。賭けおよびプレイ開始のコマンドの受信に応答して、プロセッサは、複数の存在し得る結果からゲーム結果をランダムに選択し、ディスプレイ１２に、選択されたゲーム結果を表すしるしを表示させる。スロットの場合、例えば、機械またはシミュレーションのスロットリールが回転させられ、停止されて、リール上のシンボルが１つ以上の支払い線と視覚的に関連するように位置付けられる。選択された結果が、支払い表によって規定された勝ち結果のうちの１つである場合、ＣＰＵは、その勝ち結果に関連付けられたクレジット数をプレーヤーに与える。
【００５５】
図２は、顧客データセンター２１８および顧客プロパティ２１６を含むゲームサービスネットワーク２１０の一例を示す図である。データセンター２１８および顧客プロパティ２１６は、ネットワーク２２０を介して接続されている。いくつかの実施形態において、ネットワーク２２０は、インターネットなどの公共ネットワークである。しかし、他の実施形態においては、企業のイントラネットまたはエクストラネットを含むプライベートネットワークが用いられて、データセンター２１８が１つ以上のプロパティ２１６に接続され得る。
【００５６】
いくつかの実施形態において、顧客企業データセンター２１８は、企業が所有するゲームプロパティをサポートするネットワークサーバのバルクを含む。ゲームサービスネットワークの主な要素は、認証サーバ２３２、ゲーム管理サーバ２３６、およびプログレッシブサーバ２３８を含む。いくつかの実施形態において、認証サーバ２３２は、アーキテクチャ内の他のサーバおよびサービスにインタラクトしようとするクライアントデバイスに関する、認証、認可、およびコンテンツ保全性を提供する。
【００５７】
いくつかの実施形態において、ゲーム管理サーバ２３６は、以下のサービスを含む。以下のサービスとは、ブートサービス、名付けサービス、タイムサービス、ゲーム管理サービス、ゲーム更新サービス、イベント管理サービス、会計サービスおよび発見サービスである。
【００５８】
いくつかの実施形態において、プログレッシブサーバ２３８は、プログレッシブゲーム提供にゲームデバイスが参加することを可能にする付加価値サービスのホストである。任意の付加価値サービスは、このサーバ／サービスについて、追加または置換され得る。プログレッシブゲーム提供は、一例として提供される。他の付加価値サービスは、現存のサーバに配信されるか、または、新たに追加されたサーバに常駐し得る。
【００５９】
顧客プロパティ２１６は、ゲーム機１０を含み、いくつかの実施形態において、遠隔更新および設定を可能にする。いくつかの実施形態において、ブートサーバ２３４は、ゲーム機１０へのＩＰアドレシングの配信を容易にするＤＨＣＰサービスを含む。
【００６０】
上述したように、各種のサービスは、ゲームサービスネットワークを通じて配置され得る。本発明のいくつかの実施形態において、中心となる動作サービスのセットは、以下のサービスのうち１つ以上を含み得る。
【００６１】
ブートサービス：ブート（起動）において、デバイスにダイナミックＩＰアドレシングを提供する。典型的には、ダイナミックホスト設定プロトコル（ＤＨＣＰ）によってサポートされる。
【００６２】
発見サービス：リクエスタによってプロンプトされる場合にサービスを含むサーバのアドレス情報、ならびにサービス記述、バインディングおよびサーバ上の位置を提供する。
【００６３】
認証サービス：マスタ認証データベースを含む。ゲームサービスフレームワークにおけるサービスの使用を許可する前にサービスユーザを認証する。
【００６４】
認可サービス：マスタ認可データベースを含む。サービスリクエスタによる、ゲームサービスフレームワークにおけるサービスの使用を認可する。
【００６５】
ゲーム管理サービス：ゲームデバイスおよび他のサービスを中央位置から設定し、モニタする機能を提供する。
【００６６】
名付けサービス：デバイスがＩＰアドレスではなく名前で互いを呼ぶことを可能にする名前変換サービスを提供する。いくつかの実施形態において、名付けサービスは、ドメイン名システム（ＤＮＳ）を用いて実現される。
【００６７】
タイムサービス：ゲームネットワークにおいて、時間のグローバル同期化を提供する。これは、ゲームデバイスにおいて、ネットワークタイムプロトコル（ＮＴＰ）クライアントソフトウェアを実行することによって実現され得る。
【００６８】
上記の中心的なサービスに追加して、または、その代わりに、本発明のいくつかの実施形態は、基本ゲームサービスと呼ばれる以下のサービスのうちの１つ以上を含む。
【００６９】
会計サービス：課金および一般的な追跡目的のための処理記録のロギングを提供する。
【００７０】
イベント管理サービス：クライアントおよびサーバデバイスにおいて発生するイベントのログを取る。
【００７１】
ゲームソフトウェア更新サービス：新たな、または更新されたゲームコンテンツのゲームデバイスへのダイナミック配信を提供する。
【００７２】
メッセージディレクタサービス：このサービスは、１つ以上のゲームシステム内の複数のアプリケーションプロセスの間のデータメッセージの信頼できる交換を容易にする、ソフトウェア設定可能メッセージルーティングアプリケーションを用いる。
【００７３】
コンテンツ保全性サービス：このサービスは、ゲームネットワークにおいて実行されているソフトウェアコンポーネントの保全性を検証する機能を提供する。これは、ゲームデバイス上で実行されているソフトウェアバージョン、周辺機器およびサービスの検証、ならびにソフトウェアの改ざんまたは改変の検出を含む。
【００７４】
上述したように、ゲームサービスネットワークは、付加価値サービスを含み得る。これらのサービスは、参加サービスおよびプレーヤーサービスを含む。本発明の様々な実施形態に含まれ得る参加サービスの例には、以下のものが含まれる。
【００７５】
プログレッシブサービス：ゲームデバイスに、１つのプログレッシブまたは複数のプログレッシブに参加する機能を提供する。
【００７６】
広域配信プログレッシブサービス：このサービスは、中央システムとの接続がない場合、または、中央システムとの接続が一時的にディセーブルされている場合、各ゲーム地点において、広域プログレッシブの処理を管理する。
【００７７】
モバイルゲームデバイスＧＰＳサービス：このサービスは、ゲーム管轄範囲の座標と比較したゲームデバイスのＧＰＳ位置を処理する。例えば、プレーヤーは、バスに乗り、バスがゲーム管轄範囲に入ったときにバス内でギャンブルを開始することできる。
【００７８】
本発明の様々な実施形態に含まれ得るプレーヤーサービスの例には、以下のものが含まれる。
【００７９】
プレーヤー追跡サービス：このサービスは、プレイを追跡し、プレイ用のポイントをプレーヤーに与える、カード出し入れ処理のモニタリング、特定のプレーヤー対象の推奨補償の提供、プレーヤーまたはオペレータへの口座状態の発行、プレーヤーが短期間機械を停止させるための一時的なゲーム機ロックの提供、ならびにオペレータおよびプレーヤーへのインターフェースおよび責任ゲームイニシアティブの機能の提供などの標準的なプレーヤー追跡アプリケーションをオペレータおよびプレーヤーに提供する。
【００８０】
ゲームテーマ位置サービス：このサービスは、特定のゲーム、ゲームのテーマまたは製造業者ブランドについて、クライアントに位置情報を提供する。このサービスは、提供される入力パラメータに依存して、カジノごと、地域ごと、都市ごと、州ごと、地方ごと、国ごとまたは大陸ごとの情報を発行し得る。一例として、特定のテーマ（例えば、「Ｍｏｎｏｐｏｌｙ  Ｍｏｎｅｙ」）のプログレッシブゲームの全てがＲｅｎｏ，Ｎｅｖａｄａの特定のホテル（例えば、Ｒｅｎｏ  Ｈｉｌｔｏｎ）においてどこに位置するかについて発行することがある。
【００８１】
個人化サービス：このサービスは、ゲームプレーヤーに、より個人的なゲーム環境を提供する。例えば、プレーヤーは、テキストを中国語で見ることを選択でき、夕食予約時間を思い出させてもらえることを選択でき、マシングラフィックをカスタム化することができ、自分のコインの一部を自分のサッカークラブのプログレッシブに行くようにすることもできる。
【００８２】
キャッシュレス処理サービス：このサービスは、プレーヤーに、金融機関、組織内口座、およびゲーム機の間で資金を転送する機能を提供する。
【００８３】
ボーナスサービス：このサービスは、カジノに、特定のゲーム機、機械のカルーセル、または１つ以上のゲームテーマについて、ボーナスゲームを設定する機能を提供する。
【００８４】
ゲームサービス：このサービスは、ゲームプレイの結果を提供するサーバ側プロセスである。このサービスは、インターネット／オンラインゲームを可能にするように用いられ得る。
【００８５】
広告サービス：このサービスは、オペレータがプレーヤーに対してマルチメディアフォーマットで、ならびにシンプルオーディオおよびグラフィックフォーマットで、広告情報を表示することを可能にする。
【００８６】
プロパティサービス：これは、プロパティ管理会社に、ゲームシステムに組み込まれる機能を提供するサービスのグループである。ホテルおよびレストラン予約などの機能とのインタラクションを提供することもできる。
【００８７】
ゲームサービスネットワーク２１０の配信されたアーキテクチャによって、ネットワークサーバに常駐する上記のサービスは、位置が限定されず、ネットワークがサポートするあらゆる場所に常駐し得ることに留意されたい。例えば、サービスを配置する場合にセキュリティおよびネットワーク待ち時間を考慮することが望ましい。
【００８８】
図３は、本発明のさまざまな実施形態によるゲームサービスフレームワーク３００のブロック図である。ある実施形態において、そのゲームサービスフレームワーク３００は、プロトコルのセット、ＸＭＬスキーム、および、図２において上述したネットワークなどの分散ネットワーク型アーキテクチャにゲームシステム機能性を提供する方法を含む。そのようなネットワーク型アーキテクチャに参加するために、参加デバイスは、有線または無線ネットワークであり得る、パブリックまたはプライベートネットワークを介して相互接続される。さらに、サービス通信を実行するデバイスは、ゲームサービスプロトコルスタックのような一般のサービスプロトコルスタックをサポートする。ゲームサービスプロトコルスタックは、以下にさらに説明する。
【００８９】
ゲームサービスフレームワーク３００は、図３に示された複数の論理エレメントのインタラクションを提供する。論理エレメントは、サービスを実行するためにインタラクトする基本エンティティを表す。ある実施形態において、これらの論理エレメントは、サービスリクエスタ３０２と、サービスプロバイダ３０４と、ディスカバリエージェンシ３０６とを含む。一般的な用語において、これらのエレメントの役割は、ウェブサービスアーキテクチャ−Ｗ３Ｃ  ワーキング（２００２年１１月１４日のドラフトおよび後のバージョン）に規定される。これらのエレメントに関するさらなる詳細は、以下に提供される。
【００９０】
論理エレメントは、任意のサービスの送達の一部として、多くの異なる物理デバイスに存在し得る。例えば、サービスプロバイダ３０４は、典型的には、スロットアカウンティングシステムまたはプレーヤトラッキングシステムに存在し、サービスリクエスタ３０２は、一般的に、ゲーム機に存在する。しかし、論理エレメントが他の物理デバイスに存在することに利点があるか、または、適切であるというシナリオがあり得る。例えば、代替の実施形態において、サービスリクエスタ３０２はスロットアカウンティングシステムに存在し得る。
【００９１】
サービスプロバイダ３０４は、ホストがサービス３１４にアクセスするプラットフォームを含む。サービスプロバイダは、サービス実行環境またはサービスコンテナとしても呼ばれ得る。クライアント−サーバメッセージ交換パターンにおけるその役割は、サーバの方である。
【００９２】
サービスリクエスタ３０２は、サービスプロバイダ３０４によって提供されるようなサービスとのインタラクションを探し、呼び出すか、または、開始するアプリケーションを含む。クライアント−サーバメッセージ交換パターンにおけるその役割は、クライアント３１２の方である。
【００９３】
ディスカバリエージェンシ３０６は、サービスプロバイダ３０４が、サービスディスクリプション３２４（単数または複数）およびサービスロケーション３２６（単数または複数）を公表する場合のサービスディスクリプションの検索可能なセットを含む。そのサービスディスカバリエージェンシ３０６は、集中化されるか、または、分散され得る。ディスカバリエージェンシ３０６は、サービスディスクリプション３２２がディスカバリエージェンシ３０６に送信された場合のパターンと、ディスカバリエージェンシ３０６がサービスディスクリプション３２２についてパブリックサービスプロバイダ３０４をアクティブに検査する場合のパターンとの両方をサポートし得る。サービスリクエスタ３０２は、静的バインディングのための発生の間、または、ダイナミックバインディングのための実行の間に、サービスを検出し、（サービスディスクリプション３２４において）バインディング情報を取得し得る。ある実施形態において、例えば、静的バインディングサービスリクエスタにおいて、サービスプロバイダ３０４は、サービスディスクリプション３２２をサービスリクエスタ３０２に直接的に送信し得るように、サービスディスカバリエージェントは、フレームワークアーキテクチャにおけるオプションの役割であり得る。同様に、サービスリクエスタ３０２は、ディスカバリエージェンシ３０６の他のソース（例えば、ローカルファイルシステム、ＦＴＰサイト、ＵＲＬ、または、ＷＳＩＬドキュメント）からサービスディスクリプション３２４を取得し得る。
【００９４】
図４は、本発明の実施形態によるゲームサービスプロトコルスタック４００のブロック図を提供する。ある実施形態において、プロトコルスタックは、基本サービス通信およびトランスポートを規定するコア層であって、一般的に一様に実装されるコア層を含む。ゲームプロセスの戦略的局面を規定する高次層は、また、下記に説明する。図４は、広範に実行されるコア層と、プロトコルスタックの高次ゲームサービス指向層との両方を示す。
【００９５】
（ゲームサービスプロトコルスタック４００のコア層）
いくつかの実施形態において、ゲームサービスフレームワークは、一般のインターネットプロトコルを利用した。任意のトランスポートプロトコルに特別に束縛されないが、ほぼユニバーサルリーチおよびサポートを確実にするために、ユキビタスインターネット接続性およびインフラストラクチャに基づいたゲームサービスを構築することが望ましい。ある実施形態において、ゲームサービスは、プロトコルスタック４００のイーサネット（Ｒ）４０５または４０６、伝送制御プロトコル（ＴＣＰ）４０８、インターネットプロトコル（ＩＰ）４０７、ユーザデータグラムプロトコル（ＵＤＰ）４０９、ハイパーテキスト転送プロトコル（ＨＴＴＰ）４１０、ハイパーテキスト転送プロトコルセキュア／セキュアソケット層（ＨＴＴＰ／ＳＳＬ）４１１、ライトウエイトディレクトリアクセスプロトコル（ＬＤＡＰ）４１２、ドメインネーミングシステム（ＤＮＳ）４１３および動的ホスト構成プロトコル（ＤＨＣＰ）４１４層を利用する。当業者は、等価な機能性を実行する他のプロトコル層が上記のものを置換し得、本発明の範囲内にあることを理解する。
【００９６】
いくつかの実施形態において、サービスリクエストおよび応答データは、拡張マークアップ言語（ＸＭＬ）４１５を用いてファーマット化される。ＸＭＬ４１５は、データおよびその対応するセマンティクスを交換するために広範に許容されたフォーマットである。ＸＭＬは、一般のインターネットプロトコル上の層に用いられた基本構築ブロックである。ある実施形態において、ゲームサービスプロトコルスタック４００は、ワールドワイドウェブコンソーシム（Ｗ３Ｃ）ＸＭＬワーキンググループのＸＭＬ仕様にしたがってこのプロトコルを組み込む。しかし、当業者は、他のデータ交換フォーマットがＸＭＬ４１５に置換され得、そのようなフォーマットは本発明の範囲内にあることを理解する。
【００９７】
本発明のいくつかの実施形態において、ゲームサービスプロトコルスタック４００は、シンプルオブジェクトアクセスプロトコル（ＳＯＡＰ）４１６を利用する。ＳＯＡＰ４１６は、アプリケーション間のメッセージングおよびＲＰＣ（遠隔手続呼び出し）スタイル通信のためのプロトコルである。ＳＯＡＰは、ＸＭＬ４１５に基づいており、データを搬送するためにＨＴＴＰ４１０のような一般のインターネット転送プロトコルを用いる。ＳＯＡＰ４１６を用いて、ＸＭＬ４１５においてエンコードされたリクエストおよび応答メッセージを包含するようなモデルを規定し得る。ＳＯＡＰ４１６メッセージングを用いて、任意の種類のＸＭＬ４１５情報を交換し得る。ある実施形態において、ＳＯＡＰ４１６は、サービスユーザとプロバイダとの間のサービスリクエスト／応答を搬送するための基本規格として、用いられ得る。ＳＯＡＰ４１６は、推薦ドキュメント（バージョン１．１および１．２）としてワールドワイドウェブコンソーシム（Ｗ３Ｃ）規格本体と置換され、おそらく、「ＸＭＬプロトコル（ＸＰ）」として発せられる。
【００９８】
（ゲームサービスプロトコルスタック４００の高次層）
いくつかの実施形態において、ゲームサービスプロトコルスタックは、ウェブサービスディスクリプション言語（ＷＳＤＬ）４１７と、ユニバーサルディスクリプション、ディスカバリ、インテグレーション（ＵＤＤＩ）４１８とを含む。ＷＳＤＬ４１７は、特定のサービスへの接続の仕方のディスクリプションを含む。ある実施形態において、ＷＳＤＬ４１７はＸＭＬに基づいている。ＷＳＤＬ４１７ディスクリプションは、特定のサービスの様々な接続およびメッセージングプロトコルを高次のバンドルに抽象化し、ＵＤＤＩ４１８ディレクトリ情報の要素を形成する。ＷＳＤＬ４１７は、ＷＳＤＬ４１７がプログラマチックインターフェースを記述する点でＣＯＲＢＡまたはＣＯＭ  ＩＤＬと同様である。ＷＳＤＬ４１７は、一般的に下にあるサービス実装言語またはコンポーネントモデルとは独立しており、抽象的なディスクリプションに焦点を当てる。ゲームサービスプロトコルスタック４００は、ワールドワイドウェブコンソーシム（Ｗ３Ｃ）ウェブサービスディスクリプション言語（ＷＳＤＬ）１．１−Ｗ３Ｃ（２００１年３月１５日およびその後のバージョンであることに留意されたい）にしたがってこのディスクリプションを組み込む。
【００９９】
いくつかの実施形態において、ＵＤＤＩ４１８は、サービスの登録およびリアルタイムルックアップのためにプロトコルおよびパブリックディレクトリのセットを表す。ＵＤＤＩ４１８は、会社などのエンティティが、利用可能なサービスのディスクリプションをレジストリに公表することを可能にし、それにより、サービスプロバイダとして自身をアナウンスする。サービスユーザは、ＳＯＡＰ４１６メッセージのようなＵＤＤＩ４１８スキームに合致するリクエストをサービスレジストリに送信し得、サービスのためのプロバイダを発見する。本発明のある実施形態は、２００２年７月に発表されたＵＤＤＩ  バージョン３およびその後のバージョンを利用し得る。ＵＤＤＩ４１８のさらなる発展は、ＯＡＳＩＳ（構造化情報規格の前進のための組織）ＵＤＤＩ仕様技術委員会の主催で管理されている。
【０１００】
図３に戻って、サービスリクエスタおよびサービスプロバイダは、上述のプロトコルスタックを用いて、互いのサービスインタラクションを実行する。サービスインタクラクションは、公表３３０、発見（検出）３３２、インタラクト３３４を含む。
【０１０１】
公表インタラクション３３０は、ゲームネットワーク環境の他のエンティティによるアクセスが可能にされ得るサービスのメカニズムを提供する。アクセス可能であるためには、サービスは、そのディスクリプションを公表する必要があり、その結果、リクエスタは、続いてディスクリプションを検出することができる。ディスクリプションが公表される場所は、アプリケーションの要件に依存して変化し得る。サービスディスクリプション３２２は、当該分野において公知である様々なメカニズムを利用して公表され得る。本発明の変化する実施形態によって利用される様々なメカニズムは、サービスを利用するアプリケーションがどの程度ダイナミックであることが意図されているかに依存して、異なる性能を提供する。サービスディスクリプションは、いくつかの異なるメカニズムを利用して複数のサービスレジストリに対して公表され得る。最も単純な方法は、ダイレクト公表である。ダイレクト公表は、サービスプロバイダが、サービスディスクリプションをサービスリクエスタに直接送信することを意味する。この場合、サービスリクエスタが、サービスディスクリプション３２２のローカルコピーを維持し得る。
【０１０２】
本発明の別の実施形態において利用されるサービスディスクリプションを公表する別の手段は、ＵＤＤＩレジストリを介することである。当該分野において公知であるＵＤＤＩレジストリには幾つかのタイプが存在し、ＵＤＤＩレジストリに対して公表されるＷｅｂサービスのドメインの範囲に依存して利用され得る。ＷｅｂサービスディスクリプションをＵＤＤＩレジストリに対して公表する場合、サービスが潜在的なサービスカスタマによって検出されるためには、ビジネスコンテキストおよび分類（ｔａｘｏｎｏｍｙ）を考慮することが望ましい。本発明のさまざまな実施形態のゲームサービスアーキテクチャにおいて利用されるＵＤＤＩレジスタの例には、Ｉｎｔｅｒｎａｌ  Ｅｎｔｅｒｐｒｉｓｅ  Ａｐｐｌｉｃａｔｉｏｎ  ＵＤＤＩレジストリ、Ｐｒｏｔａｌ  ＵＤＤＩレジストリ、およびＰａｒｔｎｅｒ  Ｃａｔａｌｏｇ  ＵＤＤＩレジストリがある。
【０１０３】
Ｉｎｔｅｒｎａｌ  Ｅｎｔｅｒｐｒｉｓｅ  Ａｐｐｌｉｃａｉｔｏｎ  ＵＤＤＩレジストリは、インターナルエンタープライズアプリケーションインテグレーションに対する組織内で利用することが意図されるゲームサービスのいくつかの実施形態において利用され得る。例えば、ゲームおよびゲーム管理をカジノまたはカジノ組織内のデバイスに提供する全てのサービスは、Ｉｎｔｅｒｎａｌ  Ｅｎｔｅｒｐｒｉｓｅ  Ａｐｐｌｉｃａｉｔｏｎ  ＵＤＤＩレジストリに対して公表され得る。
【０１０４】
Ｐｏｒｔａｌ  ＵＤＤＩレジストリは、検出および利用する外部パートナーの企業によって公表されるゲームサービスのいくつかの実施形態において利用され得る。ポータルＵＤＤＩは、ファイヤウォールの外側またはファイヤフォール間のＤＭＺ（ｄｅ−ｍｉｌｉｔａｒｉｚｅｄ  ｚｏｎｅ）内のサービスプロバイダ環境において、通常実行される。この種類のプライベートＵＤＤＩレジストリは、概ね、企業がネットワークを介して外部パートナーからサービスリクエスタに提供することを望む、これらのサービスディスクリプションのみを含む。例えば、これらのサービスは、Ｗｏｒｌｄ−Ｗｉｄｅ  Ｗｅｂを介して接続するカスタマーにオンラインゲームを提供するために利用され得る。
【０１０５】
Ｐａｒｔｎｅｒ  Ｃａｔａｌｏｇ  ＵＤＤＩレジストリは、特定の企業によって利用されるゲームサービスのいくつかの実施形態において利用され得る。Ｐａｒｔｎｅｒ  Ｃａｔａｌｏｇ  ＵＤＤＩレジストリは、ＵＤＤＩレジストリのようなロロデックス（ｒｏｌｏｄｅｘ）について考慮され得る。Ｐａｒｔｎｅｒ  Ｃａｔａｌｏｇ  ＵＤＤＩレジストリは、通常、ファイヤウォールの後ろのコンピュータまたはゲームデバイスに配置される。この種類のプライベートＵＤＤＩレジストリは、通常、正規の（たとえば、認証済み）ビジネスパートナーからの承認済み、テスト済み、かつ有効なサービスディスクリプションを含む。これらのサービスのビジネスコンテキストおよびメタデータは、特定のリクエスタを対象とし得る。ある実施形態では、このタイプのレジストリは、内部カジノサービス、ならびにカジノと他のタイプの組織（レギュレータおよび金融機関等）との間のインタラクションのために利用され得る。承認済みサービスのみがサービスレポジトリに対して公表されることを保証するために、適切な認証および証明手続きが取られることが望ましい。
【０１０６】
発見インタラクション３２２（検出インタラクションとも呼ばれる）において、サービスリクエスタは、サービスディスクリプションを直接取り出すか、必要とされるサービスのタイプのレジストリを問い合わせる。ディスクリプションをバインドし、かつ呼び出すことを可能にするために、ディスクリプションを処理する。
【０１０７】
サービスディスクリプションの公表と同様に、サービスディスクリプションの取得は、サービスディスクリプションがどのように公表されているのか、およびサービスアプリケーションがどの程度ダイナミックであることを意味しているのかに依存して、変化し得る。ある実施形態では、サービスリクエスタは、アプリケーションライフサイクル（設計時および実行時）の２つの異なるフェーズの間に、Ｗｅｂサービスを検出し得る。設計時において、サービスリクエスタは、サービスリクエスタがサポートするインターフェイスのタイプによってウェブサービスディスクリプションを検索する。実行時には、サービスリクエスタは、サービスリクエスタがどのように通信するか、または宣伝されるサービス品質に基づいて、ウェブサービスを検索する。
【０１０８】
上述のダイレクト公表アプローチのように、サービスリクエスタは、実行時に利用するために、設計時のサービスディスクリプションをキャッシュし得る。サービスディスクリプションは、ファイルまたはシンプルなローカルサービスディスクリプションレポジトリに格納される、プログラム論理で静的に表現され得る。
【０１０９】
サービスリクエスタは、Ｗｅｂページ（ＵＲＬ）、サービスディスクリプションレポジトリ、シンプルサービスレジストリ、またはＵＤＤＩレジストリから、設計時または実行時にサービスディスクリプションを取り出し得る。ルックアップメカニズムは、通常、インターフェイスキャパビリティのタイプ（例えば、ＷＳＤＬテンプレートに基づく）、バインディング情報（すなわち、プロトコル）、プロパティ（ＱＯＳパラメータのような）、要求される中間物のタイプ、サービスの分類、ビジネス情報等による検出を提供するクエリメカニズムをサポートする。
【０１１０】
上述のものを含む、ＵＤＤＩレジストリの様々なタイプは、選択され得る実行時バインディングサービスの数、複数の中から１つを選択するポリシー、またはサービスを呼び出す前にリクエスタによってなされるプレスクリーニングの量と密接な関係がある。サービスの選択は、バインディングサポート、履歴的性能、サービス分類の質、近似、ロードバランシングに基づき得る。承認済みのサービスのみがサービスレポジトリに対して公表されることを保証するために、適切な認証および証明手続きが取られることが望ましい。
【０１１１】
一旦サービスディスクリプションが取得されると、サービスリクエスタは、サービスを呼び出すためにサービスディスクリプションを処理する必要がある。いくつかの実施形態では、サービスリクエスタは、サービスディスクリプションを利用して、ＳＯＡＰリクエスト、またはサービスに対するプログラミング言語に特有のプロキシを生成する。このようなリクエストの生成は、設計時または実行時に、サービスに対する呼び出しをフォーマットするために行われ得る。設計時または実行時に様々なツールを利用して、ＷＳＤＬドキュメントのようなインターフェイスディスクリプションからプログラミング言語バインディングを生成し得る。これらのバインディングは、ＡＰＩ（アプリケーションプログラミングインターフェイス）をアプリケーションプログラムに対して提示し、かつアプリケーションからメッセージの詳細をカプセル化する。
【０１１２】
サービスが公表３３０され、発見３３２された後、サービスは、サービスリクエスタおよびサービスプロバイダがインタラクト３３４し得るように呼び出され得る。インタラクトオペレーション３３４では、サービスリクエスタは、サービスディスクリプション３２２におけるバインディングの詳細を利用して、実行時にサービスとのインタラクションを呼び出すか、または開始して、サービスの位置を特定し、サービスにコンタクトし、かつサービスを読み出す。サービスインタラクション３３４の例は、シングルメッセージワンウェイ、リクエスタから多くのサービスへのブロードキャスト、マルチメッセージ対話、またはビジネスプロセスを含む。任意のこれらのタイプのインタラクションは、同期または非同期リクエストであり得る。
【０１１３】
本発明のいくつかの実施形態では、セキュリティメカニズムを利用して、Ｇａｍｉｎｇ  Ｓｅｒｖｉｃｅｓ  Ｆｒａｍｅｗｏｒｋ３００のセキュリティを高め得る。Ｇａｍｉｎｇ  Ｓｅｒｖｉｃｅｓ  Ｆｒａｍｅｗｏｒｋのセキュリティを高めることは、通常、メッセージのインテグリティおよび機密性を保証し、かつサービスがポリシーに要求されるクレームを表現するメッセージ内のリクエストに対してのみ作用することを保証するファシリティの提供を呼び出す。本発明の様々な実施形態において利用されるこのようなメカニズムの例は、ＩＰＳｅｃおよびＳＬＬ／ＴＳＬを含み、これらは、２つのエンドポイント間のネットワーク層およびトランスポート層のセキュリティを提供する。しかし、データがトランスポート層を超えて中間物によって受信され、かつ転送される場合、データおよびデータと共に流れる任意のセキュリティ情報のインテグリティの両方が、おそらく喪失される。これにより、任意の上流のメッセージプロセッサは、以前の中間物によって作られたセキュリティ高さに依存させ、かつメッセージの内容の取り扱いを完全に信頼させる。さらに、セキュリティキャパビリティの包括的な一組を提供するためには、このようなメカニズムは、トランスポート層およびアプリケーション層両方のセキュリティメカニズムを利用できることが望ましい。
【０１１４】
（ゲーム管理サービス）
概して、様々な実施形態におけるゲーム管理サービスは、ゲームデバイスおよび他のサービスを中央位置から構成およびモニタする能力を提供する。ゲームデバイスは、ブートするときにゲーム管理サービスに登録し、高レベル構成データをダウンロードし得る。ブート後はいつでも、ゲームデバイスは、その構成をリクエストし得る。ゲーム管理サービスは、ゲームデバイスに構成更新について通知する。更新は、その後ゲームデバイスにプッシュされてもよいし、後で、ゲームデバイスによってプルされてもよい。ゲーム管理サービスはまた、ネットワーク上の全てのゲームデバイスおよびサービスのソフトウェア、ファームウェア、およびハードウェアステータスを中央から見る機能を提供し得る。ゲームデバイスはまた、ゲーム管理サービスにイベントを送って、傾き、思いがけない大当たりの勝ち、ソフトウェアの破損などの異常の発生を報告し得る。これらは、ゲーム管理会社が永続的なデータベースに格納し得る。その後、あらゆるクライアントが、特定のタイプのイベントについてゲーム管理サービスに問い合わせることができる。
【０１１５】
図５Ａおよび５Ｂは、本発明の実施形態による、ゲーム管理サービスを提供する方法を示すフローチャートである。この方法は、図１〜４を参照しながら上述したような動作環境において行われ得る。動作環境によって実行される方法は、コンピュータ実行可能命令からなるコンピュータプログラムを構成する。フローチャートを参照しながら方法を説明することによって、適切なコンピュータ（ＲＡＭ、ＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フラッシュメモリなどのような機械読み取り可能媒体からの命令を実行するコンピュータのプロセッサ）上で方法を実行する命令を含むこのようなプログラムを当業者が作成することを可能にする。図５Ａおよび５Ｂに示す方法は、本発明の例示的な実施形態を実行する動作環境下で行われる行動を含んでいる。
【０１１６】
図５Ａは、サービス向けゲームネットワークにおけるゲーム管理サービスを提供する方法を示すフローチャートである。以下の方法の詳細な説明において、特定のメソッド名が本発明の特定の実施形態について提供されている。このような名前は、説明的な性質のものであり、本発明は、名前が示し得る機能に限定されるものではないことに留意されたい。
【０１１７】
方法は、ゲーム管理サービスがサービスの可用性をゲームネットワークに公表するときに開始する（ブロック５１０）。いくつかの実施形態において、サービスは、サービスの記述を（例えば、ＷＳＤＬで）発見エージェンシーに送ることによって登録される。発見エージェンシーは、サービス記述をそのサービスレポジトリ（例えば、ＵＤＤＩレポジトリ）に追加する。この時点において、サービスは、関心を持つ関係者が発見できるように利用可能である。
【０１１８】
サービスが公表された後、クライアント／サービスリクエスタは、発見リクエストを行って、ゲーム管理サービスを検出する（ブロック５１２）。いくつかの実施形態において、クライアント／サービスリクエスタは、発見エージェンシーに対するＵＤＤＩコールを作成し、ゲーム管理サービスを検出させる。発見エージェンシーは、リクエストを受け取り、サービス記述および位置情報をリクエスタに返す。
【０１１９】
その後、クライアント／サービスリクエスタは、ゲーム管理サービスに登録することによって、ブロック５１２において識別されるサービスプロバイダに登録し得る（ブロック５１４）。いくつかの実施形態において、クライアントは、ゲーム管理サービス上で「ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＲｅｇｉｓｔｅｒ」メソッドを呼び出すことによって登録する。いくつかの実施形態において、このメソッドコールは、ＳＯＡＰコールであり、クライアントを識別し、認証情報をゲーム管理サービスプロバイダに提供するパラメータを含む。その後、ゲーム管理サービスプロバイダは、クライアントの登録を成功させる前に、クライアントが構成データを受け取ることを認可されているか検証する。いくつかの実施形態において、クライアントがサービスの使用を終了する場合、ゲーム管理サービスへの登録が抹消され得る。特定の実施形態において、これは、ゲーム管理サービス上で「ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＤｅｒｅｇｉｓｔｅｒ」メソッドを呼び出すことによって行われ得る。
【０１２０】
概して、登録の目的は、クライアントとサービスとの間にあらゆるインタラクションが発生する前に、クライアントが、一度認証され、かつ／または、認可されることを可能にすることである。これは、クライアントが、サービス上であるメソッドを呼び出すたびの再認証にかかる処理および時間を節約する。
【０１２１】
一度クライアントのゲーム管理サービスへの登録が成功すると、クライアントは、各種のリクエストに対して、ゲーム管理サービスを呼び出すことができる（ブロック５１６）。いくつかの実施形態において、ＳＯＡＰコールは、サービスリクエストメソッドを呼び出すために発行される。特定の実施形態において、以下のメソッドが呼び出され得る。
【０１２２】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＣｏｎｆｉｇＣｈａｎｇｅＮｏｔｉｆｙ−クライアントは、サービスが構成更新についてクライアントに通知することをリクエストするために、これを知らせる。これによって、サーバ側プロセスがクライアントに返答することが可能になる。
【０１２３】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＣｏｎｆｉｇＣｈａｎｇｅＤｅｎｏｔｉｆｙ−クライアントは、構成更新通知をこれ以上受け取りたくないことをサービスに伝えるために、これを知らせる。
【０１２４】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＧｅｔＣｏｎｆｉｇ−クライアントは、サービスが構成更新をダウンロードすることをリクエストするために、これを知らせる。
【０１２５】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＱｕｅｒｙＳｔａｔｕｓ−クライアントは、ネットワークの一部であるデバイス、コンポーネント、およびプロセスの状態を検出するようにゲーム管理サービスに問い合わせ得る。
【０１２６】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＲｅｐｏｒｔＥｖｅｎｔ−クライアントは、ゲーム管理サービスにイベントを報告するために、これを知らせる。
【０１２７】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＱｕｅｒｙＥｖｅｎｔ−クライアントは、特定の基準を満たすイベントを検出するようにゲーム管理サービスに問い合わせ得る。
【０１２８】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＵｐｄａｔｅＣｏｎｆｉｇ−クライアントは、ゲーム管理サーバ上で構成を更新するために、これを知らせる。
【０１２９】
サーバ側プロセスは、以下の方法によって示される機能を用いてクライアントと通信し得る。いくつかの実施形態において、これらの方法は、ＲＰＣコールであってもよい。他の実施形態において、このような方法は、ＴＣＰ／ＩＰ、ＭＳＭＱなどの各種のトランスポートで送られるＳＯＡＰ／ＸＭＬフォーマットメッセージであってもよい。
【０１３０】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＣｏｎｆｉｇＣｈａｎｇｅＮｏｔｉｆｉｃａｔｉｏｎ−ゲーム管理サービスサーバサイドプロセスは、構成更新についてクライアントに通知するこのクライアントメソッドを知らせる。
【０１３１】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＰｕｓｈＣｏｎｆｉｇ−ゲーム管理サービスサーバサイドプロセスは、クライアントに構成更新をダウンロードするこのクライアントメソッドを知らせる。このサービスは、ダウンロードされるゲーム構成データの性質に依存する、これらのメソッド通信のいくつかを作成し得る。例えば、このサービスは、プラットフォームソフトウェア、ゲームソフトウェア、および周辺機器の構成データを別個にダウンロードし得る。
【０１３２】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＱｕｅｒｙＣｏｎｆｉｇ−ゲーム管理サービスサーバサイドプロセスは、任意の時間にクライアントの構成を問い合わせるこのクライアントメソッドを知らせる。
【０１３３】
ｇａｍｉｎｇＭｇｍｔＳｅｒｖｉｃｅＧｅｔＳｔａｔｕｓ−サーバサイドプロセスは、ネットワーク内の任意のデバイスまたはサービスの状態を問い合わせるこのクライアントメソッドを知らせる。これは、デバイス（またはサービス）全体の状態、あるいはデバイス（またはサービス）におけるコンポーネントエンティティの状態をリクエストし得る。例えば、ゲーム管理サービスは、ゲームデバイスにおけるコインアクセプタの状態を問い合わせるために、これを知らせる。別の例では、これを知らせて、動作可能であるかどうかをチェックするためにゲーム更新サービスに問い合わせ得る。
【０１３４】
図５Ｂは、本発明の実施形態による構成更新を受信する方法を示し、かつメッセージシーケンス５００に関連する利用シナリオを示す。図５Ｂに示されるメッセージシーケンス５００は、構成更新を受信する（すなわち、ゲームデバイスは、構成の転送を開始する）ＰＵＬＬメソッドを記述する。各メッセージに対する追加の情報は、図５のブロック識別番号によって定義されるように、以下に提供される。尚、本方法は、ＵＤＤＩおよびＳＯＡＰを参照して部分的に説明されるが、本発明の実施形態は、ＵＤＤＩおよび／またはＳＯＡＰに限定されず、他の発見メカニズムが、ＵＤＤＩおよび／またはＳＯＡＰの代わりに利用され得る。
【０１３５】
ブロック５２１において、ゲーム管理サービス５０２は、そのバインディング情報を発見サービス５０３（ＵＤＤＩレジストリ）に配備して、かつ保存する。
【０１３６】
ブロック５２２では、発見サービス５０３は、認証／認可データベース５０４によってゲーム管理サービス５０２を認証する。このような認証および認可メカニズムの例は、ＬＤＡＰおよびＲＡＤＩＵＳを含む。
【０１３７】
ブロック５２３において、認証／認可データベース５０４は、首尾よくゲーム管理サービス５０２（ＬＤＡＰ，ＲＡＤＩＵＳ等）を認証する。
【０１３８】
ブロック５２４において、発見サービス５０３は、バインディング情報を提供するバインディング詳細情報エレメントをゲーム管理サービス５０２まで戻す。ゲーム管理サービス５０２は、この時点で、クライアント（例えば、ゲームデバイス）からサービスのリクエストをアクセプトする準備ができている。
【０１３９】
ブロック５２５では、ゲーム機５０１は、（電源投入時、または構成更新をチェックすべきであると判断される任意の他の時に）発見サービス５０３にコンタクトして、ゲーム管理サービス５０２のロケーションを検出する。
【０１４０】
ブロック５２６では、発見サービス５０３は、可能なゲーム管理サービスのリストに戻る。
【０１４１】
ブロック５２７では、ゲーム機５０１は、ゲーム管理サービスを選択し、かつゲーム管理サービス５０２のこのインスタンスのバインディング情報をリクエストする。
【０１４２】
ブロック５２８では、発見サービス５０３は、バインディング情報をゲーム機５０１に戻す。
【０１４３】
ブロック５２９では、ゲーム機５０１は、ゲーム管理サービス５０２に登録する。いくつかの実施形態では、登録は、ＳＯＡＰ機能を用いてなされ得る。
【０１４４】
ブロック５３０では、ゲーム管理サービス５０２は、ゲーム機５０１を認証／認可データベース５０４（ＬＤＡＰ、ＲＡＤＩＵＳ等）によって認証する。
【０１４５】
ブロック５３１では、認証／認可データベース５０４は、首尾よくゲーム機５０１（ＬＤＡＰ、ＲＡＤＩＵＳ等）を認証する。
【０１４６】
ブロック５３２では、ゲーム管理サービス５０２は、成功レスポンスをゲーム機５０１まで戻す。
【０１４７】
ブロック５３３では、ゲーム機５０１は、ゲーム機管理サービス５０２にゲーム機５０１が構成更新について通知されることを望んでいることを通知する。
【０１４８】
ブロック５３４において、ゲーム管理サービス５０２は、通知の成功によって応答する。
【０１４９】
ブロック５３５では、構成は、手動または自動化手段によって更新され得、かつゲーム管理サービス５０２に対して利用可能にされ得る。
【０１５０】
ブロック５３６では、ゲーム管理サービス５０２は、イベント通知をゲーム機５０１に送信して、新しい更新についてゲーム機に通知する。
【０１５１】
ブロック５３７では、ゲーム機５０１は、新しい構成をゲーム管理サービス５０２からリクエストする。クライアントは、管理上規定されるポリシーに適合した任意の時間に構成更新をリクエストし得る。例としては、現在のゲームプレイの終了時、一日の終わり、次の操業中止（ｏｕｔ−ｏｆ−ｏｐｅｒａｔｉｏｎ）期間等が含まれる。クライアントはまた、新しい構成を直ちにダウンロードし、新しい構成を格納し、かつ後でインストールし得る。
【０１５２】
ブロック５３８では、ゲーム管理サービス５０２は、（例えば、ＳＯＡＰコールを用いて）新しいゲーム構成を含む１つ以上のファイルをゲーム機５０１にダウンロードする。
【０１５３】
尚、ゲームデバイスおよび／またはゲーム管理サービスが、ダウンロード構成データのインテグリティを保証していることが望ましい。デジタル署名を含むいくつかの技術が利用され得、かつ当業者に公知である。
（結論）
サービス指向のゲームネットワーク環境を提供するシステムおよび方法が開示された。本明細書中には特定の実施形態が記載されたが、当業者には、同一の目的を達成するために計算される任意の配列が、示された特定の実施形態の代わりになり得ることが理解される。このアプリケーションは、本発明の任意の適応または改変を網羅することが意図される。
【０１５４】
このアプリケーションにおいて利用される専門用語は、これらの環境全てを含むことを意味する。上述の説明は、説明であり、限定することを意図しないことが理解されるべきである。多くのほかの実施形態が、上述の説明をレビューする際に当業者に理解される。従って、本発明が特許請求の範囲およびそれと等価なものによってのみ制限されることが、明らかに意図される。
【０１５５】
（要旨）
ゲームサービスフレームワークは、分散ネットワークベースアーキテクチャにおいてゲームシステム機能を提供するための１セットのサービス、プロトコル、ＸＭＬスキーマ、および方法を含む。システムおよび方法は、相互ネットワーク技術およびウェブサービス概念に基づくゲームおよびプロパティ管理のためのサービス指向フレームワークを提供する。システムおよび方法の１つの局面は、個別の機能を意味的にカプセル化するソフトウェアコンポーネント（自己完結し、かつ単一の機能または関連する機能群を実行する−コンポーネントは、それが何を行い、その機能をどのように引き起こし、かつどのような結果が期待されるのかを他のソフトウェアが決定し得るようにその入力および出力を記述する）からなる緩やかに結合するアーキテクチャを含む。これらのコンポーネントは、分散され、かつ標準の相互ネットワークプロトコル（ＴＣＰ／ＩＰ、ＨＩＴＰ、ＤＮＳ、ＤＨＣＰなど）を介してプログラム的にアクセス可能（他のソフトウェアによって呼び出され、かつ他のソフトウェアとデータを交換する）であり得る。
【図面の簡単な説明】
【０１５６】
【図１】図１は、本発明に組み込まれた例示的なゲーム機の透視図である。
【図２】図２は、あるゲーム環境における分散管理用のサービス指向ネットワークの例である。
【図３】図３は、サービス指向の開示および相互作用の概要を説明している。
【図４】図４は、ゲームサービスプロトコルスタックを示している。
【図５Ａ】図５Ａは、本発明の実施形態に従うゲーム管理サービスのための方法およびメッセージフローを示すフロー図である。
【図５Ｂ】図５Ｂは、本発明の実施形態に従うゲーム管理サービスのための方法およびメッセージフローを示すフロー図である。
【符号の説明】
【０１５７】
１０  ゲーム機
１２  ディスプレイ
１４  クレジット受領機構
１６  プッシュボタン
２１０  ゲームサービスネットワーク
２１６  顧客プロパティ
２１８  顧客データセンター
２２０  ネットワーク
２３２  認証サーバ
２３４  ブートサーバ
２３６  ゲーム管理サーバ
２３８  プログレッシブサーバ
【図１】
2004255194.tif 000003
【図２】
2004255194.tif 000004
【図３】
2004255194.tif 000005
【図４】
2004255194.tif 000006
【図５Ａ】
2004255194.tif 000007
【図５Ｂ】
2004255194.tif 000008