JP7369176B2 - オンライン・マルチプレーヤー・セッションへの参加を促すシステムおよび方法 - Google Patents

オンライン・マルチプレーヤー・セッションへの参加を促すシステムおよび方法 Download PDF

Info

Publication number
JP7369176B2
JP7369176B2 JP2021500953A JP2021500953A JP7369176B2 JP 7369176 B2 JP7369176 B2 JP 7369176B2 JP 2021500953 A JP2021500953 A JP 2021500953A JP 2021500953 A JP2021500953 A JP 2021500953A JP 7369176 B2 JP7369176 B2 JP 7369176B2
Authority
JP
Japan
Prior art keywords
session
users
queuing
user
activity
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.)
Active
Application number
JP2021500953A
Other languages
English (en)
Other versions
JP2021531086A (ja
Inventor
クルス,ルーベン・オマー・カルドナ
クライン,キース・アール
アルパート,ウォーレン
Original Assignee
マイクロソフト テクノロジー ライセンシング,エルエルシー
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by マイクロソフト テクノロジー ライセンシング,エルエルシー filed Critical マイクロソフト テクノロジー ライセンシング,エルエルシー
Publication of JP2021531086A publication Critical patent/JP2021531086A/ja
Application granted granted Critical
Publication of JP7369176B2 publication Critical patent/JP7369176B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • A63F13/795Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Description

[0001] ビデオ・ゲーム・ストリーマー、コンテンツ・クリエーター、ゲーム・プレーヤー、およびゲーム・インフルエンサーは、彼らのフォロワーとインタラクトすることによって、彼らのフォロワー・ベースの一部を獲得する。インタラクションの一種に、ゲームをプレーすること、または彼らとインタラクトすることを望む彼らのフォロワーとのアクティビティに参加すること(例えば、彼らのメディア・ストリームを視聴する、またはマルチプレーヤー・ゲームに参加することによって)があげられる。通例、ホストまたはストリーマーが、メッセージをプラットフォーム上の複数の他のプレーヤーおよび/またはビューアに送り、一緒にゲームをプレーしたいまたはそれ以外でインタラクトしたいという要望を示すことができ、次いでメッセージに対する個人の応答各々に手作業で目を通し、ゲームへのゲスト・プレーヤー招待、またはグループを編成するためのパーティへのゲスト・プレーヤー招待を、応答したビューア/プレーヤーに送ることができる。各々が彼らの招待を受け入れたと仮定すると、ホスト/ストリーマーはゲームを開始する(即ち、ゲームの「対戦相手を決める」)。
[0002] 場合によっては、ゲームが無制限加入機能(open ability to join)を有することもでき、プレーヤーはプラットフォーム上でホスト/ストリーマーに従い、彼らのオープン・ゲーム・ロビー(open game lobby)上で加入することができる。ホスト/ストリームのための他のオプションをあげるとすると、プラットフォーム上でグループ募集(LFG:looking for group)ポストを作ることであろう。ウオッチャー(watcher)がLFGに応募すると、ストリーマーは1組のユーザーを確認し、彼らをプラットフォーム・パーティに集め、次いでゲームを開始することができる。ゲームの後、ユーザーはゲーム・ロビーを離れて始めからやり直すか、またはパーティ・メンバーを追い出してLFGにおけるスロットを解放し、ホストが自らパーティに入った他のメンバーを手作業で確認し、再度開始することができる。
[0003] この摘要は、以下で詳細な説明において更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を識別することを意図するのではなく、特許請求する主題の範囲を限定するために使用されることを意図するのでもない。
[0004] オンライン・ストリーム/アクティビティにおけるセッション参加を促す方法は、システムおよび装置によって実行される。ユーザーは、タイトル(例えば、ビデオ・ゲームまたは他のオンライン・コンテンツ)を実行するクライアント・デバイスにおいて、このタイトルをプレーすることができる。大勢のユーザーまたは観衆(spectator)が、マルチプレーヤー・ゲームに加入する(join)こと、またはストリーマー・クライアント・デバイスから観衆自身のクライアント・デバイスにストリーミングされ再生されているタイトルの生ビデオ・コンテンツ・ストリームを視聴する(view)ことを望む場合もある。ストリーマーおよび観衆ユーザーは、自動キューイング(automatic queuing)およびその管理によって、セッションに参加し易くする(facilitate)ことができる。したがって、ユーザーのキューイング(user queuing)およびセッション参加の管理が、ここで行われる。実例をあげると、オンライン・コンテンツ・ストリーム/アクティビティにおけるセッション参加は、ストリーマー・クライアント・デバイスとゲスト・プレーヤーのクライアント・デバイスとの間にある中央システムを通じて、プレーヤーのセッション追跡および自動キューイングの管理によって促される。観衆は、ネットワークを通じて、ストリーミング・デバイスを介してコンテンツ・ストリーム/ゲーム(即ち、アクティビティ一般)を視聴し、ストリーミング・ユーザーと共にアクティビティのセッションに参加するために、ゲスト・プレーヤーとしてキュー(queue)に入れるように要求することができる。イベントの開始および終了を判定するために、セッションを追跡することができる。セッションが終了したときに、複数組の以前のゲスト・プレーヤー(sets of prior guest players)をセッションから退出させ(remove)または追い出し(kicked from)、キューに入れられた複数組の観衆が、ゲスト・プレーヤーとして、コンテンツ・アクティビティの新たなセッションの開始に自動的に追加される。キューイングには、ユーザーの特性および/または資格証明書に基づいて、自動的にユーザーに優先順位を付けることができる。セッションの終了時に退出させられるゲスト・プレーヤーは、今後のセッションへの参加のために、自動的に再度キューに入れることができる。
[0005] 以下に、添付図面を参照して、他の特徴および利点、ならびに種々の例の構造および動作について詳細に説明する。尚、理念および技術は、本明細書において説明する具体的な例に限定されるのではないことを注記しておく。このような例は、本明細書では例示の目的に限って提示されるに過ぎない。本明細書に含まれる教示に基づけば、更に他の例も関連技術(1つまたは複数)に習熟する当業者には明白であろう。
[0006] 添付図面は、本明細書に組み込まれ、明細書の一部を形成する。添付図面は、本願の実施形態を例示し、明細書の説明と共に、実施形態の原理を説明し、当業者が実施形態を実施および使用することを可能にする役割を果たす。
図1は、実施形態例にしたがって、キュー管理によってセッション参加を促すネットワーク・システム(networked system)のブロック図である。 図2は、実施形態例にしたがって、キュー管理によってセッション参加を促すセッション・キューイング・ホスト・システム(session queuing host system)のブロック図を示す。 図3は、実施形態例にしたがって、キュー管理によってセッション参加を促すフローチャートを示す。 図4は、実施形態例にしたがって、キュー管理によってセッション参加を促すフローチャートを示す。 図5は、実施形態例にしたがって、キュー管理によってセッション参加を促す流れ図を示す。 図6は、実施形態例にしたがって、キュー管理によってセッション参加を促す流れ図を示す。 図7は、実施形態例にしたがって、キュー管理によってセッション参加を促す流れ図を示す。 図8Aは、実施形態例にしたがって、キュー管理によってセッション参加を促すクライアント・ユーザー・インターフェースのブロック図を示す。 図8Bは、実施形態例にしたがって、キュー管理によってセッション参加を促すクライアント・ユーザー・インターフェースのブロック図を示す。 図9は、種々の実施形態例を実施するために使用することができる移動体デバイスの一例のブロック図を示す。 図10は、実施形態を実施するために使用することができるコンピューティング・デバイスの一例のブロック図を示す。
[0018] 実施形態の特徴および利点は、以下に明記する詳細な説明を、添付図面と併せて検討することによって、一層明らかになるであろう。図面において、同様の参照記号は全体を通じて対応する要素を識別する。図面において、同様の参照番号は総じて同一の、機能的に同様な、および/または構造的に同様な要素を示す。要素が最初に出てくる図面は、対応する参照番号における最も左側にある桁(1つまたは複数)によって示される。
I.緒言
[0019] 以下の詳細な説明は、多数の実施形態を開示する。本特許出願の範囲は、開示する実施形態に限定されるのではなく、開示する実施形態の組み合わせや、開示する実施形態の変更も包含するものとする。
[0020] 明細書において「一実施形態」(one embodiment)、「実施形態」(an embodiment)、「実施形態例」(an example embodiment)等に言及するときは、その記載される実施形態が、特定の特徴、構造、または特性を含むのはもっともであるが、あらゆる実施形態が必ずしもその特定の特徴、構造、または特性を含まなくてもよいことを示す。更に、このような語句は必ずしも同じ実施形態を指すわけではない。更にまた、ある実施形態に関して特定の特徴、構造、または特性が記載されるとき、そのような特徴、構造、または特性を、明示的に記載されているか否かには関係なく、他の実施形態と関連付けて実現する(effect)ことは、当業者の知識の範囲内でできるということを具申する。
[0021] この論述において、特に明記されていない限り、「実質的に」(substantially)、「約」(approximately)、および「大体」(about)というような副詞は、本開示の実施形態の1つまたは複数の特徴の状態または関係特性(relationship characteristic)を修飾するが、その条件または特性が、意図する用途に対して実施形態の動作に容認可能な、許容度の範囲内に収まるように定められることを意味すると理解されるものとする。
[0022] 更に、本明細書において使用される空間的記述(例えば、「上方」(above)、「下」(below)、「上」(up)、「左」(left)、「右」(right)、「下」(down)、「最上位」(top)、「最下位」(bottom)、「垂直」(vertical)、「水平」(horizontal)等)は、例示だけを目的とするに過ぎないこと、そして本明細書において説明する構造および図面の実際の実施態様(practical implementation)は、空間的に任意の方位または方法で配置できることは、理解されてしかるべきである。加えて、図面は同じ拡縮率で示されるとは限らず、図面の要素の方位または編成は、実施形態毎に異なる場合もある。
[0023] 以下に多数の例示的な実施形態について説明する。尚、本明細書において付ける章/副章の見出しはいずれも、限定することを意図するのではないことを注記しておく。本文書全体を通じて実施形態について説明し、いずれの種類の実施形態であっても、いずれの章/副章の下に含まれてもよい。更に、いずれの章/副章において開示される実施形態も、同じ章/副章および/または異なる章/副章において記載されるいずれの他の実施形態とでも、任意の方法で組み合わされてもよい。
[0024] 以下の章IIでは、キュー管理によってセッション参加を促す実施形態例について説明する。具体的には、章II.Aでは、キュー管理によるセッション参加システムの例について説明し、章II.Bでは、ユーザー・インターフェースの実施形態例を示す。以下の章IIIでは、本明細書において説明する実施形態の機能(features)を実現するために使用することができる移動体デバイスおよびコンピューティング・デバイスの実施形態例について説明する。以下の章IVでは、更に他の例および利点について説明し、章Vではいくつかの結論を述べる。
II.キュー管理によってセッション参加を促す実施形態例
[0025] 本明細書では、キュー管理によってセッション参加を促す方法、システム、装置、デバイス、およびコンピューター・プログラム製品を提供する。ユーザーまたはユーザーのグループが、ビデオ・ストリームまたはゲームのため等のオンライン・アクティビティ・セッションにおいて、他のユーザーまたはユーザーのグループと共に、プレーするまたは参加することを望むが、そのアクティビティにはセッション容量が制限される場合がある。即ち、プレーまたは参加することを望むユーザーの数が、任意の所与の時点において参加できるユーザーの最大数を超過するおそれがある。したがって、マルチプレーヤー体験は、通例、1組のプレーヤー・スポット(player spot)に限定されるので、マルチプレーヤー体験は、その体験に入ることを許される人よりも、プレーするのを待っている人の方が多いという場面(scenario)に遭遇する。プレーしているのが友人となのか、無差別の他人となのか、ゲーム・ストリーミングの聴衆となのかには関係なく、またはコミュニティとプレーするのを待っているのが非常に重要な人物/プレーヤー(VIP)なのかにも関係なく、この問題は起こる可能性がある。ストリーマーが、プレー・セッションにおいて、ゲスト・プレーヤーとして彼らの聴衆と対戦することを望む場合、またはマルチプレーヤー・ゲームを開始した者(initiator)が友人とゲームをプレーすることを望む場合、この参加者超過(overflow)に対処するために現在いくつかのオプションが利用可能である。ゲームが終了したとき、ホスト/ストリーマーが新たな1組のゲスト・プレーヤーを彼らのグループまたは聴衆から募る(take)ことを望む場合、ホスト/ストリーマーは、現在のゲームのゲスト・プレーヤー全員を退出させ(そのゲームにおいて可能な場合)、またはゲーム「ロビー」を完全に解放し(leave)プロセスを再度開始しなければならない。この場合、ビューア/プレーヤーにはいかなる型式の優先順位も適用することが許可されず、早く加入した者であれば誰でも、ゲームに参加する。
[0026] セッションの参加に関心を表明したプレーヤーを自動的にキューに入れることによって、そしてある時間期間およびある回数のセッションにわたってこれらのユーザーを自動的に順番に当てる(cycling through)ことによって、説明する実施形態は、セッション参加を求める要求をできるだけ多く、効率的および自動的に満たすための機能を提供する(provide for)。加えて、キューにおいて待っているユーザーは、彼らが待っている間他のことを行えるように、非同期状態にある。したがって、説明する実施形態は、効率的なセッション・セットアップ(setup)、およびプレーヤーの自動キューイングによる参加を可能にする。
[0027] 例えば、セッション・キューイング・サービスは、セッション・キューイング・システム・ホスト(例えば、処理システムまたはサーバー)上で実行することができる。セッション・キューイング・システム・ホストは、セッション・ホスト/ストリーマー・クライアント・デバイス(例えば、コンテンツ・ストリーマー、コンテンツ・クリエーター、VIPまたはサービス・プラットフォーム要員のようなゲーム・プレーヤー、ゲーム・インフルエンサー等のクライアント・デバイス)と、ゲスト・プレーヤーとしてゲームまたはストリームのセッションに参加することを望む他のユーザーのクライアント・デバイスとの間で、ネットワーク上に存在する。セッション・キューイング・サービスは、他のユーザーを自動的にキューに入れ、他のユーザーをゲスト・プレーヤーとして追加し、ゲーム/コンテンツ・ストリームのセッションのためにゲスト・プレーヤーを退出させるように構成される。セッション・キューイング・サービスは、ホスト/ストリーマーとユーザー/参加者のクライアント・デバイス間に位置付けられ、ストリーマー・クライアント・デバイスによってストリーミングされるアクティビティ(例えば、ゲーム)のセッションに加入する要求を、他のユーザーから受け、クライアント・デバイスのユーザーを自動的にキューに入れ、彼らをゲスト・プレーヤーとしてセッションに挿入することが可能である。このように、セッション・キューイング・サービスは、ストリーミングされるコンテンツの各インスタンスに特定的な方法で、異なる開発者による任意の数のタイトルに対して、任意の数の他のユーザーのために、セッション参加を集中的に管理することが可能である。
[0028] 実例をあげると、クライアント・デバイス(例えば、ストリーマー/ホスト・クライアント・デバイス)上でタイトルをプレーしているユーザーが、1人以上の他のユーザーによってそれぞれのクライアント・デバイス(例えば、ゲスト・クライアント・デバイス)において、ネットワークを通じて、このコンテンツ・ストリームを視聴できるように、彼らのタイトル・プレーをストリーミングすることができる。例えば、セッションの間、他のユーザーは、単にコンテンツ・ストリームを視聴することだけが認められるのでもよく、一方他の場合では、他のユーザーは、ストリーミングされているタイトル・セッションを視聴し更にインタラクトすることも認められてもよい。セッションは、ストリームの予め定められた部分であっても、またはストリーマーが定めた部分であってもよい。即ち、他のユーザーは、ストリーマー・クライアント・デバイスにおいてタイトルをプレーしているユーザーのタイトル・セッションに加入することができる。同様に、ホストによって作成されたマルチプレーヤー・ゲーム・インスタンスのロビーにいるユーザーを、このようなユーザーによって加入させることもできる。
[0029] 説明する実施形態は、任意の数の異なるタイトル・ストリームまたはゲーム(例えば、「アクティビティ」)のために作用することができるプラットフォーム・レベルの機能(features)を提供し(provide for)、参加者のセッションへの自動組み入れ(assembling)を可能にすることにって、ユーザー体験を改善する、クライアントに対するシステム負荷を軽減する、ネットワーク・トラフィック負荷を軽減する等を含む便益が得られる。即ち、ストリーマー/ホスト・ユーザーは、ホストが参加応募者を確認する必要がないグループ募集(LFG:looking for group)メッセージをポストすることが認められ(enabled)、彼らをパーティに入れ、彼らをゲームに誘い、次いでセッション毎、ゲーム毎にプロセスを繰り返そうとする。LFGポストは、このように、実施形態によれば、ストリーマーと共にアクティビティのセッションに参加することを望むプレーヤーの先入れ先出しキューとして作用するために利用することができる。また、タイトル開発者が、説明する実施形態を、本明細書において詳細に説明するプラットフォームから彼らのタイトルに統合することを望む場合、LFGポストはタイトル開発者にアクセス可能にしてもよい。即ち、ストリーマー/ホストは、この種のアクティビティのためのゲーム特定LFGを作成することができる。例えば、ストリーマー/ホストがゲームに入るとき、LFGを彼らのゲーム・ロビーに集めるオプションを提供することができる。最初に、ユーザーは、アクティビティのストリームを視聴する、あるいはストリーマー/ホスト・ユーザーによってプレーまたは開始される、ゲームのような、マルチプレーヤー・アクティビティをプレーするためにグループに加入することを要求するのでもよい。セッション・キューイング・サービス、または代わりにRedmond,WAのMicrosoft CorporationからのXbox Live(登録商標)のようなゲーミング/ストリーミング・サービスは、ユーザーをアクティビティ・グループに、例えば、ゲスト・プレーヤー、ストリームの観衆等として含ませることによって、ユーザーをマルチプレーヤー・ゲーム、ビデオ・ストリーム、または他のアクティビティと関連付けるように構成することができる。ユーザーは、セッションへの参加を要求し、自動的にキューに入ることができる。このように、タイトル開発者は、ユーザーをキューの最上位から引き出し、セッションにゲスト・プレーヤーとして自動的に参加させることが認められる。キュー内にいるユーザーがログ・オフした場合または利用できなくなった場合、説明する実施形態は、利用できなくなったユーザーをキューから自動的に退出させるように構成される。セッションの完了後、ロビー/LFGからのゲスト・プレーヤーの自動退出を行うことができ、次の1組のユーザーを、キューの最上位から、新たなセッションにゲスト・プレーヤーとして引き入れることができる。セッション・キューイング・サービス、または代わりにストリーミング・サービスは、マルチプレーヤー・セッションが開始したとき、終了したとき、またはその間で変化したときに追跡するように構成することができ、こうして、指定された時点に、プレーヤーの追加および/または退出を行うべきときを自動的に判定する機能(ability)を提供する。
[0030] したがって、説明するプラットフォームの特徴は、ストリーマーおよび参加者が、プロセスの管理に伴う負担を軽減されるように、セッション参加のための効率的でシームレスなプレーヤーのキューイングおよび循環(cycling)を可能にする。説明する実施形態は、任意の種類のストリーミング/セッション参加のシナリオに応用することができ、更にホスト・プレーヤーが、実際にストリーミングせずに、ゲーム・セッションまたはアクティビティを作成するマルチプレーヤー・インタラクションのシナリオに応用することができる。限定ではなく、これらのシナリオには、ストリーマーが聴衆の一員(audience member)とプレーすることを望むシナリオ、VIPゲーマーがソーシャル・コンテキストにおいてゲーム・セッションを広告し、参加ユーザーをキューに入れる必要があるシナリオ、ゲーム・プレーヤーが友人とプレーすることを望むが、友人の集団がアクティビティのプレー・サイズを超過する(即ち、したがって、何人かのプレーヤーがキューに入り、彼らの順番を待つ必要がある)シナリオ、大きな会員母体(member base)を有するゲーミング・クラブが、複数のセッションがプレーするために利用可能な、プレー・セッションを編成することを望むシナリオ等が含まれる。
[0031] また、実施形態は、統合されていないタイトルのキューイングおよびセッション管理を改善することも可能にする。実例をあげると、説明するプラットフォームを仮想会議室(meeting place)として使用し、パーティを形成し、ストリーマー/ホストがキューの最上位からユーザーをパーティに受け入れるプロセスを開始することによって、未統合タイトルのストリーマー/ホストでさえも、改良されたゲーム/ストリーム・フローへのアクセスが付与される。選択されたユーザーを自動的にパーティに含ませることができ、ストリーマー/ホストは、セッションへの参加のために、パーティ全体をゲームまたはアクティビティに挿入することができる。セッションが終了した後、タイトルは統合されないので、ストリーマー/ホストは、ゲーム・ロビーを解放し再開する追加ステップを実行することができる。つまり、既存のゲスト・プレーヤーをセッションから追い出し、キューからの新たな1組のユーザーを、新たなセッションのゲスト・プレーヤーとして選択するアクションは、先に説明したパーティ・プロセスを繰り返す前に、ストリーマー/ホスト・ユーザー・インターフェースの1回のボタン・クリックで行われる。
[0032] キュー管理によるセッション参加促進のための、説明する実施形態によるタイトルの統合は、事実上シームレスであり、セッション・キューイング・サービスは、ユーザーをどのようにキューに入れるかについて、固執を最小限に抑えたサービス(minimally opinionated services)として動作する。セッション・キューイング・ホストは、異なるゲームまたはコンテンツ・ストリームに合わせて、非常に多数のユーザーおよびセッション参加者に対処するようにスケーラブルである。キューイングは、例えば、キューに入れられたユーザーがフォロワーである、友人である、ユーザーのタイトル内成績に関する任意の型の統計または情報を含む特定のタイトル内属性を有する、登録している、ストリーマー/ホストのストリームの視聴に費やす時間が相対的に長い、定額課金プログラムに入会している(enroll)、ある額の視聴/観戦報酬を受けたことがある等に基づいて、ストリーマー/ホストの好みにしたがって、優先順位を付けることもできる。
[0033] 言い換えると、本明細書において開示する実施形態は、キュー管理によるセッション参加の促進に対応する。これらおよびその他の実施形態について、以下に更に詳しく説明する。
A.キュー管理によるセッション参加システム例
[0034] 実施形態では、キュー管理によるセッション参加促進のために、種々の方法でシステムおよびデバイスを構成することができる。実例をあげると、図1は、実施形態によるキューイング・システム(queuing system)100のブロック図である。キューイング・システム100は、実施形態にしたがって、キュー管理によるセッション参加の促進を可能にするように構成されている。図1に示すように、キューイング・システム100は、ストリーマー/ホスト・クライアント・デバイス102a、ゲスト・クライアント・デバイス102b、セッション・キューイング・ホスト104、およびタイトル開発者サーバー114を含み、これらはネットワーク110を通じて互いに通信することができる。尚、種々の実施形態において、任意の数のストリーマー・クライアント・デバイス、ゲスト・クライアント・デバイス、およびセッション・キューイング・ホスト、および/またはタイトル開発者サーバーが存在してもよいことは注記してしかるべきである。加えて、実施形態によれば、図1に示すコンポーネントの任意の組み合わせもキューイング・システム100内に存在してもよい。
[0035] 先に注記したように、ストリーマー/ホスト・クライアント・デバイス102a、ゲスト・クライアント・デバイス102b、およびセッション・キューイング・ホスト104、ならびにタイトル開発者サーバー114は、ネットワーク110を通じて通信可能に結合されている。ネットワーク110は、コンピューティング・デバイスおよびサーバーを接続する、インターネット、有線またはワイヤレス・ネットワークおよびその一部、ポイント・ツー・ポイント接続、ローカル・エリア・ネットワーク、企業ネットワーク等のような、しかしこれらに限定されない、任意の種類の通信リンクを構成することができる。
[0036] タイトル開発者サーバー114は、1つ以上のサーバー・コンピューターまたはコンピューティング・デバイスを備えることができ、1つ以上の分散型または「クラウド・ベースの」サーバーを含んでもよい。タイトル開発者サーバーは、ビデオ・ゲーム、インタラクティブ・アプリケーション等のようなタイトルを、開発者が開発および/または公開(publish)することを可能にするように構成することができる。したがって、タイトル開発者サーバー114、またはそれに付随するストレージは、1つ以上のタイトル116を含むことができる。タイトル(1つまたは複数)116は、開発者によって開発されたタイトルを実行するためおよび/または実行をサポートするための、コードもしくはアプリケーションを含むことができる。タイトル(1つまたは複数)116は、本明細書において説明するように、ネットワークを通じたクライアント・デバイスへの電子的なダウンロードのために提供することができ、および/またはタイトルを実行するためにクライアント・デバイスによって読み取られる/アクセスされるコンピューター読み取り可能記憶媒体上にエンコードすることもできる。
[0037] セッション・キューイング・ホスト104は、1つ以上のサーバー・コンピューターまたはコンピューティング・デバイスを備えることができ、1つ以上の分散型または「クラウド・ベースの」サーバーを含んでもよい。実施形態では、セッション・キューイング・ホスト104は、Xbox Live(登録商標)のような、ゲームまたはストリーミング・サービス・システムまたはプラットフォームと関連付けることができ、またはその一部であってもよい。クライアント・デバイスのユーザーは、ストリーマー/ホスト・クライアント・デバイス102aのユーザー・インターフェース(UI)112aを通じて、および/またはゲスト・クライアント・デバイス102bのUI112bを通じてというようにして、ネットワーク110を通じてゲーム/ストリーミング・サービスまたはプラットフォームに対して認証することができ、認証されると、ストリーマー/ホスト・クライアント・デバイス102aは、コンテンツをストリーミングするまたはマルチプレーヤー・ゲーム・インスタンスを作成することができ、ゲスト・クライアント・デバイス102aは、ストリーミングされたコンテンツを視聴することができ、そしてストリーマー/ホスト・クライアント・デバイス102aおよびゲスト・クライアント・デバイス102aは、ゲームのような、マルチユーザー・アクティビティに加入することができる。セッション・キューイング・ホスト104は、ストリーマー/ホスト・クライアント・デバイス102aのユーザー・インターフェース(UI)112aを通じて、および/またはゲスト・クライアント・デバイス102bのUI112bを通じてというようにして、クライアント・デバイスからのアクティビティおよびそのセッションへの参加のために、ユーザーをグループおよび/またはキューに追加する要求をネットワーク110を通じて受けるように構成されている。例えば、ストリーマー/ホスト・ユーザーが、あるタイトルをプレーし、このタイトルのライブ・コンテンツをストリーマー/ホスト・クライアント・デバイス102aを通じてストリーミングしているのでもよく、一方他のユーザーが、このストリーミング・ライブ・コンテンツを仮想ロビーにおいて視聴している観衆であってもよく、またそうでなければゲスト・クライアント・デバイス102bにおいてそのタイトルのストリーミング・ライブ・コンテンツを視聴している観衆であってもよい。他の例では、ストリーマー/ホスト・ユーザーがマルチプレーヤー・ゲーム/アクティビティをストリーマー/ホスト・クライアント・デバイス102aを通じて作成しているのでもよく、一方他のユーザーが、このストリーミング・ライブ・コンテンツを仮想ロビーにおいて視聴している観衆であってもよく、またそうでなければゲスト・クライアント・デバイス102bにおいてそのタイトルのストリーミング・ライブ・コンテンツを視聴している観衆であってもよい。
[0038] 図示のように、セッション・キューイング・ホスト104は、セッション・トラッカー106とセッション・キューイング・サービス108とを含む。尚、セッション・トラッカー106は、実施形態では、ネットワーク110を通じて通信可能に接続されたゲームまたはストリーミング・サービス・システムもしくはプラットフォーム(簡潔さおよび図の明確さのため示されていない)のためのリモート・システムおよび/または関連システム内というように、セッション・キューイング・ホスト104から離れて配置されてもよいことを注記しておく。また、本明細書では、簡潔さおよび図の明確さのために、セッション・トラッカー106およびセッション・キューイング・サービス108の1つのインスタントだけが図1に示されているが、実施形態では、これらのコンポーネントのインスタンスが複数存在してもよいことも想定している。
[0039] セッション・キューイング・ホスト104は、セッション・キューイング・サービス108において、タイトルの観衆ユーザー/視聴ユーザー(spectating/viewing user)からのマルチプレーヤー・ゲームまたはタイトル・ストリームに参加する要求を、例えば、ゲスト・クライアント・デバイス102bのUI112bから受けるように構成されている。また、セッション・キューイング・サービス108は、要求元のユーザー/クライアント・デバイスを、ゲーム/ストリームのセッションへの挿入のために、キューに入れ、キューに入れられた複数組のユーザーをゲーム/ストリームのセッションに挿入するように構成されている。したがって、セッション・キューイング・サービス108は、グループ形成およびそのセッション参加をし易くするためのサービス(例えば、LFGサービス)として動作するように構成されている。観衆ユーザー/視聴ユーザーからのゲーム/タイトル・ストリームへの参加要求は、セッション・キューイング・サービス108によって、ストリーマー/ホスト・クライアント・デバイス102aのストリーマー/ホスト・ユーザーがキューイングをアクティブ化する(activate)またはイネーブルする前または後のいずれかにおいて、受けることができる。実例をあげると、タイトルをストリーミングしている間に、ストリーマー/ホスト・ユーザーが、例えば、UI112aを通じて、このストリームのセッションへの観衆ユーザーの参加を求める多くの要求が受け付けられていることに気が付き、次いでゲーム/ストリームのセッションへの挿入のための観衆のキューイングを、ホスト/ストリーマー・ユーザーによってアクティブ化してもよい。このような場合、セッション・キューイング・サービス108は、キューに入れられる前に、要求元の観衆および彼らのそれぞれの要求の順序を追跡し、ストリーマー/ホストがキューイングをイネーブルしたときに、FIFO順序付けが維持されるように構成することもできる。一例では、ストリーマー/ホストによってキューイングがアクティブ化される前に、要求元のユーザーをキューに入れておき、アクティブ化が発生したときまたは場合に、順序付けを維持するようにしてもよく、一方キューは、ストリーマー/ホストによって、またはストリーム/ゲームが終了したときにクリアされればよい。ある実施形態では、観衆のキューイングをイネーブルするとよいのは、ストリーマー/ホスト・ユーザーによるタイトルの起動(launch)時である。また、参加のためにキューイングを要求するオプションは、ストリーマー/ホストによる、例えば、UI112aを通じたキューアクティブ化に続いて、例えば、UI112bを通じて、観衆のみに付与されてもよいことも考えられる。このようなシナリオでは、例えば、セッションに加入することを要求するための選択可能なオプションを強調またはアクティブ化することによって、メッセージによって等で、UI112bを通じて通知を観衆ユーザーに供給してもよい。
[0040] セッション・トラッカー106は、ゲームおよびコンテンツ・ストリーマーのセッションを追跡するように構成されている。即ち、セッション・トラッカー106は、セッションを監視して、いつセッションが開始するか、終了するか、またはその間で状態が変化したか判定するように構成されている。セッション・トラッカー106は、セッション状態およびその変化の指示を、セッション・キューイング・サービス108に供給することができる。したがって、セッション・キューイング・サービス108は、新たなセッションが開始しようとしているときを判定し、差し迫るセッションのアラートを出し、複数組のユーザーをゲスト・プレーヤーとしてストリーミング・セッションの開始時に挿入し、その完了時にゲスト・プレーヤーをセッションから退出させるまたは追い出す等、というように構成されている。
[0041] セッション・トラッカー106および/またはセッション・キューイング・サービス108は、各々、ハードウェア、あるいはソフトウェアおよび/またはファームウェアの一方もしくは双方と組み合わせたハードウェアで実装することができ、セッション追跡および自動キューイングの管理によって、オンライン・ゲーム、コンテンツ・ストリームおよび/またはアクティビティへの参加を促すために、本明細書において説明する任意の機能/動作を実行するように構成することができる。
[0042] ストリーマー/ホスト・クライアント・デバイス102および/またはゲスト・クライアント・デバイス102bは、任意の種類のコンピューティング・デバイスまたはコンピューティング・システムでもよく、ゲーム・コンソール(例えば、Redmond,WAのMicrosoft Corporationからの任意の型式のXbox(商標)またはXbox One(商標)コンソール、Sony Corporationの任意の種類のPlayStation(登録商標)コンソール等)、端末、パーソナル・コンピューター、ラップトップ・コンピューター、タブレット・デバイス、スマート・フォン等が含まれ、タイトル開発者からのタイトルをプレーする、ストリーミングする、および/または観戦するために、ユーザーによって使用することができる。タイトルは、開発者によって電子的に流通されても、またはコンピューター読み取り可能記憶媒体を介して流通されてもよい。コンピューター読み取り可能記憶媒体は、タイトルの実行のために、説明したクライアント・デバイスに挿入またはアップロードすることができる。本明細書において説明したように、ストリーミング・ユーザーおよび観衆ユーザーは、セッション・キューイング・ホスト104を利用することができる。ストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bは、ユーザー認証/資格証明書情報を、ネットワーク110を通じてゲーム/ストリーミング・サービス・システムまたはプラットフォームに、例えば、UI112a/UI112bを介して提供するように構成されている。加えて、ユーザーは、本明細書において説明したように、ストリーミング、観戦、セッション・キューイングおよび参加等のために、UI112aまたはUI112bを利用することができる。実施形態では、ストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bは、このようなUIのインスタンスを含んでもよい。このインスタンスは、セッション・キューイング・ホスト104からおよび/またはゲーム/ストリーミング・サービス・システムもしくはプラットフォームから受信され、あるいはストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bのコンポーネントとして受信され、格納されている。実施形態では、UI112aおよび/またはUI112bは、任意の種類のサービス/アプリケーションUI、ブラウザー、クライアントまたは電子通信アプリケーション、メッセージング・アプリケーション、ポータル等であってもよい。例の中には、UI112aおよび/またはUI112bが、タイトル開発者からのタイトルのコンポーネントである場合もある。
[0043] 尚、ストリーマー/ホスト・クライアント・デバイス102aは、ゲスト・クライアント・デバイス102bのような、ゲスト・クライアント・デバイスとして動作するように構成されてもよいこと、そしてゲスト・クライアント・デバイス102bは、ストリーマー/ホスト・クライアント・デバイス102aのような、ストリーマー・クライアント・デバイスとして動作するように構成されてもよいことは、注記してしかるべきである。即ち、本明細書において説明した異なるクライアント・デバイスは、それらの名称(label)によって、それらの機能および動作が限定されることはない。名称は、本明細書における例示および説明のために、そのように付けられた(attributed)に過ぎない。加えて、ストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bは、各々、ストリーミングせずに、または観衆が視聴しなくても、タイトルをプレーするように構成することもできる。これは、本開示から利益が得られる技術分野(1つまたは複数)の当業者には理解されよう。
[0044] 尚、本明細書において説明したように、セッション追跡および自動キューイングの管理によってオンライン・アクティビティへの参加を促す実施形態は、ゲーム/ストリーミング・サービス・システムまたはプラットフォームがネットワークを通じてクライアント・デバイスと通信するシステムであれば、いずれの種類にも適用可能であることを注記しておく。1つの例をあげると、セッション・キューイング・ホスト104および/またはセッション・キューイング・サービス108は、ネットワーク・アーキテクチャ/プラットフォームにおける「クラウド」の実施態様、アプリケーション、またはサービスである。クラウド・プラットフォームは、ネットワーク接続された1組のコンピューティング・リソースを含み、構成変更可能であり、共有可能であり、データーの安全性を提供し、インターネットのようなネットワークを通じてアクセス可能なサーバー、ルーター等が含まれる。クラウド・アプリケーションは、ネットワークを通じてアプリケーションにアクセスするエンティティのために、これらのコンピューティング・リソース上で実行し、多くの場合、リソース上で実行するオペレーティング・システム上で実行する。クラウド・プラットフォームは、マルチテナント機能(multi-tenancy)をサポートすることができる。マルチテナントでは、クラウド・プラットフォーム・ベースのソフトウェアが複数のテナントにサービスを提供し、各テナントが1人以上のユーザーを含み、これらのユーザーがクラウド・プラットフォームのソフトウェア・サービスへの共通アクセスを共有する。更に、クラウド・プラットフォームは、ハードウェア、ソフトウェア、および/またはファームウェアとして実装されるハイパーバイザーをサポートすることができる。ハイパーバイザーは、仮想機械(オペレーティング・システムを含む、エミュレートされたコンピューター・システム)をテナントのために実行する。ハイパーバイザーは、テナントのための仮想オペレーティング・プラットフォームを表す。
[0045] したがって、セッション・キューイング・ホスト104のようなセッション・キューイング・ホスト・システムは、ストリーマー・クライアント・デバイスおよび/またはゲスト・クライアント・デバイスのユーザーのために、セッション追跡および自動キューイングの管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加を改善および促進するために、種々の方法で構成することができる。例えば、図2は、セッション追跡および自動キューイングの管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加を改善および促進するように構成されたセッション・キューイング・サービス・ホスト・システム200(ここでは「システム200」)のブロック図である。システム200は、図1のキューイング・システム100の実施形態である。以下に、システム200について説明する。
[0046] システム200は、セッション・キューイング・ホスト202を含む。セッション・キューイング・ホスト202は、図1のセッション・キューイング・ホスト104の実施形態であってもよく、本明細書の他の場所で述べたような、またそうでなければ知られている、任意の種類のサーバー・コンピューターまたはコンピューティング・デバイスであってもよく、クラウド・ベースのサーバーによる実装(cloud-based server implementations)を含む。図2に示すように、システム200およびセッション・キューイング・ホスト202は、プロセッサー(「プロセッサー」)204の1つ以上、メモリーおよび/または他の物理記憶デバイス(「メモリー」)206の1つ以上、1つ以上のネットワーク・インターフェース(「ネットワーク・インターフェース」)226、およびセッション・キューイング・サービス208を含む。セッション・キューイング・サービス208は、図1のセッション・キューイング・サービス108の実施形態であってもよい。また、システム200は、先に説明した図1のセッション・トラッカー106の実施形態であってもよい、セッション・トラッカー222と、およびユーザー情報224とを含むこともできる。また、システム200は、追加のコンポーネント(簡潔さおよび図の明確さのために示されていない)も含むことができる。追加のコンポーネントには、UI12aおよび/またはUI112b等のような、本明細書における他のシステムのコンポーネントおよびサブコンポーネント、ならびにオペレーティング・システムのような、図9および図10に関して以下で説明するものが含まれるが、これらに限定されるのではない。
[0047] プロセッサー204およびメモリー206は、それぞれ、本明細書において説明する、および/または本開示から利益が得られる関連技術(1つまたは複数)における当業者には理解されるような、任意の種類のプロセッサー回路またはメモリーでもよい。プロセッサー204およびメモリー206は、各々、1つ以上のプロセッサーまたはメモリー、異なる種類のプロセッサーまたはメモリー、リモート・プロセッサーまたはメモリー、および/または分散型プロセッサーもしくはメモリーを含んでもよい。プロセッサー204は、セッション・キューイング・サービス208の実施形態のような、しかしこれには限定されないコンピューター・プログラム命令を実行するように構成された回路を含む。コンピューター・プログラム命令は、本明細書において説明したような、セッション追跡および自動キューイング等の管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加を促進するためのコンピューター・プログラム命令として実装することができる。メモリー206は、このようなコンピューター・ブログラム命令/コードを格納するように構成され、更に、限定ではなく、タイトル情報、ユーザー情報、追跡情報等を含む、本開示において説明した他の情報およびデーターを格納するように構成されている。
[0048] ネットワーク・インターフェース226は、任意の種類の有線および/またはワイヤレス・ネットワーク・アダプター、モデム等でもよく、図1に関して先に説明したネットワーク110のようなネットワークを通じて、システム200と、本明細書において説明したようなネットワークにおいて利用される他のデバイス(例えば、ストリーマー/ホスト・クライアント・デバイス102a、ゲスト・クライアント・デバイス102b、および/またはタイトル開発者サーバー114)と間における通信のように、システム200が他のデバイスとネットワークを通じて通信することを可能にするように構成されている。
[0049] ユーザー情報224は、限定ではなく、ユーザー、ユーザーのアカウント(例えば、ログイン資格証明書、ユーザー・エリアスまたはハンドル等)、ユーザーのクライアント・デバイス、ユーザーのネットワーク、ユーザーが観衆としてプレーまたは視聴したタイトル、ユーザーが獲得した褒賞、およびユーザーがシステム200またはゲーム/ストリーミング・サービス・システムもしくはプラットフォームにログインしたという指示に関する情報を含むことができる。また、ユーザー情報224は、コンテンツ・ストリーム視聴時間追跡(tracked time viewing content streams)、観衆参加、コンテンツ・ストリームの間に視聴されたタイトル・イベント、1組のユーザーのフォロワー、1組のユーザーがフォローしている他のユーザー、登録(subscription)、1組のユーザーの友人、メンバーシップ(例えば、クラブまたはコミュニティのメンバーシップ)、ユーザーのタイトル内属性/データーまたはユーザーのタイトル内キャラクターに関する情報というような基準データー、および/または任意の他の型の基準データーも含むことができる。実施形態では、このような基準データーは、ユーザーがキュー優先順位の条件を満たすか否か判定するために使用することもできる。
[0050] セッション・キューイング208は、例えば、LFGサービスのような、キュー管理によってセッション参加における促進のための、本明細書において説明した技法を実行する複数のコンポーネントを含む。図示のように、セッション・キューイング・サービス208は、コミュニケーター210、聴衆マネージャ(audience manager)212、キュー・マネージャ214、セッション・マネージャ216、アプリケーション・プログラミング・インターフェース(API)218、およびUIプロバイダー220を含む。図示を明確にするために別々に示されているが、実施形態では、コミュニケーター210、聴衆マネージャ212、キュー・マネージャ214、セッション・マネージャ216、API218、および/またはUIプロバイダー220の内1つ以上を一緒に組み合わせてもよく、および/またはシステム220の他のコンポーネントの一部として、組み合わせてもよい。ある実施形態では、図2に示すセッション・キューイング・サービス208のコンポーネント全てが含まれるのではなくてもよい。ソフトウェアの実装では、セッション・キューイング・サービス208および/またはセッション・キューイング・ホスト202の1つ以上のコンポーネントをメモリー206に格納することができ、プロセッサー204によって実行することができる。
[0051] コミュニケーター210は、システム200のセッション・キューイング・サービス208についての電子通信を受信および/または送信するように構成されている。実例をあげると、コミュニケーター210は、本明細書において説明したように、クライアント・デバイスのユーザーからの、セッション参加に関する要求、キューイング・アクティブ化コマンド、観戦ユーザーの指標(indicia of users spectating)、セッション状態情報、UIを求める要求等を、ネットワーク・インターフェース226を通じてというようにして、受けるように構成されている。同様に、システム200のセッション・キューイング・サービス208は、以下で説明するように、コミュニケーター210を通じて、通知をユーザー、UI等に発行、送信、および/または供給するように構成されている。
[0052] 聴衆マネージャ212は、タイトルのロビーにおいてストリームを視聴し、ゲーム参加またはストリーム視聴等のためにグループに加入したユーザーを追跡するように構成することができる。例えば、観衆ユーザーを、セッション・キューイング・サービス208およびシステム200と関連付けられたゲーム/ストリーミング・サービス・システムまたはプラットフォームにログインさせ、オンラインで認証することができる。サービス・システムまたはプラットフォームは、ユーザーがアクティブ・ストリームを見る、特定のゲームまたはタイトルのためのロビーに集まる、グループ・ルームに加入する等のためのメカニズムを提供することができる。聴衆マネージャ212は、実際にストリームを視聴しているユーザー、またそうでなければ、あるタイトルに関心があるユーザーだけが、セッション参加のために、キューに入れられるおよび/またはキューに入れられたままでいるのに適格となるように、構成することができる。
[0053] キュー・マネージャ214は、ゲーム/ストリーム・セッションへの参加のために、ユーザーをキューに入れるように構成することができる。キュー・マネージャ214は、先に注記したように、聴衆マネージャからの情報に基づいて、ユーザーをキューに挿入し、ユーザーをキューから退出させるように構成することができる。キュー・マネージャ214は、FIFOキューイング構造または任意の他の種類のキューイング構造を管理するように構成することができ、複数のタイトルおよび任意の数のユーザーに対してキューイングを管理するように構成することができる。キューに入れられたユーザーがセッションに挿入されると、キュー・マネージャ214はユーザーをキューから退出させるように構成されている。実施形態では、キュー・マネージャ214は、ユーザー情報224に関して先に説明したように、基準情報に基づいて、キューにおけるユーザーに優先順位を付けるように構成されている。また、キュー・マネージャ214は、ストリーマー/ホスト・ユーザーがストリームのセッションへの参加のためにキューイングを明示的にアクティブ化する前に、セッション参加を求める要求に基づいて、意図的にユーザーをキューに入れることもできる。ある実施形態では、以下で説明するセッション・マネージャ216によって完了したセッションから退出させられたまたは追い出されたゲスト・プレーヤーを、キュー・マネージャ214によって自動的に再度キューに入れることもできる。
[0054] セッション・マネージャ216は、キューに入れられたユーザーをゲスト・プレーヤーとしてセッションに挿入し、完了したセッションからゲスト・ユーザーを退出させるように構成することができる。セッション・マネージャ216は、例えば、セッションの開始時に、キューに入れられた1組のユーザーをそのセッションに追加するように構成することができ、セッションに挿入される1組のユーザーは、ストリーマー/ホストを除いて、セッションの同時参加者の最大限度に基づくか、または最大数以下のユーザー数を1組において指定するストリーマー/ホスト・ユーザーの好みに基づく。キューに入れられたユーザーが最大限度および/またはストリーマー/ホスト・ユーザーの好みよりも少ないシナリオでは、キューに入れられた数だけのユーザーをセッションに挿入することができる。セッション・マネージャ216は、セッション・トラッカー222からのセッション情報に基づいて、セッションの開始またはセッションの完了から、それぞれ、ユーザー/ゲスト・プレーヤーを追加するおよび/または退出させるように構成することができる。実施形態では、セッション・トラッカー222およびセッション・マネージャ216を、概念的にまたはそれ以外でも、1つのコンポーネントとして一緒に含ませることもできる。セッション・マネージャ216は、追加の入力または何らかの入力が供給されなくても、キューに入れられたユーザーおよび/またはゲスト・プレーヤーを自動的に追加するおよび/または退出させるように構成されている。
[0055] API218は、本明細書において説明した追跡および通信に関する特定機能を実行するために、1つ以上のAPIを含むことができる。実施形態では、API218の1つ以上のAPIは、セッション・キューイング・サービス208およびそのサブコンポーネントのような、しかしこれらには限定されない、セッション・キューイング・ホスト202のコンポーネント(1つまたは複数)に含まれてもよく、またはこれらによって利用されてもよい。例えば、API218のAPIをセッション・トラッカー222と共に利用し、ゲームおよびコンテンツ・ストリームのセッション状態を伝達することができる。同様に、他のAPIも、他のネットワーク通信および通知を容易にするために使用することができる。実施形態では、通知またはアラートは、1回のAPIコール、即ち、1回のメッセージ伝達として、観衆/視聴ユーザーに出すことができる。実施形態では、このようなAPIは、例えば、100,000人までの観衆、またはそれ以上の多数の観衆ユーザーに同時に通信を発行するように構成することもできる。
[0056] UIプロバイダー220は、UIをクライアント・デバイスに供給するように構成されている。例えば、UIプロバイダー220は、UI112a(またはその一部、もしくはそれについてのコンテンツ/情報)をストリーマー/ホスト・クライアント・デバイス102aに供給し、および/またはUI112b(またはその一部、もしくはそれについてのコンテンツ/情報)をゲスト・クライアント・デバイス102bに供給するように構成することができる。UI112aおよびUI112bの他の実施形態について、以下で更に詳しく説明する。
[0057] セッション・キューイング・サービス208は、セッション追跡および自動キューイングの管理によって、オンライン・コンテンツ・ストリームまたはマルチプレーヤー・ゲームのようなアクティビティへの参加の促進を可能にするために、種々の方法で動作することができる。実例をあげると、図3は、実施形態例にしたがって、セッション追跡および自動キューイングの管理によって、オンライン・コンテンツ・ストリームまたはアクティビティへの参加を促すフローチャート300を示す。セッション・キューイング・サービス208は、一実施形態では、フローチャート300にしたがって動作することができる。他の構造例および動作例も、以下の説明に基づけば、関連技術(1つまたは複数)に習熟した当業者には明白であろう。以下に、図1のキューイング・システム100および図2のシステム200に関して、フローチャート300について説明する。
[0058] フローチャート300はステップ302において開始する。ステップ302において、ユーザーをアクティビティ・グループに含ませることによって、ユーザーをホスト・プレーヤーのアクティビティと関連付ける。例えば、図2におけるセッション・キューイング・サービス208の聴衆マネージャ212は、ユーザーをアクティビティ・グループに属するものとして指定することによって、ホスト・プレーヤーのゲームまたはビデオ・ストリームとユーザーを関連付けるように構成されている。グループに入れられるユーザーは、Xbox Live(登録商標)のようなオンライン・サービスというような、ゲーム/ストリーミング・サービスまたはプラットフォームによって認証されたユーザー、即ち、ログインされたユーザーを含むことができる。グループに入れられたユーザーは、観衆としてビデオ・ストリームを視聴している、ストリーミングされているタイトルのロビーに存在している、マルチプレーヤー・ゲームに加入するためにグループ・ロビーに存在している等でもよい。実施形態では、聴衆マネージャ212は、このようにグループに入れられたユーザーの指示をメモリー206に格納することができる。したがって、ユーザーがゲームまたはコンテンツ・ストリームと関連して存在することが必要となるように、ゲームまたはコンテンツ・ストリームのセッションへの参加のためにキューに入れられるユーザーの適格性を管理することができる。
[0059] ステップ304において、アクティビティ・グループにおけるユーザーの少なくとも部分集合から、ゲーム/ビデオ・ストリームのセッションにゲスト・プレーヤーとして加入する要求を受ける。このセッションは、ホスト・プレーヤーとのアクティビティへの参加を含む。実例をあげると、図2のキュー・マネージャ214は、ステップ302において説明した認証済みユーザーから、ゲーム/ビデオ・ストリームのセッションに加入する要求を受けるように構成することができる。これらのユーザーは、UI112bのようなUI上でオプションを選択することによって、セッションに加入するように要求することができ、UI112bは、ユーザーがセッションに加入したいことを示す通信メッセージをキュー・マネージャ214に供給する。ある実施形態では、認証済みユーザー全員が要求を出すのではない場合もある。アクティビティは、ゲーム・プレー、デモ(demonstrations)、仮想現実体験等を含むことができる。
[0060] ステップ306において、セッションに加入する要求を提出したユーザーをキューに入れる。例えば、キュー・マネージャ214は、要求元ユーザーをキューに入れるように構成することができる。キューは、キュー・マネージャ214によってメモリー206のようなストレージに格納することができるFIFOキューのような、キューイング構造を含んでもよい。FIFOキューの例では、最初に受け取られた要求に対応するユーザーがキューの最上位、即ち、先頭に置かれる。言い換えると、受け取られた要求の順序は、キューにおけるユーザーの位置(placement)に対応する。実施形態では、要求元ユーザーをキューに入れる前に、キュー・マネージャ214は、例えば、聴衆マネージャ212からの、グループに入れられたユーザーの、格納されている指示を利用して、要求元ユーザーがビデオ・ストリームになおも関心があることを確認するように構成されている。
[0061] ステップ308において、セッションの開始を決定する。実例をあげると、セッション・マネージャ216は、セッションを開始する準備ができたとき、および/またはセッションが開始するときを決定するように構成されている。先に説明したように、セッション・マネージャ216はセッション・トラッカー222から情報を受け取ることができる。セッション・マネージャ216がセッションを開始する準備ができたと判定したとき、セッション・マネージャ216は、キューに入れられたユーザーの内、開始しようとしている次のセッションに挿入されるユーザーに、またはキューに入れられた全てのユーザーに、指示を出すように構成することができる。
[0062] ステップ310において、キューに入れられたユーザーの内所定数をセッションに自動的に挿入し、アクティブ・セッションを開始する。例えば、セッション・マネージャ216は、キューに入れられた1組のユーザーをセッションに自動的に挿入するように構成されている。キューに入れられたユーザーの内セッションに挿入される数は、同時にセッションに許容できる最大数として予め決められてもよく、またはストリーマー/ホストの好みに対応する数として予め決められてもよく、更にある実施形態では、そのユーザーの数が前述の他の数のいずれよりも少ないときには、キューに入れられたユーザーの1人以上であってもよい。セッション・マネージャ216は、指定された数/最大の数に達するまで(例えば、所定の順序で、または本明細書において説明したような参加受け入れについてのユーザーからの指示に対応する順序で)、一度に1人ずつキューに入れられた1組のユーザーをセッションに自動的に挿入するように構成することができ、またはキューに入れられた1組のユーザーを同時にまたはほぼ同時に挿入してもよい。ユーザーがゲスト・プレーヤーとして挿入されるとき、セッションは自動的にアクティブになることができる。実施形態では、キューに入れられたプレーヤーの挿入後に、ストリーマー/ホストはホストUI、例えば、UI112aを通じて、セッションをアクティブ化することができる。
[0063] キューに入れられたユーザーをセッションに自動的に挿入することによって、ネットワーク・トラフィックは大幅に減少する。例えば、クライアント・デバイス102a/102bとセッション・キューイング・ホスト202との間で、新たなゲーム/ストリーム/グループ/ロビーの再加入、次のセッションに挿入する異なるユーザーの選択等のために追加の通信を行わずに、繰り返しまたは連続セッションをシームレスに行うことができる。更に、説明した実施形態によって可能になるアクティビティの連続性により、アクティビティのセットアップにおけるダウン・タイムの短縮も可能になり、クライアント・デバイスの電力消費も減少する。
[0064] 更に、そして既に注記したように、セッション・キューイング・サービスは、ストリーマーとゲスト・クライアント・デバイスとの間の中央に位置付けられ、ストリーマー/ホスト・ユーザーの特定の好みに基づいて、このようなユーザー毎に、ゲーム/ストリーミング・サービス・システムまたはプラットフォームによってサポートされる利用可能な各タイトルに対して、動的にキューイングおよびセッション参加を管理することが可能である。このように、セッション・キューイング・サービスは、任意の数のユーザーのために、セッション参加を効率的に管理し、コンテンツ・ストリーミング・システムおよびそのユーザー体験を改善することが可能である。つまり、集中サービスから、タイトル毎およびストリーマー/ホスト毎にキューイング管理およびセッション参加のカスタム化が可能になる。
[0065] 更にまた、図2のAPI218の内1つのAPIは、リアル・タイムで、アラート/通知を含む1対多数の通信を、ユーザー、キューに入れられたユーザー、および/またはゲスト・プレーヤーに発行するように構成することができる。同様に先に説明したように、中央に配置されたセッション・キューイング・サービスは、キュー管理およびセッション参加、ならびにネットワーク利用に関して、システム性能に合わせて構成されている。説明した実施形態によって、ネットワーク・トラフィックおよび負荷が更に大幅に減少する。これは、説明したセッション・キューイング・サービスが、キューイングおよびセッション参加に関する1つの通知を、認証されたユーザーの全てのクライアント・デバイスに発行するように構成されているからである。即ち、アラートおよび通知は、先に注記したように、観衆ユーザーへの個々の通知をサービスから、タイトルから、またはストリーマー/ホストから要求しなくてもよいように、例えば、API218によって流布される。説明したタイトル・キューイング・サービスおよびシステムによって減少するネットワーク・トラフィックは重要である。何故なら、ゲームへの参加、タイトルのストリーミングの視聴、キューイング、およびセッション参加のためにサポートされるユーザーの数は、千人単位から10万人単位になる可能性があるからである。
[0066] セッションに挿入された後、ゲスト・プレーヤーは、セッションが完了するまで、ストリーマー/ホスト・ユーザーとのアクティビティに参加することができる。セッションの完了時に、図2のセッション・キューイング・サービス208は、セッションの開始およびキューに入れられたユーザーの挿入を、自動的にそしてシームレスに繰り返すように構成されている。
[0067] 実例をあげると、図4は、実施形態例にしたがって、セッション追跡および自動キューイングの管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加を促すフローチャート400を示す。セッション・キューイング・サービス208は、フローチャート400にしたがって動作することができる。フローチャート400は、図3のフローチャート300の他の実施形態としてもよい。他の構造例および動作例も、以下の説明に基づけば、関連技術(1つまたは複数)に習熟した当業者には明白であろう。以下に、図1のキューイング・システム100および図2のシステム200に関して、フローチャート400について説明する。
[0068] フローチャート400はステップ402において開始する。ステップ402において、アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡する。例えば、図2のセッション・マネージャ216は、前述のように、セッション・トラッカー222によってセッションを追跡するように構成することができる。実施形態では、セッション・マネージャ216は、ストリームおよびセッションを直接または間接的に監視して追跡情報を入手するように、ゲーム/ストリーミング・サービス・システムまたはプラットフォームから出されたセッション情報を、セッション・トラッカー222から受信することができる。
[0069] ステップ404において、以前のアクティブ・セッションの完了を判定する。例えば、セッション・マネージャ216は、ステップ402について先に説明したように、追跡情報を入手するように構成されている。セッション・マネージャ216は、追跡情報に基づいて、セッションの完了を判定することができる。このように、セッション・マネージャ216は、以前のセッションが完了したことが判定されるまで、ゲスト・プレーヤーのセッションからの退出を実行するのを待つように構成されている。
[0070] ステップ406において、完了に基づいて、そしてキューに入れられたユーザーの内所定数をセッションに自動的に挿入する前に、以前のアクティブ・セッションのゲスト・プレーヤーを全て自動的に退出させる。例えば、セッション・マネージャ216は、セッションが完了したとき、これらのセッションからゲスト・プレーヤーを自動的に退出させるように構成することができる。このように、セッション・マネージャ216は、ゲスト・プレーヤーの以前のセッションからの退出が終わるまで、キューに入れられたユーザーの新たなセッションへのゲスト・プレーヤーとしての挿入を実行するのを待つように構成されている。
[0071] ステップ408において、以前のアクティブ・セッションの完了に基づいて、開始を決定する。実例をあげると、先に注記したように、新たなセッションをアクティブ化する前に、アクティビティの以前のセッションを完了させる。以前のセッションが完了すると、セッション・トラッカー222はセッション・マネージャ216に通知するように構成されている。実施形態では、セッション・トラッカー216は、以前のアクティブ・セッションの完了に応答して、例えば、キューに入れられたユーザーをゲスト・プレーヤーとして挿入することによって、いつ新たなアクティブ・セッションを開始するか決定するように構成することができる。
[0072] 実施形態では、フローチャート400のステップは、自動的に、例えば、ユーザーからの入力がなくても、セッション参加およびフローをシームレスにそして効率的に管理するために実行することができる。
[0073] したがって、フローチャート300およびフローチャート400(ならびにシステム200のセッション・キューイング・サービス208)は、異なる開発者のタイトルのいかなる数のセッションおよびゲーム/ストリームであっても、あらゆる数のユーザーに対して自動キュー・マネージャおよびセッション・マネージャとして動作するように、セッション・キューイング・サービス208を構成させることによって、セッション追跡および自動キューイングの管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加の改善および促進を可能にする。実施形態では、通知を削減する効率的なネットワーク・トラフィック/負荷、およびユーザーのアクティビティ・セッションへの統合に配慮する。
[0074] 図5、図6、および図7は、説明した実施形態による流れ図を示す。図5は、流れ図500を示し、図6は流れ図600を示し、図7は流れ図700を示す。各々、実施形態例にしたがって、セッション追跡および自動キューイングの管理によるオンライン・コンテンツ・ストリームまたはアクティビティへの参加の促進についての流れ図である。例示のために、説明する流れ図を、以上で説明した実施形態に関して関連付ける。セッション・キューイング・サービス208は、流れ図500、流れ図600、および/または流れ図700にしたがって動作することができる。流れ図500、流れ図600、および/または流れ図700は、図3のフローチャート300および/または図4のフローチャート400の他の実施形態であってもよい。他の構造例および動作例も、以下の説明に基づけば、関連技術(1つまたは複数)に習熟した当業者には明白であろう。
[0075] 以下に、図1のキューイング・システム100および図2のシステム200に関して、更に図1のストリーマー/ホスト・クライアント・デバイス102aのようなストリーマー・クライアント・デバイスに関して、図5の流れ図500について説明する。
[0076] ステップ502において、 ホストは、例えば、ストリーマー/ホスト・クライアント・デバイス102aを通じて、マルチプレーヤー・タイトルを起動する。ホストは、ストリーマー/ホスト・クライアント・デバイス102aによって、他のユーザーとプレーすることを望む。流れ図500に示す例のコンテキストでは、ホスト/観衆モデルに関して、ホストについて説明する。この場合、ホストは彼らのプレーを、ゲスト・クライアント・デバイス102bのユーザーのような、ユーザーの聴衆に向けてストリーミングしている。例えば、タイトルまたはホスト・マルチプレーヤー・ゲーム・セッションをストリーミングするように構成されたゲーム/ストリーミング・サービス・システムまたはプラットフォームによって、ステップ502に応答して、マルチプレーヤー(MP)サービス・ストリーム(またはゲーム・セッション)をステップ504において作成する。同時にまたはほぼ同時に、セッション・トラッカー222への永続接続506、例えば、図示のようなWebSocket接続を形成する(そして、このコンテキストでは、リアル・タイム・アクティビティ(RTA)サービス・インスタンスとして動作する)。この接続506は、セッションの変更および状態に対して、最新に維持される。セッション・トラッカー222は、RTAサービス・インスタンスとして機能し、公開/登録モデル・サービスとして動作することができ、加入者(subscriber)は、リアル・タイムまたはほぼリアル・タイムで、項目についてのプッシュされた更を受信する。
[0077] 次いで、ステップ508において、ホストは、例えば、プラットフォームを通じて、ストリーマー/ホスト・クライアント・デバイス102aからブロードキャストを開始する。ホスト(またはこの場合はストリーマー)は、次に、ステップ510において、自動プレーLFGプロセスを作成することを決定することができる。このプロセスは、本明細書の実施形態について説明したように、各ストリーミング・セッションの後に、プレーすることを望む新たな聴衆を継続的に引き込む。LFGプロセスについての詳細512は、自動的入力されてもよく、または、限定ではなく、セッション(即ち、ユーザー・スロット)に追加するユーザーの数、セッションの期間、加入者、フォロワー、実際にチャットをしている等の観衆(audience members)の優先順位付け等を含むように、カスタム化することができる。詳細512は、デフォルトのオプションであってもよく、および/またはUI112aのようなUIによってカスタム化することもできる(以下で更に説明する)。ステップ512における自動プレーLFGの作成によって、セッション・キューイング・サービスに、LFGプロセスを作成させ、UI112bのようなUIを通じてLFGプロセスをユーザーに供給することができる(以下で更に説明する)。加えて、実施形態では、可視性オプション(visibility option)によって、聴衆のユーザー(users of the audience)を、LFGプロセスを視聴することができるユーザーだけにすることもできる。
[0078] これより図6および流れ図600に移り、図1のゲスト・クライアント・デバイス102bのようなゲスト・クライアント・デバイスに関して、この実施形態例について説明する。また、図5の流れ図500に関しても、例えば、流れ図500と同時に実行されるクライアント側の図として、流れ図600について説明する。
[0079] ストリーム・ビューア(またはユーザー一般)は、ゲスト・クライアント・デバイス102bのようなクライアント・デバイスを通じて、ステップ602においてタイトルのストリーマー/ホストのブロードキャストまたはコンテンツ・ストリームを見る(またはマルチプレーヤー・ゲーム・セッションに加入する)ことができる。実例をあげると、流れ図500のステップ508においてブロードキャストされたストリームを視聴することができる。ユーザーは、ストリームをブロードキャストする元であるゲーム/ストリーミング・サービス・システムまたはプラットフォーム(以下で図7において示す)によって提供されるロビーまたは他のオンライン上の場所においてストリームを視聴することができる。ストリーマー/ホストは、流れ図500のステップ510におけるように、聴衆のために自動プレーLFGプロセスをイネーブルすることができる。例えば、図1のUI112aのようなインタラクティブUIにおいて、ストリーマー/ホストは、聴衆ユーザーが、例えば、UI112bをアクティブ化して、ストリーマー/ホストとのストリームのアクティビティまたはセッションに参加するための選択可能なオプションを有効にする。ビューアは、ステップ604において、セッション・キューに入ることを要求する。
[0080] ユーザーから要求を受けると、プラットフォームは、ステップ606において、実行しようとする任意のキュー優先順位付けのために、ユーザー・メタデーターをセッション・キューイング・サービスに供給することができる。このメタデーターは、本明細書において説明した基準データーを含んでもよく、基準データーは、図2のユーザー情報224と共に格納することができる。ステップ608において、例えば、前述のようにセッション・キューイング・サービス208によってユーザーをセッション・キューに首尾良く追加したとき、キューに入れられたユーザーは、ステップ610において確立されたセッション・トラッカー222に対する永続接続、例えば、図示のようなWebSocket接続を有し、このキューにおける彼らの位置について、キューに入れられたユーザーの最新情報、およびLFGプロセスにおける他の更新を伝え続けることができる。
[0081] 図7および流れ図700について、図1のキューイング・システム100および/またはシステム200のような、セッション・キューイング・システムに関して、この実施形態例を説明する。また、図5の流れ図500および図6の流れ図600に関して、例えば、これらの流れ図と同時に実行されるシステム・レベルの図として、流れ図700を説明する。
[0082] ストリーマー/ホスト・クライアント・デバイス102aにおけるストリーマー/ホストが自動プレーLFGに十分な量の関心を有するとき、または1人以上の他のユーザーがキューに入れられているとき、ストリーマー/ホストは、ステップ702において、彼らのUI、例えば、図1のUI112a上で開始するオブジェクトをアクティブ化することによって、セッションへの挿入のために、1つ以上のゲスト・クライアント・デバイス102bにおいて、キューに入れられたユーザーを選択するプロセスを開始することができる。このアクティブ化により、対応する通知がセッション・キューイング・サービス208に供給され、キューにおいて最上位にいるユーザーを選択し、例えば、キュー・マネージャ214によって、ステップ704においてゲーム・セッションを遂行しようとし始める。ある実施形態では、セッション・キューイング・サービス208は、所定数のユーザーがキューに入れられたとき(または1人以上のユーザーがキューに入れられてある時間期間の後)に、キューからユーザーを自動的に選択し始めることもできる。
[0083] セッション・キューイング・サービス208は、WNS通知のような通知を、ステップ706において選択されたユーザーのゲスト・クライアント・デバイス102bに、例えば、セッション・マネージャ216を通じて自動的に供給するように構成されている。選択されたユーザーは、彼らのUI、例えば、図1のUI112bにおける選択可能なオブジェクトによって、この通知に応答し、セッション招待を受け入れることができる。あるいは、他の実施形態では、追加のユーザー入力を要せずに、キューにおいて選択されたユーザーに、彼らがセッションに追加されたことの情報アラートを出すこともできる。キューにおいて選択された各ユーザーが受け入れると、彼らは、ステップ708において、例えば、セッション・キューイング・サービス208のセッション・マネージャ216によって、ゲーム・セッションに自動的に追加される。選択されたユーザーが招待通知に対して所定の時間期間躊躇する場合、または受け入れ損ねた場合、セッション・キューイング・サービス208は、そのユーザーをキューから退出させ、または代わりにそのユーザーをキューの終端に移動させ(place)、キューの最上位にいる次のユーザーを選択するように構成されている。
[0084] 一旦、前述のように、指定数の参加者にしたがってセッションが設定される(populated)と、ストリーマー/ホストは、このセッションをアクティブであるとして開始することができるが、ある他の実施形態では、セッションを自動的にアクティブ化することもできる。いずれの場合でも、セッションはその完了まで行われる。セッション・トラッカー222によって追跡されたセッション状態に基づいて、セッションの完了時に、ゲーム/ストリームが終了したか、ステップ710において判定する。ゲーム/ストリームが終了した場合、タイトルまたはセッション・キューイング・サービス208は、ゲスト・プレーヤーをセッションから退出させ、ステップ712において、例えば、セッション・マネージャ216によって、キューに入れられたユーザーを切断する。ゲーム/ストリームが終了していない場合、セッション・キューイング・サービス208は、たとえば、セッション・マネージャ216によって、ゲスト・プレーヤーを退出させ、または追い出し、ステップ714において、セッションにおいて利用可能なスロットを新たなゲスト・プレーヤーのために解放し、ストリーマー/ホストだけを残す。セッション・トラッカー222は、セッション・キューイング・サービス208とゲーム/ストリーミング・サービス・システムまたはプラットフォーム716におけるMPサービス・ストリーム(またはゲーム・セッション)との間で、ゲーム・ストリームにおける利用可能なセッション・スロット、およびキューの中の参加できる(available)次のユーザーの情報を中継するように構成されている。次いで、説明したプロセスを自動的に繰り返すことができ、例えば、ステップ704において、キューの中の参加できる次のユーザーを選択し始め、ステップ706において、WNSゲーム招待を選択したユーザーに送る。
[0085] 実施形態では、セッションが進行中における待機期間に、ゲーム/ストリームを止めた(left)ゲスト・プレーヤーはいずれも、例えば、キュー・マネージャ214によってキューから自動的に退出させることができる。説明した実施形態の自動性により、一旦プロセスを再開したなら、ストリーマー/ホストがゲーム/ストリームおよびセッションを取り消すまたは終了するまで、キューに入れられた次のユーザーを新たなゲスト・プレーヤーとして選択するために、ストリーマー/ホストによって何のアクションも行う必要はない。加えて、ストリーム・ビューアであるユーザー、またそうでなければアクティビティ参加者になることを望むユーザーは、キューに残り、彼らが待っている間、彼らのそれぞれのUIを通じてキューにおける彼らの位置を見ることができる。
[0086] このように、説明したセッション参加およびキュー管理システムならびにプロセスは、セッション・セットアップに必要な通信を減らすことによって、ネットワーク110のネットワーク・トラフィックおよび負荷を大幅に削減することを可能にし、更に本明細書におけるシステムおよびデバイスの電力消費も、セッションのシームレスな繰り返しによって低減され、現在の解決策よりも効率的な実装を可能にする。更に、本技術の現状では、この効率的に動作するように構成および/またはプログラミングされたセッション参加およびキュー管理システムが欠如している。
B.ユーザー・インターフェースの実施形態例
[0087] 本明細書において説明するクライアント・デバイス、例えば、図1に示したようなストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bのユーザーは、互いにインタラクトするように構成され、更に図1のセッション・キューイング・ホスト104および/または図2におけるシステム200のセッション・キューイング・ホスト202やセッション・キューイング・サービス208とインタラクトするように構成されている。ストリーマー/ホスト・クライアント・デバイス102aおよび/またはゲスト・クライアント・デバイス102bは、任意の種類のコンピューティング・デバイスまたはコンピューティング・システムでもよく、タイトル開発者のタイトルをプレーする、ストリーミングする、および/または観戦する(即ち、そのストリームを視聴する)ためにユーザーによって使用することができるゲーム・コンソール、端末、パーソナル・コンピューター、ラップトップ・コンピューター、タブレット・デバイス、スマート・フォン等が含まれる。先に注記したように、このようなデバイスは図1のUI112aおよびUI112bのようなUIを含むことができる。本明細書において説明したUIおよびそれについての情報/コンテンツは、全体的にまたは部分的に、クライアント・デバイスまたは他のシステム/ホストによって実行されるタイトルによって供給することができ、クライアント・デバイスに埋め込むことができ、またはその任意の組み合わせでもよい。
[0088] これより図8Aおよび図8Bに移り、UI112aおよびUI112bのそれぞれの実施形態であるUIについて説明する。
[0089] 図8Aにおいて、ホストUI800Aのブロック図を示す。図示するホストUI800Aは、UI112aの更に他の実施形態である。ホストUI800Aは、図2のUIプロバイダー(1つまたは複数)220からストリーマー/ホストに提供されるUIであってもよい。ホストUI800Aについて以下に説明する。
[0090] ホストUI800Aは、ゲーム/ストリーム・プレー・ウィンドウ802を含むことができる。ゲーム/ストリーム・プレー・ウィンドウ802は、ストリーマー/ホストのアクティビティが、ストリームまたはタイトルのゲーム・プレー中に行われるに連れて、それらを示すように構成されている。また、ホストUI800Aは、構成変更可能なオブジェクトも含むことができ、これらは資格証明書を構成するためにストリーマー/ホストによって選択またはインタラクトすることができる。例えば、セッション資格証明書オブジェクト804および優先順位資格証明書オブジェクト806が示されている。セッション資格証明書オブジェクト804および/または優先順位資格証明書オブジェクト806は、プルダウン・メニューまたは他の型式の拡張可能インターフェースを含むことができ、これらは、本明細書において説明したセッション参加およびキュー管理の実施形態における実装のために、ストリーマー/ホストが資格証明書を指定および/または選択することを可能にする。セッション資格証明書オブジェクト804は、ゲーム/ストリームのセッションに加入することを可能にするためのユーザー資格証明書に関するオプションを構成するために設けられる(provide for)。一例として、ストリーマー/ホストが、彼女のフォロワーおよび友人だけ、あるいは特定のコミュニティまたはグループのメンバーだけがゲーム/ストリーム・セッションに加入および参加することが許可されることを要求したいという場合がある。しかしながら、セッション資格証明書オブジェクト804に関して、ユーザーの他の特性/資格証明書を指定してもよいことも考えられる。優先順位資格証明書オブジェクト806は、ゲーム/ストリームのセッションに加入および参加することを要求するとき、優先キュー順位(priority queue placement)を有するためのユーザー資格証明書に関するオプションを構成するために設けられる。一例として、ストリーマー/ホストが、メッセージング・オブジェクト816を通じてストリーマー/ホストによって供給されたパスコードを有するユーザー、または彼女のストリーミング・チャネルの加入者を、キューにおいて、このような特性/基準を有し既にキューに入れられている他のユーザーの直後に(即ち、キューに入れられたがこのような特性/基準を有さないユーザーの前に)入れさせることを望む場合がある。しかしながら、優先順位資格証明書オブジェクト806に関して、ユーザーの他の特性/資格証明書を指定してもよいことが考えられる。
[0091] また、ホストUI800Aは選択可能なオブジェクト808も含むことができる。選択可能なオブジェクト808が選択されると、LFGプロセスを開始する、即ち、ストリームに対してセッション・モードをアクティブ化し、他のユーザーとのアクティビティのためにセッションに参加し始めるように構成されている。実施形態では、オブジェクト808を選択すると、以下で説明するように、ゲストUI800Bに、その1つ以上の部分をユーザーに表示させるか、またはそれらをアクティブにさせる。また、ホストUI800Aは、キューの表現、例えば、キュー・オブジェクト810も含むことができ、このキュー・オブジェクト810内に、説明した実施形態にしたがって、ユーザーをキューに入れる。キュー・オブジェクト810は、キューに入れられたユーザー、およびキューにおける彼らの位置を示すことができる。また、キュー・オブジェクト810は、キューに入れられたユーザー、キューに入れられたユーザーの内次のセッションに追加される数(例えば、図示のようにキュー位置1および2にいるユーザー)を示す指示812も表示することができる。言い換えると、図示する実施形態では、キューに入れられた2人のユーザーが、キューに入れられたユーザーの部分集合として、ストリーマー/ホストを含む合計3人の参加者のための各セッションに追加されることが許されるが、本明細書ではユーザーの部分集合には他の数も考えられる。キュー・オブジェクト810は、キュー内にいるユーザーに関連付けられる他の情報/特性、例えば、アバター画像、バッジ、加入指示等も示すことができる。ある実施形態では、キュー・オブジェクト810から特定のユーザーを選択して優先的に扱うことを、ホストUI800Aによって、ストリーマー/ホストに認めてもよい。
[0092] また、ホストUI800Aは、図示の明確化と簡潔さのために明示的に示さない他のアクションに対して選択可能なオブジェクト814も含むことができる。オブジェクト814の選択時に実行される他のアクションには、限定ではなく、キュー・オブジェクト810からユーザーを退出させる、セッションを終了する、ストリームを終了する、セッションを開始する、セッション参加者に制限を設定する、セッションに期間を設定する、残り時間またはセッション目標進展(session objective progress)のようなセッション情報をゲストUIに表示する等のアクションを含むことができる。実施形態では、オブジェクト808またはオブジェクト814を選択すると、ストリーマー/ホストによって以前に実装されたセッション・オプションを示すリストまたは履歴を表示する(provide)ことができる。
[0093] 図8Bにおいて、ゲストUI800Bのブロック図を示す。図示のゲストUI800Bは、UI112bの更に他の実施形態である。ゲストUI800Bは、図2のUIプロバイダー(1つまたは複数)220からストリーマー/ホストに供給されたUIであってもよい。ゲストUI800Bは、ユーザーがタイトル・ロビー、グループ等に入るときに表示する(provide)ことができる。ゲストUI800Bについて以下に説明する。
[0094] ゲストUI800Bは、ゲーム/ストリーム・ビューア・ウィンドウ818を含むことができる。ゲーム/ストリーム・ビューア・ウィンドウ818は、ストリーマー/ホストのアクティビティがストリームまたはタイトルのゲーム・プレー中に行われるに連れて、これらを示すように構成されている。ゲーム/ストリーム・ビューア・ウィンドウ818は、残り時間またはセッション目標進展のようなセッション情報を表示するように構成することができる。ゲーム/ストリーム・ビューア・ウィンドウ818は、本明細書において説明したように、ゲーム/ストリームのセッションに追加された後における、ユーザーのセッションへの参加を示すように構成することができる。
[0095] ゲストUI800Bは、資格証明書オブジェクト820、加入要求オブジェクト822、キュー・オブジェクト824、およびアラート指示オブジェクト828を含むことができる。これらのオブジェクトの1つ以上は、ストリーマー/ホストが(例えば、ホストUI800Aのオブジェクト808を通じて)LFGプロセスまたはセッションをアクティブ化する前には表示されないように、またはアクティブ化解除されたものとして表示されるように構成されてもよい。
[0096] 資格証明書オブジェクト820は、ユーザーが、ユーザーに対する許可の確認のためにストリーマー/ホストに供給する資格証明書を入力すること、またある実施形態では、選択することを可能にするように構成することができる。実例をあげると、資格証明書オブジェクト820は、ユーザーが、ストリーマー/ホストによって供給されたパスコードを、メッセージング・オブジェクト830を通じて入力することができるテキスト・フィールドであってもよい。本明細書において説明したように、加入要求オブジェクト822は、セッション加入要求を送らせるために、ユーザーによって選択可能であってもよい。
[0097] キュー・オブジェクト824は、説明した実施形態にしたがってユーザーが入れられるキューの表現を表示することができる。キュー・オブジェクト824は、キューに入れられたユーザー、およびキューにおける彼らの位置を示すことができ、ゲストUI800Bを視聴しているユーザーを含む。また、キュー・オブジェクト824は、キューに入れられたユーザー、またはキューに入れられたユーザーの内次のセッションに追加される数(例えば、図示のようにキュー位置1および2にいるユーザー)を指定する(denote)指示826を表示する(provide)こともできる。言い換えると、図示する実施形態では、キューに入れられた2人のユーザーが、キューに入れられたユーザーの部分集合として、ストリーマー/ホストを含む合計3人の参加者のための各セッションに追加されることが許されるが、本明細書ではユーザーの部分集合には他の数も考えられる。
[0098] アラート指示オブジェクト828は、ユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対して、アラート指示を出すように構成されている。アラート指示オブジェクト828によって出されるアラート通知は、任意の種類の視覚通知および/または聴覚通知を含んでもよい。実施形態では、アラート指示オブジェクト828は、前述のように、セッションに加入するための招待を受け入れるために、ユーザーによってアクティブ化される選択可能なオブジェクトとして構成されてもよい。実例をあげると、前述の図7における流れ図700のステップ704および706におけるように、キューに入れられたユーザーが、セッションに含まれるために、自動的に選択され、通知がユーザーに自動的に出されると、ユーザーは、アラート指示オブジェクト828を選択することによって、この通知に応答して、セッションへの挿入を受け入れることができる。
[0099] 本開示から利益が得られる関連技術(1つまたは複数)における当業者には理解されるであろうが、ホストUI800AおよびゲストUI800Bのこれらならびにその他の機能は、説明したシステムおよびデバイスの任意の他の実施形態ならびに特徴と組み合わせることもできる。
III.移動体デバイスおよびコンピューティング・デバイスの実施形態例
[0100] 本明細書において説明した実施形態は、ハードウェア、あるいはソフトウェアおよび/またはファームウェアと組み合わせたハードウェアで実現することができる。例えば、本明細書において説明した実施形態は、1つ以上のプロセッサーにおいて実行されコンピューター読み取り可能記憶媒体に格納されるように構成されたコンピューター・プログラム・コード/命令として実装することができる。あるいは、本明細書において説明した実施形態は、ハードウェア・ロジック/電気回路として実装することもできる。
[0101] 本明細書において注記したように、説明した実施形態は、図1のキューイング・システム100、図2のシステム200、図8AのホストUI800A、図8BのゲストUI800Bを、それらのあらゆるコンポーネントおよび/またはサブコンポーネント、ならびに本明細書において説明したフローチャート/流れ図、および/または本明細書において説明した更に他の例と共に含み、ハードウェア、あるいはソフトウェアおよび/またはファームウェアの任意の組み合わせを有するハードウェアで実現することができ、1つ以上のプロセッサーにおいて実行されコンピューター読み取り可能記憶媒体に格納されるように構成されたコンピューター・プログラム・コードとして実装されることを含み、あるいはシステム・オン・チップ(SoC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、または特定用途集積回路(ASCI)において一緒に実装されるというように、ハードウェア・ロジック/電気回路として実装されることを含む。SoCは、プロセッサー(例えば、マイクロコントローラー、マイクロプロセッサー、ディジタル信号プロセッサー(DSP)等)、メモリー、1つ以上の通信インターフェース、および/またはその機能を実行するためのその他の回路および/または埋め込みファームウェアの内1つ以上を含む集積回路チップを含むことができる。
[0102] 本明細書において説明した実施形態は、据置型または移動体コンピューターの実施形態における移動体システムおよび/またはコンピューティング・デバイスと同様の1つ以上のコンピューティング・デバイスにおいて実装することができ、本明細書において説明した移動体システムおよび/またはコンピューティング・デバイスの1つ以上の特徴、ならびに代わりの特徴を含む。本発明において提供する移動体システムおよびコンピューティング・デバイスの説明は、例示の目的に限って提示されたのであって、限定を意図するのではない。実施形態は、関連技術(1つまたは複数)に習熟した当業者には分かるように、更に他の種類のコンピューター・システムにおいて実装することもできる。
[0103] 図9は、本明細書において説明した実施形態を実現することができる移動体デバイス902を含む例示的な移動体システム900のブロック図である。例えば、移動体デバイス902は、これまでの章における任意のシステム、クライアント、またはデバイス、あるいはそのコンポーネント/サブコンポーネントを実現するために使用することができる。図9に示すように、移動体デバイス902は種々の随意選択のハードウェアおよびソフトウェア・コンポーネントを含む。移動体デバイス902におけるコンポーネントはいずれも、他のいずれのコンポーネントとでも通信することができるが、図示を容易にするために、全ての接続は示されていない。移動体デバイス902は、種々のコンピューティング・デバイス(例えば、セル・フォン、スマート・フォン、ハンドヘルド・コンピューター、パーソナル・ディジタル・アシスタント(PDS)等)の内任意のものとすることができ、セルラーまたは衛星ネットワークのような1つ以上の移動体通信ネットワーク904、あるいはローカル・エリアまたはワイド・エリア・ネットワークとのワイヤレス双方向通信を可能にすることができる。
[0104] 移動体デバイス902は、信号コード化、データー処理、入力/出力処理、電力制御、および/または他の機能というようなタスクを実行するために、コントローラーまたはプロセッサー910(例えば、信号プロセッサー、マイクロプロセッサー、ASIC、または他の制御および処理ロジック回路)を含むことができる。オペレーティング・システム912は、移動体デバイス902のコンポーネントの割り当ておよび使用を制御し、1つ以上のアプリケーション・プログラム914(「アプリケーション」または「アプリ」とも呼ぶ)に対する支援を行うことができる。アプリケーション・プログラム914は、共通の移動体コンピューティング・アプリケーション(例えば、電子メール・アプリケーション、カレンダー、連絡先管理、ウェブ・ブラウザー、メッセージング・アプリケーション)、および任意の他のコンピューティング・アプリケーション(例えば、ワード・プロセッシング・アプリケーション、マッピング・アプリケーション、メディア・プレーヤー・アプリケーション)を含むこともできる。
[0105] 移動体デバイス902は、メモリー920を含むことができる。メモリー920は、非リムーバブル・メモリー922および/またはリムーバブル・メモリー924を含むことができる。非リムーバブル・メモリー922は、RAM、ROM、フラッシュ・メモリー、ハード・ディスク、あるいは他の周知のメモリー・デバイスまたは技術を含むことができる。リムーバブル・メモリー924は、フラッシュ・メモリー、またはGSM通信システムでは周知である加入者識別モジュール(SIM:Subscriber Identity Module)カード、あるいは「スマート・カード」のような他の周知のメモリー・デバイスまたは技術を含むことができる。メモリー920は、オペレーティング・システム912およびアプリケーション・プログラム914を実行するためのデーターおよび/またはコードを格納するために使用することができる。データーの例には、ウェブ・ページ、テキスト、画像、音響ファイル、ビデオ・データー、あるいは1つ以上の有線またはワイヤレス・ネットワークを通じて1つ以上のネットワーク・サーバーまたは他のデバイスに送られる、および/または1つ以上のネットワーク・サーバーまたは他のデバイスから受信されるその他のデーターを含むことができる。メモリー920は、国際移動体加入者識別(IMSI:International Mobile Subscriber Identity)のような加入者識別子、および国際移動体機器識別子(IMEI:International Mobile Equipment Identifier)のような機器識別子を格納するために使用することができる。このような識別子は、ユーザーおよび機器を識別するために、ネットワーク・サーバーに送信することができる。
[0106] 複数のプログラムをメモリー920に格納することができる。これらのプログラムには、オペレーティング・システム912、1つ以上のアプリケーション・プログラム914、ならびに他のプログラム・モジュールおよびプログラム・データーが含まれる。このようなアプリケーション・プログラムまたはプログラム・モジュールの例には、例えば、図1のキューイング・システム100、図2のシステム200、図8AのホストUI800A、図8BのゲストUI800Bの内1つ以上を、それらのあらゆるコンポーネントおよび/またはサブコンポーネントと共に実装するため、ならびに本明細書において説明したプロットおよびフローチャート/流れ図、および/または更に他の例を実施するためのコンピューター・プログラム・ロジック(例えば、コンピューター・プログラム・コードまたは命令)を含むことができる。
[0107] 移動体デバイス902は、タッチ・スクリーン932、マイクロフォン934、カメラ936、物理キーボード938および/またはトラックボール940のような1つ以上の入力デバイス930、ならびにスピーカー952およびディスプレイ954のような1つ以上の出力デバイス950をサポートすることができる。他の可能な出力デバイス(図示せず)には、圧電または他の触覚出力デバイスを含むことができる。デバイスの中には、1つよりも多い入力/出力機能を提供できる(serve)ものもある。例えば、タッチ・スクリーン932およびディスプレイ954は、組み合わせて1つの入力/出力デバイスにすることができる。入力デバイス930は、自然ユーザー・インターフェース(NUI)を含むことができる。
[0108] 1つ以上のワイヤレス・モデム960をアンテナ(1つまたは複数)(図示せず)に結合することができ、当技術分野ではよく理解されているように、プロセッサー910と外部デバイスとの間における双方向通信をサポートすることができる。モデム960は包括的に示されており、移動体通信ネットワーク904と通信するためのセルラー・モデム966、および/または他の無線系モデム(例えば、Bluetooth964またはWi-Fi962)を含むことができる。少なくとも1つのワイヤレス・モデム960が、通例、1つのセルラー・ネットワーク内、セルラー・ネットワーク間、または移動体デバイスと公衆電話交換網(PSTN)との間におけるデーターおよび音声通信のためのGSMネットワークのような、1つ以上のセルラー・ネットワークとの通信のために構成される。
[0109] 更に、移動体デバイス902は、少なくとも1つの入力/出力ポート980、電源982、汎地球測位システム(GPS)受信機のような衛星ナビゲーション・システム受信機984、加速度計986、および/または物理コネクター990も含むことができる。物理コネクター990は、USBポート、IEEE1394(Fire Wire)ポート、および/またはRS-232ポートとすることができる。移動体デバイス902の図示したコンポーネントは、必須でなく、全てを含むのでもない。何故なら、当業者であれば認められるように、いずれのコンポーネントでも削除することができ、他のコンポーネントを追加することもできるからである。
[0110] 実施形態では、移動体デバイス902は、本明細書におけるフローチャートの前述した特徴であれば、いずれでも実現するように構成されている。本明細書において説明した動作、ステップ、および/または機能の内任意のものを実行するためのコンピューター・プログラム・ロジックは、メモリー920に格納し、プロセッサー910によって実行することができる。
[0111] 図10は、実施形態を実現することができるコンピューティング・デバイス1000の例示的な実施態様を示す。例えば、本明細書において説明した実施形態は、据置型または移動体コンピューターの実施形態におけるコンピューティング・デバイス1000と同様の1つ以上のコンピューティング・デバイスにおいて実装することができ、コンピューティング・デバイス1000の1つ以上の特徴、および/または代わりの特徴を含む。本明細書において提供するコンピューティング・デバイス1000の説明は、例示の目的に限って提示されたのであって、限定を意図するのではない。実施形態は、関連技術(1つまたは複数)に習熟した当業者には分かるように、更に他の種類のコンピューター・システムおよび/またはゲーム・コンソール等において実装することもできる。
[0112] 図10に示すように、コンピューティング・デバイス1000は、プロセッサー回路1002と呼ばれる1つ以上のプロセッサー、システム・メモリー1004、およびバス1006を含む。バス1006は、システム・メモリー1004からプロセッサー回路1002までを含む種々のシステム・コンポーネントを結合する。プロセッサー回路1002は、中央処理ユニット(CPU)、マイクロコントローラー、マイクロプロセッサー、および/またはその他の物理ハードウェア・プロセッサー回路として、1つ以上の物理ハードウェア電気回路のデバイス・エレメントおよび/または集積回路デバイス(半導体材料チップまたはダイ)に実装される電気および/または光回路である。プロセッサー回路1002は、オペレーティング・システム1030、アプリケーション・プログラム1032、他のプログラム1034等のプログラム・コードというような、コンピューター読み取り可能媒体に格納されたプログラム・コードを実行することができる。バス1006は、メモリー・バスまたはメモリー・コントローラー、周辺バス、加速グラフィクス・ポート、および種々のバス・アーキテクチャの内任意のものを使用するプロセッサー・バスまたはローカル・バスを含む、種々の型式のバス構造の内いずれかの1つ以上を表す。システム・メモリー1004は、リード・オンリー・メモリー(ROM)1008およびランダム・アクセス・メモリー(RAM)1010を含む。基本入力/出力システム1012(BIOS)がROM1008に格納されている。
[0113] また、コンピューティング・デバイス1000は、ハード・ディスクから読み出しハード・ディスクに書き込むためのハード・ディスク・ドライブ1014、リムーバブル磁気ディスク1018から読み出しリムーバブル磁気ディスク1018に書き込むための磁気ディスク・ドライブ1016、およびCD ROM、DVD ROM、または他の光媒体のようなリムーバブル光ディスク1022から読み出しリムーバブル光ディスク1022に書き込むための光ディスク・ドライブ1020の内1つ以上を有する。ハード・ディスク・ドライブ1014、磁気ディスク・ドライブ1016、および光ディスク・ドライブ1020は、それぞれ、ハード・ディスク・ドライブ・インターフェース1024、磁気ディスク・ドライブ・インターフェース1026、および光ドライブ・インターフェース1028によって、バス1006に接続されている。これらのドライブおよびその関連するコンピューター読み取り可能媒体は、コンピューター読み取り可能な命令、データー構造、プログラム・モジュール、およびコンピューターについてのその他のデーターの不揮発性格納に対応する(provide)。ハード・ディスク、リムーバブル磁気ディスク、およびリムーバブル光ディスクについて説明したが、フラッシュ・メモリー・カード、ディジタル・ビデオ・ディスク、RAM、ROM、およびその他のハードウェア記憶媒体のような、他の種類のハードウェア・ベースのコンピューター読み取り可能記憶媒体も、データーを格納するために使用することができる。
[0114] ハード・ディスク、磁気ディスク、光ディスク、ROM、またはRAM上には、多数のプログラム・モジュールを格納することができる。これらのプログラムには、オペレーティング・システム1030、1つ以上のアプリケーション・プログラム1032、他のプログラム1034、およびプログラム・データー1036が含まれる。アプリケーション・プログラム1032または他のプログラム1034は、図1のキューイング・システム100、図2のシステム200、図8AのホストUI800A、図8BのゲストUI800Bのような、本明細書において説明した実施形態を、それらのあらゆるコンポーネントおよび/またはサブコンポーネントと共に実装するため、ならびに本明細書において説明したプロットおよびフローチャート/流れ図、および/または本明細書において説明した更に他の例を実施するための、例えば、コンピューター・プログラム・ロジック(例えば、コンピューター・プログラム・コードまたは命令)を含むことができる。
[0115] ユーザーは、キーボード1038およびポインティング・デバイス1040のような入力デバイスを介して、コマンドおよび情報をコンピューティング・デバイス1000に入力することができる。他の入力デバイス(図示せず)には、マイクロフォン、ジョイスティック、ゲーム・パッド、衛星ディッシュ、スキャナー、タッチ・スクリーンおよび/またはタッチ・パッド、音声入力を受けるための音声認識システム、ジェスチャ入力を受けるためのジェスチャ認識システム等を含むことができる。これらおよびその他の入力デバイスは、多くの場合、バス1006に結合されたシリアル・ポート・インターフェース1042を介してプロセッサー回路1002に接続されるが、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス(USB)のような他のインターフェースによって接続されてもよい。
[0116] また、ビデオ・アダプター1046のようなインターフェースを介して、表示画面1044もバス1006に接続されている。表示画面1044は、コンピューティング・デバイス1000の外部にあっても、その中に組み込まれてもよい。表示画面1044は、情報を表示するだけでなく、ユーザー・コマンドおよび/または他の情報を受け取る(例えば、接触、指のジェスチャ、仮想キーボード等によって)ためのユーザー・インターフェースとなることも可能である。表示画面1044に加えて、コンピューティング・デバイス1000はスピーカーおよびプリンターのような他の周辺出力デバイス(図示せず)も含むことができる。
[0117] コンピューティング・デバイス1000は、アダプターまたはネットワーク・インターフェース1050、モデム1052、またはネットワークを通じて通信を確立するための他の手段を介して、ネットワーク1048(例えば、インターネット)に接続される。モデム1052は、内蔵型でも外付け型でもよく、図10に示すように、シリアル・ポート・インターフェース1042を介してバス1006に接続することができ、またはパラレル・インターフェースを含む他の型のインターフェースを使用して、バス1006に接続することもできる。
[0118] 本明細書において使用する場合、「コンピューター・プログラム媒体」、「コンピューター読み取り可能媒体」、および「コンピューター読み取り可能記憶媒体」等の用語は、ハード・ディスク・ドライブ1014に関連付けられたハード・ディスク、リムーバブル磁気ディスク1018、リムーバブル光ディスク1022、RAM、ROM、フラッシュ・メモリー・カード、ディジタル・ビデオ・ディスク、zipディスク、MEM、ナノテクノロジー・ベースの記憶デバイスというような他の物理ハードウェア媒体、および更に別の型式の物理/有形ハードウェア記憶媒体(図10のメモリー1020を含む)というような、物理ハードウェア媒体を指すために使用される。このようなコンピューター読み取り可能媒体および/または記憶媒体は、通信媒体および伝搬信号から区別され、これらとは重なり合わない(通信媒体および伝搬信号を含まない)。通信媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターを、搬送波のような変調データー信号内に具体化する。「変調データー信号」という用語は、その特性の内1つ以上が、信号内に情報をエンコードするような方法で設定または変更された信号を意味する。一例として、そして限定ではなく、通信媒体は、音響、RF、赤外線、およびその他のワイヤレス媒体というようなワイヤレス媒体と、有線媒体とを含む。また、実施形態は、コンピューター読み取り可能記憶媒体を対象とする実施形態とは別であり、それらと重複しない、このような通信媒体も対象とする。
[0119] 先に注記したように、コンピューター・プログラムおよびモジュール(アプリケーション・プログラム1032および他のプログラム1034を含む)は、ハード・ディスク、磁気ディスク、光ディスク、ROM、RAM、またはその他のハードウェア記憶媒体上に格納することができる。このようなコンピューター・プログラムは、ネットワーク・インターフェース1050、シリアル・ポート・インターフェース1042、または任意の他の型式のインターフェースを介して受信することもできる。このようなコンピューター・プログラムは、アプリケーションによって実行またはロードされると、コンピューティング・デバイス1000が、本明細書において論じた実施形態の機能(features)を実現することを可能にする。したがって、このようなコンピューター・プログラムは、コンピューティング・デバイス1000のコントローラーを表す。
[0120] また、実施形態は、任意のコンピューター読み取り可能媒体またはコンピューター読み取り可能記憶媒体上に格納されたコンピューター・コードまたは命令を含むコンピューター・プログラム製品も対象とする。このようなコンピューター・プログラム製品は、ハード・ディスク・ドライブ、光ディスク・ドライブ、メモリー・デバイス・パッケージ、携帯用メモリー・スティック、メモリー・カード、およびその他の型式の物理ストレージ・ハードウェアを含む。
IV.更に他の例および利点
[0121] 以上で説明したように、本明細書における技法を具体化したシステムおよびデバイスは、それらのそれぞれの機能を実行するために、種々の方法で構成し機能させる(enable)することができる。実施形態では、本明細書において説明したフローチャートおよび/または流れ図のいずれも、そのステップまたは動作の内1つ以上を実行しなくてもよい場合もある。更に、本明細書において説明したいずれのフローチャートおよび/または流れ図においても、それらのステップまたは動作に加えて、もしくはその代わりに、ステップまたは動作を実行してもよい。更に、例では、本明細書において説明したフローチャートおよび/または流れ図のいずれでも、その1つ以上の動作が、代わりのシーケンスでは、異なる順序で実行されても、あるいは互いにまたは他の動作と部分的に(または完全に)同時に実行されてもよい。
[0122] 以上の章において説明した実施形態は、例えば、タイトルと関連付けられた仮想またはオンライン・ロビーにおいて、他のユーザーによって視聴されるタイトルをストリーミングしているストリーマー/ホスト・ユーザーのコンテキストで説明することができるが、実施形態は、視聴のためにストリーミングされるのではないゲームをプレーするために、仮想的な場所またはオンライン上の場所で、例えば、友人のグループと「会合する」ユーザーのグループにも適用することができる。例えば、4人または8人のプレーヤーが同時に参加することを許容するマルチプレーヤー・ゲーム・セッションを、友人のグループとプレーすることを望むユーザーによって作成しホストすることができる。ホスト・ユーザーを含む友人のグループが、ゲームに許される参加者の数を超えたとき、本明細書において説明したセッション追跡および自動キューイングの管理の実施形態は、このようなシナリオにも等しく適用可能である。
[0123] 説明した実施形態は、ユーザーの体験および彼らのクライアント・デバイスの性能(中央システムによる機能の処理効率向上による電力消費および処理サイクル過剰負担の低減というような)を向上させ、それらの間のネットワークの負荷を改善するだけでなく、ゲーム/ストリーミング・サービス・システム/プラットフォームの性能も向上させる。また、本明細書において説明したタイトルのシームレスな統合により、タイトル開発者のコンピューティング・リソース利用も減少する(例えば、開発時間の短縮、開発処理サイクルの削減)。加えて、本明細書におけるセッション・キューイング・システムおよびデバイスが中央に配置されることにより、ゲーム/ストリーム・セッション参加に対して動的に構成変更可能なキュー管理を提供し、特定のストリーマー・ホストの好みおよび彼らがストリーミングするタイトルにしたがって、ストリーマー毎にカスタム化する。尚、「中央に配置された」(centrally-located)システムとは、異なる地理的領域において、説明した実施形態を効率的に促進するように構成された、地理的に多様なコンポーネント(例えば、サーバー、データー・センター等)を含んでもよい、即ち、「中央に配置された」とは、説明した実施形態の機能および実施態様、および/またはシステムの物理位置を記述するとしてよいことは注記してしかるべきである。説明した永続接続によって、リアル・タイムのキュー・ステータス更新が可能になり、更に、ストリーマー/ホストが監視することなく、キューを自動的に管理する機能(ability)も提供する(例えば、応答がない場合またはストリーム/ロビーを離れた場合、ユーザーをキューから退出させる)。このように、セッションに加入するために待つ時間、およびセッションに加入するためのユーザー・インタラクションの複雑さは、セッション参加のための自動キューの効率的な管理および処理によって大幅に低減され、ホスト/ストリーマーおよびクライアント・デバイスにおける処理要件、サービス・プラットフォーム自体を削減し、更にネットワーク・トラフィックを減少させる。即ち、セッション加入を求める要求を提出したユーザーをキューに入れ、セッションの開始を決定し、次いでキューに入れられたユーザーから所定数をセッションに自動的に挿入してアクティブ・セッションを開始する機能を管理することによって、クライアント・デバイスおよびサービス・プラットフォームに必要な処理を削減し、それらの間で必要なネットワーク通信を大幅に削減する。加えて、以前のアクティブ・セッションの完了を判定し、完了に基づいて、そしてキューに入れられたユーザーから所定数をセッションに自動的に挿入する前に、以前のアクティブ・セッションの全てのゲスト・プレーヤーを自動的に退出させることによって、更に、本明細書において説明したように、キュー管理の処理効率を高め、ネットワーク通信を更に削減する。同様に、ゲスト・プレーヤーの退出に応答して、終了したセッションの1人以上の退出ゲスト・プレーヤーを再度キューに自動的に入れ、アクティビティ・グループを離れたユーザーの内任意の者をキューから自動的に削除するというような管理によって、更にキューイング効率を高め、キューイング効率および動作を改善し、これによってセッション参加に良い影響が得られる。
[0124] 更に、説明した実施形態は、例えば、クラウド・ベースの実施態様において、セッション追跡および自動キューイングの管理によるオンライン・コンテンツ・ストリームまたはアクティビティへの参加促進(improve)のためのソフトウェア実施態様には存在しない。
[0125] 更にまた、リアル・タイム・キュー・ステータス情報が、ストリーミング中にストリーマー/ホストに自動的に供給され、更に、追加の入力を要せずに、キューに入れられたユーザーにも、コンテンツ・ストリーミングを視聴している間および/またはセッション参加を待っている間に、ゲストUIを通じて供給され、しかるべき時点において、例えば、セッションの開始が決定されたときに、ユーザーをキューからセッションに自動的に挿入し、こうしてUI機能および体験を向上させる。加えて、ストリーマー/ホスト・ユーザーは、ホストUIを通じて、セッションが自動的に繰り返すに連れて、キュー・ステータスを見ることができ、ストリーマー/ホストがセッション参加およびストリーミングを連続的に監視することが可能になる。
[0126] また、本明細書では、セッション参加および/または実行(performance)を、ストリーミングされたタイトルおよび/または使用されたゲーム/ストリーミング・サービスもしくはプラットフォームと関連付けられた報償サービスにリンクしてもよいことも考えられる。報償は、限定ではなく、バッジ、スキン(skin)、ゲーム内アイテム、体験ポイント、ゲーム内ロック解除(in-game unlock)等を含むことができる。
[0127] この章において説明した更に他の例および実施形態は、本開示の他のいずれの章または副章に開示されている例にも適用可能なのはもっともである。
[0128] ここでは、セッション・キューイング・システムについて記載する。セッション・キューイング・システムは、本明細書において説明したように、セッション追跡および自動キューイングの管理によって、オンライン・コンテンツ・ストリームまたはアクティビティへの参加を促すために、種々の方法で構成し機能させることができる。セッション・キューイング・システムは、1つ以上のプロセッサーと、プロセッサーによって実行されるプログラム・コードを格納する1つ以上のメモリーとを含む。プログラム・コードは、聴衆マネージャ、キュー・マネージャ、およびセッション・マネージャを含む。聴衆マネージャは、ユーザーをアクティビティ・グループに含ませることによって、ユーザーをホスト・プレーヤーのアクティビティ(例えば、ゲームまたはビデオ・ストリーム)と関連付けるように構成される。キュー・マネージャは、アクティビティ・グループにおけるユーザーの少なくとも部分集合から、アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受けるように構成され、セッションは、ホスト・プレーヤーとのアクティビティへの参加、およびセッションに加入する要求を提出したユーザーをキューに入れることを含む。セッション・マネージャは、セッションの開始を決定し、キューに入れられたユーザーから所定数をセッションに自動的に挿入して、アクティブ・セッションを開始するように構成される。
[0129] セッション・キューイング・システムの一実施形態では、セッション・マネージャは、アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡し、以前のアクティブ・セッションの完了に基づいて、開始を決定するように構成される。
[0130] セッション・キューイング・システムの一実施形態では、セッション・マネージャは、以前のアクティブ・セッションの完了を判定し、完了に基づいて、キューに入れられたユーザーの内所定数をセッションに自動的に挿入する前に、以前のアクティブ・セッションのゲスト・プレーヤーを全て自動的に退出させるように構成される。
[0131] セッション・キューイング・システムの一実施形態では、セッション・マネージャは、キューに入れられたユーザーの内所定数に、彼らのセッションへの挿入の通知を出し、この通知に対応する応答を受信し、対応する応答に基づいて、キューに入れられたユーザーの内所定数をセッションに自動的に挿入するように構成される。
[0132] セッション・キューイング・システムの一実施形態では、キュー・マネージャは、ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れる動作、アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除する動作、またはユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付ける動作の内1つ以上の実行するように構成される。
[0133] セッション・キューイング・システムの一実施形態では、プログラム・コードは、更に、アクティビティ・グループに入っているユーザーにゲストUIを供給するように構成されたゲスト・ユーザー・インターフェース(UI)プロバイダーを含む。ゲストUIは、選択可能なオブジェクトであって、アクティブ化されると、ビデオ・ストリームのセッションに加入する要求を出す、選択可能なオブジェクト、ユーザーの許可を確認するように構成された資格証明書部分、ユーザーのキュー位置の指示、またはユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指示の内少なくとも1つを含む。
[0134] セッション・キューイング・システムの一実施形態では、プログラム・コードは、更に、ホストUIをホスト・プレーヤーに供給するように構成されたホスト・ユーザー・インターフェース(UI)プロバイダーを含み、ホストUIは、選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーにゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、アクティビティ・グループにおいて、ビデオ・ストリームのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、またはアクティビティ・グループに入っているユーザーに、ビデオ・ストリームのセッションに加入するためのキューイングにおいて、優先順位を付ける基になる(by which)資格証明書を指定する第2の構成変更可能なオブジェクトの内少なくとも1つを含む。
[0135] また、処理システム上で実行するセッション・キューイング方法についても記載する。この方法は、本明細書において説明したように、セッション追跡および自動キューイングの管理によって、オンライン・コンテンツ・ストリームまたはアクティビティへの参加を促す。この方法は、アクティビティ・グループにおけるユーザーの少なくとも部分集合から、アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受けるステップであって、セッションがホスト・プレーヤーとのアクティビティへの参加を含む、ステップと、セッション加入を求める要求を提出したユーザーをキューに入れるステップとを含む。また、この方法は、セッションの開始を決定するステップと、キューに入れられたユーザーの内所定数をセッションに自動的に挿入し、アクティブ・セッションを開始するステップとを含む。
[0136] 一実施形態では、この方法は、更に、アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡するステップと、以前のアクティブ・セッションの完了に基づいて、開始を決定するステップとを含む。
[0137] 一実施形態では、この方法は、更に、以前のアクティブ・セッションの完了を判定するステップと、完了に基づいて、キューに入れられたユーザーの内所定数をセッションに自動的に挿入する前記ステップの前に、以前のアクティブ・セッションのゲスト・プレーヤー全てを自動的に退出させるステップとを含む。
[0138] 一実施形態では、この方法は、更に、ユーザーの内キューに入れられた数のユーザーに、セッションへの挿入についての通知を出すステップと、この通知に対して対応する応答を受信するステップと、対応する応答にも基づいて、ユーザーの内キューに入れられた数のユーザーをセッションに自動的に挿入するステップとを含む。
[0139] 一実施形態では、この方法は、更に、ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れるステップ、アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除するステップ、またはユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付けるステップの内少なくとも1つを含む。
[0140] 一実施形態では、この方法は、更に、アクティブ・グループにおけるユーザーの各々にゲスト・ユーザー・インターフェース(UI)を供給するステップを含み、このUIが、選択可能なオブジェクトであって、アクティブ化されると、ビデオ・ストリームのセッションに加入する要求を出す、選択可能なオブジェクト、ユーザーの許可を確認するように構成された資格証明書部分、ユーザーのキュー位置の指示、またはユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指示の内少なくとも1つを含む。
[0141] 一実施形態では、この方法は、更に、ホスト・ユーザー・インターフェース(UI)をホスト・プレーヤーに供給するステップを含み、このUIが、選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーにゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、ビデオ・ストリームのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、またはビデオ・ストリームのセッションに加入するためのキューイングにおいて、ユーザーに優先順位を付ける基になる(by which)資格証明書を指定する第2の構成変更可能なオブジェクトの内少なくとも1つを含む。
[0142] また、ここでは、プログラム命令が記録されたコンピューター読み取り可能媒体も提供する。プログラム命令が処理デバイスによって実行されると、セッション・キューイング方法を実行する。この方法は、本明細書において説明したように、セッション追跡および自動キューイングの管理によってオンライン・コンテンツ・ストリームまたはアクティビティへの参加を促す。この方法は、ユーザーをアクティブ・グループに含ませることによって、ホスト・プレーヤーのアクティビティとユーザーを関連付けるステップと、アクティビティ・グループにおけるユーザーの少なくとも部分集合から、アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受けるステップであって、セッションが、ホスト・プレーヤーとのアクティビティへの参加を含む、ステップとを含む。また、この方法は、セッションに加入する要求を提出したユーザーをキューに入れるステップと、セッションの開始を決定するステップと、キューに入れられたユーザーの内所定数をセッションに自動的に挿入し、アクティブ・セッションを開始するステップも含む。
[0143] コンピューター読み取り可能媒体の一実施形態では、この方法は、更に、アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡するステップと、以前のアクティブ・セッションの完了に基づいて、開始を決定するステップとを含む。
[0144] コンピューター読み取り可能媒体の一実施形態では、この方法は、更に、以前のアクティブ・セッションの完了を判定するステップと、完了に基づいて、キューに入れられたユーザーの内所定数をセッションに自動的に挿入する前記ステップの前に、以前のアクティブ・セッションのゲスト・プレーヤー全てを自動的に退出させるステップとを含む。
[0145] コンピューター読み取り可能媒体の一実施形態では、この方法は、更に、ユーザーの内キューに入れられた数のユーザーに、セッションへの挿入についての通知を出すステップと、この通知に対して対応する応答を受信するステップと、対応する応答にも基づいて、ユーザーの内キューに入れられた数のユーザーをセッションに自動的に挿入するステップとを含む。
[0146] コンピューター読み取り可能媒体の一実施形態では、この方法は、更に、ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れるステップ、アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除するステップ、またはユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付けるステップの内少なくとも1つを含む。
[0147] コンピューター読み取り可能媒体の一実施形態では、この方法は、更に、アクティブ・グループにおけるユーザーにゲスト・ユーザー・インターフェース(UI)を供給するステップを含み、このゲストUIが、選択可能なオブジェクトであって、アクティブ化されると、ビデオ・ストリームのセッションに加入する要求を出す、選択可能なオブジェクト、ユーザーの許可を確認するように構成された資格証明書部分、ユーザーのキュー位置の指示、またはユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指示の内少なくとも1つを含む。この実施形態では、この方法は、更に、ホスト・ユーザー・インターフェース(UI)をホスト・プレーヤーに供給するステップを含み、このホストUIが、選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーの各々にゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、アクティビティ・グループにおいて、ビデオ・ストリームのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、またはアクティビティ・グループに入っている1人以上のユーザーに、ビデオ・ストリームのセッションに加入するためのキューイングにおいて、優先順位を付ける基になる(by which)資格証明書を指定する第2の構成変更可能なオブジェクトの内少なくとも1つを含む。
V.結論
[0148] 以上、本開示の主題の種々の実施形態について説明したが、これらは例として提示されたに過ぎず限定ではないことは理解されてしかるべきである。尚、添付する特許請求の範囲において定められる通りの、これらの実施形態の主旨および範囲から逸脱することなく、形態および詳細において種々の変更を行えることは、関連技術(1つまたは複数)において習熟した当業者には理解されよう。したがって、開示した主題の広さ(breadth)および範囲は、前述した例示的な実施形態のいずれによっても限定されず、以下の特許請求の範囲およびその均等のみにしたがって定められてしかるべきである。

Claims (20)

  1. セッション・キューイング・システムであって、
    プロセッサーと、
    前記プロセッサーによって実行されるプログラム・コードを格納するように構成されたメモリー
    を備え、前記プログラム・コードが、
    ユーザーをアクティビティ・グループに含ませることによって、ホスト・プレーヤーのアクティビティと前記ユーザーとを関連付けるように構成された聴衆マネージャと、
    キュー・マネージャであって、
    前記アクティビティ・グループにおける前記ユーザーの少なくとも部分集合から、前記アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受け、前記セッションが、前記ホスト・プレーヤーとのアクティビティへの参加を含み、
    前記セッションに加入する要求を提出した前記ユーザーを、前記ユーザーが前記要求を提出した順序でキューに入れ
    ように構成されキュー・マネージャと、
    セッション・マネージャであって、
    前記セッションの開始を決定し、
    前記キューからユーザーの第1の組を前記セッションに自動的に挿入しアクティブ・セッションを開始し、前記第1の組のユーザーの数は前記アクティビティに対応し、前記第1の組は、最も早く前記キューに追加されたユーザーを含み
    前記アクティブ・セッションの終了を決定し、
    ユーザーの前記第1の組を前記アクティブ・セッションから自動的に退出させ、
    記キューからユーザーの第2の組を前記セッションに自動的に挿入して第2のアクティブ・セッションを開始し、前記第2の組のユーザーの数は前記アクティビティに対応し、前記第2の組は、前記第1の組に続いて前記キューに追加されたユーザーを含む
    ように構成されセッション・マネージャ
    を含む、セッション・キューイング・システム。
  2. 請求項1記載のセッション・キューイング・システムにおいて、前記セッション・マネージャが、
    前記アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡し、
    以前のアクティブ・セッションの完了に基づいて、開始を決定す
    ように構成される、セッション・キューイング・システム。
  3. 請求項2記載のセッション・キューイング・システムにおいて、前記セッション・マネージャが、
    以前のアクティブ・セッションの完了を判定し、
    前記完了に基づいてユーザーの前記第1の組前記セッションに自動的に挿入する前に、以前のアクティブ・セッションのゲスト・プレーヤーを全て自動的に退出させ
    ように構成される、セッション・キューイング・システム。
  4. 請求項1記載のセッション・キューイング・システムにおいて、前記セッション・マネージャが、
    ユーザーの前記第1の組に、彼らの前記セッションへの挿入の通知を出し、
    前記通知に対応する応答を受信し、
    前記対応する応答に基づいて、ユーザーの前記第1の組を前記セッションに自動的に挿入す
    ように構成される、セッション・キューイング・システム。
  5. 請求項1記載のセッション・キューイング・システムにおいて、前記キュー・マネージャが、
    ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れる動作、
    アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除する
    動作、または、
    前記ユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付ける動
    の内1つ以上実行するように構成される、セッション・キューイング・システム。
  6. 請求項1記載のセッション・キューイング・システムにおいて、前記プログラム・コードが、更に、
    アクティビティ・グループに入っているユーザーにゲストUIを供給するように構成されたゲスト・ユーザー・インターフェース(UI)プロバイダー
    を含み、前記ゲストUIが、
    選択可能なオブジェクトであって、アクティブ化されると、前記アクティビティのセッションに加入する要求を出す、選択可能なオブジェクト、
    ユーザーの許可を確認するように構成された資格証明書部分、
    ユーザーのキュー位置の指示、または、
    ユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指
    の内少なくとも1つ
    を含む、セッション・キューイング・システム。
  7. 請求項1記載のセッション・キューイング・システムにおいて、前記プログラム・コードが、更に、
    ホストUIをホスト・プレーヤーに供給するように構成されたホスト・ユーザー・インターフェース(UI)プロバイダー
    を含み、前記ホストUIが、
    選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーにゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、
    アクティビティ・グループにおいて、前記アクティビティのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、または、
    アクティビティ・グループに入っているユーザーに、前記アクティビティのセッションに加入するためのキューイングにおいて、優先順位を付ける基になる資格証明書を指定する第2の構成変更可能なオブジェク
    の内少なくとも1つ
    を含む、セッション・キューイング・システム。
  8. 処理システム上で実行するセッション・キューイング方法であって、
    アクティビティ・グループにおけるユーザーの少なくとも部分集合から、アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受けるステップであって、前記セッションが、ホスト・プレーヤーとのアクティビティへの参加を含む、ステップと、
    セッションに加入する要求を提出したユーザーを、前記ユーザーが前記要求を提出した順序でキューに入れるステップと、
    セッションの開始を決定するステップと、
    前記キューからユーザーの第1の組をセッションに自動的に挿入しアクティブ・セッションを開始するステップであって、前記第1の組のユーザーの数は前記アクティビティに対応し、前記第1の組は、最も早く前記キューに追加されたユーザーを含む、ステップと、
    前記アクティブ・セッションの終了を決定するステップと、
    ユーザーの前記第1の組を前記アクティブ・セッションから自動的に退出させるステップと、
    前記キューからユーザーの第2の組を、前記セッションに自動的に挿入して第2のアクティブ・セッションを開始するステップであって、前記第2の組のユーザーの数は前記アクティビティに対応し、前記第2の組は、前記第1の組に続いて前記キューに追加されたユーザーを含む、ステップと
    を含方法。
  9. 請求項8記載のセッション・キューイング方法であって、更に、
    アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡するステップと、
    以前のアクティブ・セッションの完了に基づいて、開始を決定するステップと
    を含方法。
  10. 請求項9記載のセッション・キューイング方法であって、更に、
    前記以前のアクティブ・セッションの完了を判定するステップと、
    前記完了に基づいて、ユーザーの前記第1の組をセッションに自動的に挿入する前記ステップの前に、前記以前のアクティブ・セッションのゲスト・プレーヤー全てを自動的に退出させるステップと
    を含方法。
  11. 請求項8記載のセッション・キューイング方法であって、更に、
    ユーザーの前記第1の組に、セッションへの挿入についての通知を出すステップと、
    前記通知に対して対応する応答を受信するステップと、
    前記対応する応答にも基づいて、ユーザーの前記第1の組をセッションに自動的に挿入するステップ
    を含方法。
  12. 請求項8記載のセッション・キューイング方法であって、更に、
    ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れるステップ、
    アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除するステップ、または、
    前記ユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付けるステッ
    の内少なくとも1つを含方法。
  13. 請求項8記載のセッション・キューイング方法であって、更に、
    アクティブ・グループにおけるユーザーの各々にゲスト・ユーザー・インターフェース(UI)を供給するステップ
    を含み、前記UIが、
    選択可能なオブジェクトであって、アクティブ化されると、前記アクティビティのセッションに加入する要求を出す、選択可能なオブジェクト、
    ユーザーの許可を確認するように構成された資格証明書部分、
    ユーザーのキュー位置の指示、または、
    ユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指
    の内少なくとも1つ
    を含む、方法。
  14. 請求項8記載のセッション・キューイング方法であって、更に、
    ホスト・ユーザー・インターフェース(UI)を前記ホスト・プレーヤーに供給するステップ
    を含み、前記UIが、
    選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーにゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、
    前記アクティビティのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、または、
    前記アクティビティのセッションに加入するためのキューイングにおいて、ユーザーに優先順位を付ける基になる資格証明書を指定する第2の構成変更可能なオブジェクト、
    の内少なくとも1つ
    を含む、方法。
  15. 処理デバイスにセッション・キューイングのための方法を実行させるプログラム命令が記録されたコンピューター読み取り可能媒体であって、前記方法は
    ユーザーをアクティビティ・グループに含ませることによって、ホスト・プレーヤーのアクティビティと前記ユーザーとを関連付けるステップと、
    前記アクティビティ・グループにおける前記ユーザーの少なくとも部分集合から、前記アクティビティのセッションにゲスト・プレーヤーとして加入する要求を受けるステップであって、前記セッションが、前記ホスト・プレーヤーとのアクティビティへの参加を含む、ステップと、
    前記セッションに加入する要求を提出した前記ユーザーを、前記ユーザーが前記要求を提出した順序でキューに入れるステップと、
    前記セッションの開始を決定するステップと、
    前記キューからユーザーの第1の組前記セッションに自動的に挿入してアクティブ・セッションを開始するステップであって、前記第1の組のユーザーの数は前記アクティビティに対応し、前記第1の組は、最も早く前記キューに追加されたユーザーを含む、ステップと、
    前記アクティブ・セッションの終了を決定するステップと、
    ユーザーの前記第1の組を前記アクティブ・セッションから自動的に退出させるステップと、
    前記キューからユーザーの第2の組を前記セッションに自動的に挿入して第2のアクティブ・セッションを開始するステップであって、前記第2の組のユーザーの数は前記アクティビティに対応し、前記第2の組は、前記第1の組に続いて前記キューに追加されたユーザーを含む、ステップと
    を含む、コンピューター読み取り可能媒体。
  16. 請求項15記載のコンピューター読み取り可能媒体であって、前記方法は、更に、
    アクティブ・セッションの前に行われた以前のアクティブ・セッションを追跡するステップと、
    以前のアクティブ・セッションの完了に基づいて、開始を決定するステップと
    を含む、コンピューター読み取り可能媒体。
  17. 請求項16記載のコンピューター読み取り可能媒体であって、前記方法は、更に、
    前記以前のアクティブ・セッションの完了を判定するステップと、
    前記完了に基づいて、ユーザーの第1の組をセッションに自動的に挿入する前記ステップの前に、前記以前のアクティブ・セッションのゲスト・プレーヤー全てを自動的に退出させるステップと
    を含む、コンピューター読み取り可能媒体。
  18. 請求項15記載のコンピューター読み取り可能媒体であって、前記方法は、更に、
    ユーザーの前記第1の組に、セッションへの挿入についての通知を出すステップと、
    前記通知に対して対応する応答を受信するステップと、
    前記対応する応答にも基づいて、ユーザーの前記第1の組をセッションに自動的に挿入するステップ
    を含む、コンピューター読み取り可能媒体。
  19. 請求項15記載のコンピューター読み取り可能媒体であって、前記方法は、更に、
    ゲスト・プレーヤーの退出に応答して、終了したセッションから退出させられた1人以上のゲスト・プレーヤーを自動的にキューに入れるステップ、
    アクティビティ・グループから離れたユーザーをいずれもキューから自動的に削除するステップ、または、
    前記ユーザーの特性に基づいて、ユーザーのキューイングに優先順位を付けるステッ
    の内少なくとも1つを含む、コンピューター読み取り可能媒体
  20. 請求項15記載のコンピューター読み取り可能媒体であって、前記方法は、更に、
    アクティブ・グループにおけるユーザーゲスト・ユーザー・インターフェース(UI)を供給するステップであって、前記ゲストUIが
    選択可能なオブジェクトであって、アクティブ化されると、前記アクティビティのセッションに加入する要求を出す、選択可能なオブジェクト、
    ユーザーの許可を確認するように構成された資格証明書部分、
    ユーザーのキュー位置の指示、または、
    ユーザーがゲスト・プレーヤーとして参加するアクティブ・セッションの初期化に対するアラート指
    の内少なくとも1つを含む、ステップと、
    ホストUIを前記ホスト・プレーヤーに供給するステップであって、前記ホストUIが、
    選択可能なオブジェクトであって、アクティブ化されると、アクティビティ・グループに入っているユーザーの各々にゲストUIを供給させるセッション・モードを開始させる、選択可能なオブジェクト、
    前記アクティブ・グループにおける前記アクティビティのセッションに加入する適格性があるユーザーに対して資格証明書を指定する第1の構成変更可能なオブジェクト、または、
    前記アクティビティのセッションに加入するためのキューイングにおいて、前記アクティビティ・グループにおける1以上のユーザーに優先順位を付ける基になる資格証明書を指定する第2の構成変更可能なオブジェクト
    の内少なくとも1つを含む、ステップと
    を含む、コンピューター読み取り可能媒体
JP2021500953A 2018-07-12 2019-06-19 オンライン・マルチプレーヤー・セッションへの参加を促すシステムおよび方法 Active JP7369176B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/034,023 US11020671B2 (en) 2018-07-12 2018-07-12 System and method for enhancing participation in online multiplayer sessions
US16/034,023 2018-07-12
PCT/US2019/037838 WO2020013963A1 (en) 2018-07-12 2019-06-19 System and method for enhancing participation in online multiplayer sessions

Publications (2)

Publication Number Publication Date
JP2021531086A JP2021531086A (ja) 2021-11-18
JP7369176B2 true JP7369176B2 (ja) 2023-10-25

Family

ID=67211885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021500953A Active JP7369176B2 (ja) 2018-07-12 2019-06-19 オンライン・マルチプレーヤー・セッションへの参加を促すシステムおよび方法

Country Status (6)

Country Link
US (2) US11020671B2 (ja)
EP (1) EP3820582B1 (ja)
JP (1) JP7369176B2 (ja)
KR (1) KR20210030354A (ja)
CN (1) CN112399878A (ja)
WO (1) WO2020013963A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016073035A1 (en) 2014-11-05 2016-05-12 Super League Gaming, Inc. Game system
CN108769823B (zh) * 2018-05-28 2019-05-28 广州虎牙信息科技有限公司 直播间显示方法、装置、设备
WO2019240811A1 (en) * 2018-06-15 2019-12-19 Google Llc Methods, systems, and media for coordinating multiplayer game sessions
US11020671B2 (en) * 2018-07-12 2021-06-01 Microsoft Technology Licensing, Llc System and method for enhancing participation in online multiplayer sessions
US11260295B2 (en) * 2018-07-24 2022-03-01 Super League Gaming, Inc. Cloud-based game streaming
US11032329B2 (en) * 2019-01-29 2021-06-08 Fanmio, Inc. Managing engagements in interactive multimedia sessions
GB2579603A (en) * 2018-12-05 2020-07-01 Sony Interactive Entertainment Inc Method and system for generating a recording of video game gameplay
WO2020153232A1 (ja) * 2019-01-24 2020-07-30 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理装置の制御方法、及びプログラム
US11159595B2 (en) * 2019-02-20 2021-10-26 Sony Interactive Entertainment LLC Contextual layer for digital content
US11405347B1 (en) * 2019-05-31 2022-08-02 Meta Platforms, Inc. Systems and methods for providing game-related content
US10979481B2 (en) * 2019-08-05 2021-04-13 Surya Jayaweera System and method for dynamically expanding conferencing capabilities and facilitating on demand transactions within social network environments
CN111818348B (zh) * 2019-12-25 2021-08-24 厦门雅基软件有限公司 直播互动方法、装置、电子设备和计算机可读存储介质
US11621962B2 (en) * 2020-07-14 2023-04-04 Microsoft Technology Licensing, Llc Video signaling for user validation in online join scenarios
US11614795B2 (en) * 2020-12-11 2023-03-28 International Business Machines Corporation Co-evolved user experience orchestrator
CN114764362A (zh) * 2021-01-15 2022-07-19 北京达佳互联信息技术有限公司 一种虚拟资源获取方法、装置、电子设备及存储介质
EP4298785A1 (en) * 2021-02-25 2024-01-03 9337-0286 Quebec Inc. (Auger Groupe Conseil) Systems and methods for virtual interaction
US11228436B1 (en) * 2021-05-26 2022-01-18 Gregory Edward Foley Pixel streamed NFT-based living artwork and queue-based live event viewing
KR102383371B1 (ko) 2021-07-22 2022-04-08 주식회사 에이치엠씨네트웍스 하드웨어 리소스 프로비저닝 최적화 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
CN113573146B (zh) * 2021-07-22 2024-03-12 北京百度网讯科技有限公司 主播互动方法、装置、设备、存储介质和程序产品
KR102628191B1 (ko) 2021-09-01 2024-01-23 주식회사 에이치엠씨네트웍스 프로세스 차등화 결과에 따른 하드웨어 리소스 할당 방법 및 그 방법이 적용된 온라인 서비스 제공 방법
US20230071358A1 (en) * 2021-09-07 2023-03-09 Nvidia Corporation Event information extraction from game logs using natural language processing
CN114710684B (zh) * 2022-03-02 2023-11-17 百果园技术(新加坡)有限公司 一种直播间连麦方法、装置、设备及存储介质
KR20230168320A (ko) 2022-06-07 2023-12-14 (주)소셜인프라테크 이종 메타버스 상호 간 캐릭터 브릿지 시스템

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006124922A3 (en) 2005-05-17 2007-11-01 Super Comp Internat Collaborative online gaming system and method
JP2011092623A (ja) 2009-11-02 2011-05-12 Copcom Co Ltd コンピュータプログラム、記録媒体、及びゲーム装置
JP2014238736A (ja) 2013-06-07 2014-12-18 ソニー株式会社 情報処理システム
JP2015127900A (ja) 2013-12-27 2015-07-09 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、サーバシステムおよび情報処理システム
US20170282082A1 (en) 2015-05-29 2017-10-05 ATTAQ Online, Inc. Automated tournament platform for online video games
US20170296929A1 (en) 2016-04-13 2017-10-19 Roblox Corporation User-Controlled, On-Demand Gaming Channel

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6842761B2 (en) 2000-11-21 2005-01-11 America Online, Inc. Full-text relevancy ranking
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US20120254764A1 (en) 2011-04-01 2012-10-04 Yahoo! Inc. System to suggest and automatically organize events for social activities
US20130268592A1 (en) 2012-04-06 2013-10-10 Gface Gmbh Content-aware persistent user room
US10051051B2 (en) 2012-06-29 2018-08-14 Verizon Patent And Licensing Inc. Online community based peer-to-peer media streaming systems and methods
SG196699A1 (en) 2012-07-30 2014-02-13 Playfiks Softwares Private Ltd Sports networking platform
US9961119B2 (en) 2014-04-22 2018-05-01 Minerva Project, Inc. System and method for managing virtual conferencing breakout groups
US9100629B1 (en) * 2014-06-09 2015-08-04 Kino Llc System and method for arranging and presenting interactive preshow sessions to an audience
US10034036B2 (en) 2015-10-09 2018-07-24 Microsoft Technology Licensing, Llc Media synchronization for real-time streaming
CN114768245A (zh) * 2016-03-15 2022-07-22 思奇里兹平台股份有限公司 用于虚拟排名赛的同步模型
WO2017223210A1 (en) * 2016-06-22 2017-12-28 Proletariat, Inc. Systems, methods and computer readable media for a viewer controller
JP6544864B2 (ja) * 2016-12-15 2019-07-17 任天堂株式会社 ゲームシステム、ゲーム処理方法、情報処理装置、および、情報処理プログラム
US11020671B2 (en) * 2018-07-12 2021-06-01 Microsoft Technology Licensing, Llc System and method for enhancing participation in online multiplayer sessions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006124922A3 (en) 2005-05-17 2007-11-01 Super Comp Internat Collaborative online gaming system and method
JP2011092623A (ja) 2009-11-02 2011-05-12 Copcom Co Ltd コンピュータプログラム、記録媒体、及びゲーム装置
JP2014238736A (ja) 2013-06-07 2014-12-18 ソニー株式会社 情報処理システム
JP2015127900A (ja) 2013-12-27 2015-07-09 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、サーバシステムおよび情報処理システム
US20170282082A1 (en) 2015-05-29 2017-10-05 ATTAQ Online, Inc. Automated tournament platform for online video games
US20170296929A1 (en) 2016-04-13 2017-10-19 Roblox Corporation User-Controlled, On-Demand Gaming Channel

Also Published As

Publication number Publication date
US11794116B2 (en) 2023-10-24
EP3820582A1 (en) 2021-05-19
US11020671B2 (en) 2021-06-01
KR20210030354A (ko) 2021-03-17
CN112399878A (zh) 2021-02-23
US20200016495A1 (en) 2020-01-16
JP2021531086A (ja) 2021-11-18
US20210260489A1 (en) 2021-08-26
WO2020013963A1 (en) 2020-01-16
EP3820582B1 (en) 2022-11-16

Similar Documents

Publication Publication Date Title
JP7369176B2 (ja) オンライン・マルチプレーヤー・セッションへの参加を促すシステムおよび方法
CN112423002B (zh) 一种直播方法及装置
CN109224456B (zh) 直播间游戏组队方法、基于直播的游戏交互系统及服务器
US20230034686A1 (en) Method and apparatus for playing video signal of multi-user interaction, and device
JP7300503B2 (ja) マルチユーザアプリケーションを起動するための招待リンク
US8195809B2 (en) Multigame multiplayer party session
WO2015078310A1 (zh) 题目问答方法、装置及系统
US20190268662A1 (en) System and method for enhancing live video content streams
CN114501104B (zh) 基于直播视频的互动方法、装置、设备、存储介质及产品
CN112203153B (zh) 直播互动方法、装置、设备及可读存储介质
WO2022213287A1 (zh) 直播互动方法、装置、直播服务器、终端及存储介质
US20240039922A1 (en) Method and system for live dating
CN113411652A (zh) 媒体资源播放方法和装置、存储介质及电子设备
CN106232193A (zh) 使用检索到的部分用户数据的游戏进展
JP2022503919A (ja) マルチプレイヤーセッションの確立及び管理
US20140011594A1 (en) Electronic Social Trivia Game and Computer Application and Related Methods
CN105577641B (zh) 用于基于互动记录邀请用户参加活动的系统和方法
US11229850B2 (en) User-controlled, on-demand gaming channel
CN114503534A (zh) 启动多用户会话
US20220394067A1 (en) System and method for facilitating interaction among users at real-time
CN114760531A (zh) 直播间团队互动方法、装置、系统、设备及存储介质
CN113348024B (zh) 建立和管理多玩家会话
CN114866821A (zh) 数据处理方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231013

R150 Certificate of patent or registration of utility model

Ref document number: 7369176

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150