掌桥专利:专业的专利平台
掌桥专利
首页

用于增强在线多玩家会话中的参与的系统和方法

文献发布时间:2023-06-19 09:57:26


用于增强在线多玩家会话中的参与的系统和方法

背景

视频游戏主播(streamer)、内容创建者、游戏玩家和游戏影响者通过与他们的追随者进行互动来获得一部分追随者基础。互动的一种类型是与希望与他们进行互动的他们的追随者一起玩游戏或参与活动(例如,通过观看其媒体流或参与多玩家游戏)。通常,主持或主播可能会向平台上的多个其他玩家和/或观看者发送消息指示他们想玩游戏或以其他方式一起互动,然后手动浏览对该消息的各个体响应,并向响应的观看者/玩家发送至游戏或至聚组(party)的访客玩家邀请来组织群组。假设每个人都接受了他们的邀请,主持/主播将开始游戏(即,使“配对”融入游戏中)。

在一些情况下,游戏可能具有开放的加入能力,其中玩家可追随平台上的主持/主播并加入其开放的游戏大厅。主持/主播的另一选择是在平台上发布寻找群组(LFG)帖子。当观看者申请LFG时,主播可以确认用户集合并将他们聚集到平台聚组中,然后开始游戏。游戏结束后,用户将离开游戏大厅并重新开始,或者他们可以踢出聚组成员从而释放LFG中的位置供主持使用,并手动地确认更多成员进入聚组以再次开始。

发明内容

提供本发明内容以便以简化的形式介绍以下在具体实施方式述中进一步描述的概念的选集。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,亦非旨在用于限制所要求保护的主题的范围。

由系统和装置执行用于增强在线流/活动中的会话参与的方法。用户可以在执行标题的客户端设备上赏玩该标题(例如,视频游戏或其他在线内容)。大量的用户或观众可能希望加入多玩家游戏或观看正在玩的那些标题的实时视频内容流,其从主播客户端设备流传输到观众自己的客户端设备。主播和观众用户可以通过自动排队及其管理来促进会话参与。因此,本文执行用户排队和会话参与的管理。例如,在线内容流/活动中的会话参与通过经由主播客户端设备和访客玩家客户端设备之间的中央系统来管理会话跟踪和玩家的自动排队被增强。观众可经由流服务通过网络观看内容流/游戏(即,通常为活动)并请求被放置在队列中以作为访客玩家与流传输用户一起参与活动的会话。会话可被跟踪以确定开始和结束事件。先前访客玩家集合在会话结束时从会话中被移除或踢出,并且经排队的观众集合将作为访客玩家被自动地添加到内容活动的新会话的开始。排队可基于用户特征和/或凭证为用户自动地进行优先级排序。可对在会话结束时被移除的访客玩家自动地进行重新排队以便参与未来的会话。

下文参考附图详细描述各示例的其他特征和优点以及结构和操作。注意,想法和技术不限于本文所描述的特定实施例。本文呈现这些示例仅用于说明性的用途。基于本文包含的示教,附加的示例对相关领域的技术人员将是显而易见的。

附图说明

合并到本文并构成说明书的一部分的附图例示了本申请的各实施例,并且与说明书一起进一步用于解释各实施例的原理并允许相关领域技术人员实施和使用这些实施例。

图1示出了根据示例实施例的用于通过队列管理来增强会话参与的联网系统的框图。

图2示出了根据示例实施例的用于通过队列管理来增强会话参与的会话排队主机系统的框图。

图3示出了根据示例实施例的用于通过队列管理来增强会话参与的流程图。

图4示出了根据示例实施例的用于通过队列管理来增强会话参与的流程图。

图5示出了根据示例实施例的用于通过队列管理来增强会话参与的流程图。

图6示出了根据示例实施例的用于通过队列管理来增强会话参与的流程图。

图7示出了根据示例实施例的用于通过队列管理来增强会话参与的流程图。

图8A示出了根据示例实施例的用于通过队列管理来增强会话参与的客户端用户界面的框图。

图8B示出了根据示例实施例的用于通过队列管理来增强会话参与的客户端用户界面的框图。

图9示出了可被用来实现各个示例实施例的示例移动设备的框图。

图10示出可用来实现各个实施例的示例计算设备的框图。

当结合其中相同的附图标记标识对应的元素的附图时,各实施例的特征和优点将从以下阐述的详细描述中变得更加显而易见。在附图中,相同的附图标记一般指示等同的、功能上类似的、和/或结构上类似的元素。其中元素第一次出现的附图由对应附图标记中最左侧的(诸)数位来指示。

具体实施方式

I.介绍

下面详细的描述公开了若干实施例。本专利申请的范围不限于所公开的各实施例,而且包括所公开的各实施例的各种组合以及对所公开的各实施例的各种修改。

说明书中对“一个实施例”、“一实施例”、“一示例实施例”等等的提及指示所描述的实施例可包括特定特征、结构或者特性,但是,每一个实施例可不必包括该特定特征、结构或者特性。此外,这些短语不一定指相同的实施例。此外,当结合某一实施例描述特定特征、结构或特性时,不管是否被明确描述,结合其他实施例来实现该特征、结构或特性被认为是在本领域技术人员的知识范围内。

在讨论中,除非另有说明,否则修改本公开的实施例的一个或多个特征的条件或关系特性的诸如“基本上”和“大约”之类的形容词应被理解成是指该条件或特性被限定在对该实施例所意图的应用而言可接受的该实施例的操作的容差以内。

此外,应当理解,本文中使用的空间描述(例如,“上方”、“下方”、“上”、“左”、“右”、“下”、“顶部”、“底部”、“垂直”、“水平”等)仅用于说明的目的,并且本文描述的结构和附图的实际实现可以以任何取向或方式在空间上布置。另外,附图可能未按比例提供,并且附图的元素的取向或组织在各实施例中可能有所不同。

以下描述多个示例性实施例。应当注意,在此提供的任何章节/子章节标题不旨在限制。本文档中描述了各实施例,并且任何类型的实施例可被包括在任何章节/子章节下。此外,在任何章节/子章节中公开的各实施例可与在相同章节/子章节和/或不同章节/子章节中描述的任何其它实施例以任何方式组合。

以下章节II描述了用于通过队列管理增强会话参与的示例实施例。特别地,章节II.A描述了通过队列管理进行会话参与的示例系统,而章节II.B提供了示例用户界面实施例。下文章节III描述了可用于实现本文描述的各实施例的特征的示例移动设备和计算设备实施例。下文章节IV描述了附加的示例和优点,而章节V提供了一些总结性说明。

II.用于通过队列管理来增强会话参与的示例实施例

本文提供了用于通过队列管理来增强会话参与的方法、系统、装置、设备和计算机程序产品。用户或用户群组可能希望与另一用户或用户群组一起玩或参与在线活动会话(诸如视频流或游戏),其中会话容量对于给定活动而言是稀缺的。即,希望玩或参与的用户数量可能超过在任何给定时间可以参与的最大用户数量。因此,由于多玩家体验通常具有有限的玩家位置集合,因此多玩家体验会遇到想要玩的人比被允许进入体验的人更多的场景。无论是与朋友、随机的陌生人、游戏流传输的观众一起玩,还是想与社区的非常重要的人/玩家(VIP)一起玩,都会出现此问题。在主播希望在玩家会话中与其作为访客玩家的受众互动,或者多玩家游戏发起者希望与朋友一起玩游戏的情形中,目前几乎没有什么选项能够处理这种过多的参与者。当游戏结束时,如果主持/主播想要从他们的群组或受众中选择新的访客玩家群组,则主持/主播必须移除当前游戏的所有访客玩家(如果这在此游戏中是可能的),或干脆离开游戏“大厅”并重新开始该过程。这不允许任何类型的优先级被应用于最先加入游戏的观看者/玩家。

通过自动地对向会话参与表现出兴趣的玩家进行排队,并且通过在一段时间和多个会话中在这些用户之间自动地循环,所描述的实施例提供了高效且自动地满足尽可能多的会话参与请求。附加地,在队列中等待的用户处于异步状态,因此他们可以在等待时执行其他操作。因此,所描述的实施例能够经由对玩家的自动排队来进行高效的会话建立和参与。

例如,会话排队服务可以在会话排队系统主机(例如,处理系统或服务器)上执行,会话排队系统主机位于会话主持/主播客户端设备(例如,内容主播、内容创建者、诸如VIP或服务平台人员之类的游戏玩家、游戏影响者等的客户端设备)和希望作为访客玩家参与游戏或流的会话的其他用户的客户端设备之间的网络上。会话排队服务被配置成对其他用户自动地进行排队、将其他用户添加为访客玩家、并移除游戏/内容流会话的访客玩家。位于主持/主播与用户/参与者客户端设备之间的会话排队服务能够接收来自其他用户的加入由主播客户端设备流传输的活动(例如,游戏)的会话的请求,并自动地对客户端设备的用户进行排队并将其作为访客玩家插入会话中。以此方式,会话排队服务能够以因流传输内容的每个实例而异的方式,在由不同的开发者开发的任意数量的标题上集中地管理任意数量的其他用户的会话参与。

例如,正在客户端设备(例如,主播/主持客户端设备)上玩标题的用户可流传输他们的标题游戏,使得此内容流可以由相应客户端设备(例如,访客客户端设备)处的一个或多个其他用户通过网络来观看。其他用户可被允许简单地观看内容流,而在其他情况下,其他用户可被允许观看正在流传输的标题会话并与之交互(例如,在可以是流的预定义或流传输定义部分的会话期间)。即,其他用户可以加入在主播客户端设备上玩标题的用户的标题会话。同样地,此类用户可以加入由主持创建的多玩家游戏实例的大厅中的用户。

所描述的实施例提供了可用于任何数量的不同标题流或游戏(例如,“活动”)的平台级特征,并且通过使参与者自动地集合到会话中提供了好处,包括改善用户体验、降低客户端系统负载、降低网络话务负载等。即,主播/主持用户可发布不需要主持确认参与申请的寻找群组(LFG)消息,从而将他们放入聚组,邀请他们加入游戏,并然后尝试逐会话、逐游戏地重复该过程。根据各实施例,LFG帖子可以因此被用作想要与主播一起参加活动的会话的玩家的先进先出队列。如果标题开发者希望从本文详述的平台将所描述的实施例集成到其标题中,则LFG帖子也可能可供标题开发者访问。即,主播/主持可以创建此活动类型的因游戏而异的LFG。例如,当主播/主持进入游戏时,可提供将LFG聚集到他们的游戏大厅的选项。最初地,用户可请求观看活动的流或加入群组以玩由主播/主持用户玩或发起的多玩家活动(诸如游戏)。会话排队服务或替换地游戏/流传输服务(诸如来自华盛顿州雷蒙德市微软公司的Xbox

因此,所描述的平台特征允许对会话参与的玩家进行高效且无缝的排队和循环,使得主播和参与者减轻了管理该过程所涉及的负担。所描述的实施例可被应用于任何类型的流传输/会话参与场景,以及主持玩家在没有主动流传输的情况下创建游戏会话或活动的多玩家交互场景,包括但不限于:主播想与受众成员一起玩的场景、VIP玩家在社交环境中为游戏会话做广告并需要对参与者用户进行排队的场景、游戏玩家想要与朋友一起玩但朋友的集合超过了活动的游戏大小(即,一些玩家需要排队并等待轮到他们)的场景,有大量成员基础的游戏俱乐部想要组织具有可玩的多个会话的游戏会话的场景等等。

各实施例还允许改进对未集成标题的排队和会话管理。例如,仍通过使用所描述的平台作为虚拟见面场所来形成聚组来向未集成标题的主播/主持提供对改进的游戏/流传输流的访问,其中主播/主持开始从队列顶部接受用户加入聚组的过程。所选择的用户可被自动地包括在聚组中,其中主播/主持能够将整个聚组插入游戏或活动中以参加会话。在会话结束后,因为标题是未集成的,所以主播/主持可执行离开游戏大厅并重新开始的附加步骤,并因此在重复上述聚组过程之前,只需单击主播/主持用户界面的一个按钮即可完成将现有访客玩家从会话中踢出并从队列中选择新的用户集合作为新会话的访客玩家的动作。

将标题与所描述的用于通过队列管理来增强会话参与的实施例的集成实际上是无缝的,并且会话排队服务作为如何对用户进行排队的最小自定义服务来操作。会话排队主机是可缩放的,以便处理针对不同游戏或内容流的大量用户和会话参与者。排队可根据主播/主持偏好来进行优先级排序,例如,基于排队的用户是追随者、是朋友、具有某些标题内属性(包括与用户标题内性能相关的任何类型的统计或信息)、具有订阅、具有观看主播/主持的流传输的相对较高的时长、参加付费项目、获得了一定数量的观看/观赏奖励等等。

换言之,本文公开的各实施例通过队列管理提供经增强的会话参与。这些和进一步的实施例将在下文更详细地描述。

用于通过队列管理进行会话参与的示例系统

在各实施例中,可以以各种方式来配置系统和设备以通过队列管理实现增强的会话参与。例如,图1是根据各实施例的排队系统100的框图。根据各实施例,排队系统100被配置成通过队列管理实现增强的会话参与。如图1所示,排队系统100包括可以通过网络110彼此通信的主播/主持客户端设备102a、访客客户端设备102b、会话排队主机104和标题开发者服务器114。应当注意,任何数量的主播客户端设备、访客客户端设备、以及会话排队主机和/或标题开发者服务器可存在于各种实施例中。附加地,根据各实施例,图1所例示的各组件的任何组合可以存在于排队系统100中。

如上文提及的,主播/主持客户端设备102a、访客客户端设备102b和会话排队主机104以及标题开发者服务器114经由网络110通信地耦合。网络110可以包括连接计算设备和服务器的任何类型的通信链路,诸如但不限于互联网、有线或无线网络及其部分、点对点连接、局域网、企业网络等等。

标题开发者服务器114可包括一个或多个服务器计算机或计算设备,其可以包括一个或多个分布式或“基于云的”的服务器。标题开发者服务器可以被配置成使开发者能够开发和/或发布标题,诸如视频游戏、交互式应用等。因此,标题开发者服务器114或与其相关联的存储可以包括一个或多个标题116。标题116可以包括用于执行和/或支持执行由开发者开发的标题的代码或应用。标题116可被提供以通过本文描述的网络电子地下载到客户端设备,和/或可被编码在计算机可读存储介质上以由客户端设备读取/访问,以执行标题。

会话排队主机104可包括一个或多个服务器计算机或计算设备,其可以包括一个或多个分布式或“基于云的”服务器。在各实施例中,会话排队主机104可以与诸如Xbox

如图所示,会话排队主机104包括会话跟踪器106和会话排队服务108。应注意,在各实施例中,会话跟踪器106可以位于会话排队主机104的远程,诸如在经由网络110通信地连接的用于游戏或流传输服务系统或平台的远程和/或关联系统(为了简洁和说明清楚起见未示出)中。本文还构想,尽管为了简洁和说明清楚起见在图1中仅示出了会话跟踪器106和会话排队服务108的单个实例,但是在各实施例中可以存在这些组件的多个实例。

会话排队主机104被配置成在会话排队服务108处从标题的观赏/观看用户(例如从访客客户端设备102b的UI 112b)接收参与多玩家游戏或标题流的请求。会话排队服务108还被配置成对发出请求的用户/客户端设备进行排队以插入到游戏/流的会话中,并且将经排队的用户的集合插入到游戏/流的会话中。因此,会话排队服务108被配置成作为服务(例如,LFG服务)来操作,以促进群组形成和其涉及的会话参与。来自观赏/观看用户的参与游戏/标题流的请求可由会话排队服务108在主播/主持客户端设备102a的主播/主持用户激活或启用排队之前或之后接收。例如,当流传输标题时,主播/主持用户可以例如经由UI 112a注意到正接收到许多观众用户参与流的会话的请求,并且用于插入到游戏/流的会话中的对观众的排队可随后由主播/主持用户激活。在此类情况下,会话排队服务108可被配置成跟踪发出请求的观众和其各个请求在被排队之前的顺序,使得当主播/主持启用排队时FIFO排序被保持。在一个示例中,发出请求的用户可以在排队被主播/主持激活之前被放置在队列中以在激活发生时或在激活发生的情况下保持排序,而队列可能会被主播/主持清除,或者在流/游戏结束时被清除。在一些实施例中,对观众的排队可在由主播/主持用户启动标题之际被启用。还构想在由主播/主持(例如,经由UI 112a)激活队列之后,请求排队参与的选项可以仅被提供给观众(例如,经由UI 112b)。在此类场景中,可以例如通过突出显示或激活用于发出请求以加入会话的可选选项、通过消息等,经由UI 112b向观赏用户提供通知。

会话跟踪器106被配置成跟踪游戏和内容流的会话。即,会话跟踪器106被配置成监视会话以确定会话何时开始、结束或在各状态之间改变。会话跟踪器106可以将会话状态及其改变的指示提供给会话排队服务108。因此,会话排队服务108被配置成确定新会话何时开始、提供即将到来的会话的提醒、将用户集合作为访客玩家插入流传输会话的开头、在会话完成时从会话中移除或踢出访客玩家等。

会话跟踪器106和/或会话排队服务108可各自以硬件或与软件和/或固件中的一者或两者结合的硬件来实现,并且可被配置成执行本文描述的任何功能/操作以通过管理会话跟踪和自动排队来增强在线游戏、内容流和/或活动中的参与。

主播/主持客户端设备102a和/或访客客户端设备102b可以是任何类型的计算设备或计算系统,包括游戏控制台(例如,来自华盛顿州雷蒙德的微软公司的任何类型的Xbox

应当注意,主播/主持客户端设备102a可被配置成作为诸如访客客户端设备102b之类的访客客户端设备来操作,并且访客客户端设备102b可被配置成作为诸如主播/主持客户端设备102a之类的主播客户端设备来操作。即,本文描述的不同客户端设备在其功能性和操作方面不受其标签的限制,这些标签仅出于本文中的说明和描述的目的而被归属为此类标签。附加地,主播/主持客户端设备102a和/或访客客户端设备102b可各自被配置成在没有流传输或观众观看的情况下玩标题,如受益于本公开的本领域技术人员所理解的。

注意,如本文所描述的,用于通过管理会话跟踪和自动排队来增强在线活动中的参与的实施例适用于其中游戏/流传输服务系统或平台通过网络与客户端设备进行通信的任何类型的系统。一个示例是其中会话排队主机104和/或会话排队服务108是网络架构/平台中的“云”实现、应用或服务。云平台包括联网的计算资源集合(包括服务器、路由器等),该联网的计算资源集合是可配置的、可共享的、提供数据安全性的,并且可以通过诸如互联网之类的网络访问。云应用运行在这些计算资源上,通常位于运行在这些资源上的操作系统之上,供通过网络访问应用的实体使用。云平台可支持多租户,其中基于云平台的软件为多个租户提供服务,且每个租户包括共享对云平台软件服务的公共访问权限的一个或多个用户。此外,云平台可以支持作为硬件、软件和/或固件实现的管理程序,其为租户运行虚拟机(包括操作系统的模拟计算机系统)。管理程序为租户提供了虚拟操作平台。

因此,诸如会话排队主机104之类的会话排队主机系统可以以各种方式配置,以便通过管理主播客户端设备和/或访客客户端设备的用户的会话跟踪和自动排队来改进和增强在线内容流或活动中的参与。例如,图2是会话排队服务主机系统200(“本文为系统200”)的框图,该会话排队服务主机系统200被配置成用于通过管理会话跟踪和自动排队来改进和增强在线内容流或活动中的参与。系统200是图1的排队系统100的实施例。系统200描述如下。

系统200包括会话排队主机202,其可以是图1的会话排队主机104的实施例,并且可以是任何类型的服务器计算机或计算设备,如本文其他地方所提及的,或以其他方式已知的,包括基于云的服务器实现。如图2所示,系统200和会话排队主机202包括处理器(“处理器”)204中的一者或多者、存储器和/或其他物理存储设备(“存储器”)206中的一者或多者、一个或多个网络接口(“网络接口”)226以及可以是图1的会话排队服务108的实施例的会话排队服务208。系统200还可以包括会话跟踪器222(其可以是上述图1的会话跟踪器106的实施例)以及用户信息224。系统200还可包括附加组件(为了简洁和说明清楚起见未示出),包括但不限于:本文中其他系统的组件和子组件(诸如UI 112a和/或UI 112b等),以及下文参照图9和10所描述的那些(诸如操作系统)。

处理器204和存储器206可以分别是本文中描述的和/或受益于本公开的本领域技术人员所理解的任何类型的处理器电路或存储器。处理器204和存储器206可各自分别包括一个或多个处理器或存储器、不同类型的处理器或存储器、远程处理器或存储器和/或分布式处理器或存储器。处理器204包括被配置成执行计算机程序指令的电路系统,诸如但不限于可被实现为用于通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与的计算机程序指令的会话排队服务208的各实施例等,如本文所描述的。存储器206被配置成存储此类计算机程序指令/代码,以及存储在本公开中描述的其他信息和数据,包括但不限于标题信息、用户信息、跟踪信息等。

网络接口226可以是任何类型的有线和/或无线网络适配器、调制解调器等,其配置成使系统200能够通过网络与其他设备进行通信,诸如通过诸如上文参照图1描述的网络110之类的网络在系统200和如本文描述的网络中使用的其他设备(例如,主播/主持客户端设备102a、访客客户端设备102b和/或标题开发者服务器114)之间的通信。

用户信息224可包括但不限于有关以下各项的信息:用户、用户的帐户(例如,登录凭证、用户别名或化名等)、用户的客户端设备、用户的网络、由用户玩或作为观众观看的标题、所获得的用户奖励、以及用户登录到系统200或登录到游戏/流传输服务系统或平台的指示。用户信息224还可包括标准数据,诸如有关以下各项的信息:观看内容流的跟踪时间、观众参与、在内容流期间观看的标题事件、用户的追随者集合、用户正在追随的其他用户集合、订阅、用户的朋友集合、成员资格(例如俱乐部或社区成员资格)、用户的标题内属性/数据或用户的标题内角色、和/或任何其他类型的标准数据。在各实施例中,此类标准数据可被用于确定用户是否有资格获得队列优先级。

会话排队208包括用于执行本文描述的用于通过队列管理(例如,如LFG服务)来增强会话参与的技术的多个组件。如图所示,会话排队服务208包括通信器210、受众管理器212、队列管理器214、会话管理器216、应用编程接口(API)218和UI提供器220。虽然为了说明清楚起见而单独示出,但在各实施例中,通信器210、受众管理器212、队列管理器214、会话管理器216、API 218和/或UI提供器220中的一者或多者可以组合在一起和/或作为系统200的其他组件的一部分。在一些实施例中,可以包括少于图2中例示的会话排队服务208的所有组件。在软件实现中,会话排队服务208和/或会话排队主机202的一个或多个组件可被存储在存储器206中并且可以由处理器204执行。

通信器210被配置成接收和/或传送用于系统200的会话排队服务208的电子通信。例如,通信器210被配置成如本文描述的,经由网络接口226接收来自客户端设备的用户的有关会话参与、排队激活命令、用户观赏指示、会话状态信息、UI请求等的请求。类似地,系统200的会话排队服务208被配置成经由通信器210向用户、UI等发出、传送和/或提供通知,如下文描述的。

受众管理器212可被配置成跟踪正在标题的大厅中观看流传输的用户被加入群组以参与游戏或流传输观看等。例如,观赏用户可在与会话排队服务208和系统200相关联的游戏/流传输服务系统或平台上登录、或被其认证并在线。服务系统或平台可为用户提供机制以观看活跃流传输、聚集在因游戏或标题而异的大厅中、加入群组房间等等。受众管理器212可被配置成用于正在活跃地观看流或相对于标题而言以其他方式存在的用户,使得只有以此方式存在的用户才有资格被排队和/或保持排队以进行会话参与。

队列管理器214可被配置成对参加游戏/流会话的用户进行排队。队列管理器214可被配置成基于来自受众管理器的信息来将用户插入队列和将用户从队列中移除,如上文提及的。队列管理器214可被配置成管理FIFO排队结构或任何其他类型的排队结构,并且可被配置成管理针对多个标题和任意数量的用户的排队。当经排队的用户被插入会话时,队列管理器214被配置成从队列中移除用户。在各实施例中,队列管理器214被配置成基于标准信息(如上文有关用户信息224所描述的)来对队列中的用户进行优先级排序。队列管理器214还可在主播/主持用户明确激活参与流会话的排队之前,基于对会话参与的请求对用户进行临时排队。在一些实施例中,如下文描述的来自被会话管理器216踢出或移除的完成的会话的访客玩家可由队列管理器214自动地进行重新排队。

会话管理器216可被配置成将经排队的用户作为访客玩家插入会话中,并从完成的会话中移除访客玩家。会话管理器216可被配置成(例如,在会话开始时)向会话添加经排队的用户集合,其中待插入会话的用户集合基于会话的并发参与者的最大限制(不包括主播/主持),或者基于指定集合中用户数量(小于或等于最大值)的主播/主持用户的偏好。在经排队的用户少于主播/主持用户的最大限制和/或偏好的场景中,该多个经排队的用户可被插入会话。会话管理器216可被配置成基于来自会话跟踪器222的会话信息,分别向开始的会话添加用户/访客玩家和/或从完成的会话移除用户/访客玩家。在各实施例中,会话跟踪器222和会话管理器216可以在概念上或以其他方式作为单个组件被包括在一起。会话管理器216被配置成自动地添加和/或移除经排队的用户和/或访客玩家,而无需附加的或任何输入被提供。

API 218可包括一个或多个API以执行与本文所描述的跟踪和通信有关的特定功能。在各实施例中,API 218的一个或多个API可被包括在会话排队主机202的(诸)组件中,或由会话排队主机202的(诸)组件使用,诸如但不限于会话排队服务208及其子组件。例如,API 218的API可与会话跟踪器222一起使用以传达游戏和内容流的会话状态。类似地,其他API可被用于促进其他网络通信和通知。在各实施例中,通知或提醒可作为单个API调用(即,单个消息通信)被提供给观赏/观看用户。在各实施例中,此类API可被配置成并发地为大量观赏用户(例如,多达100,000个观众或更多)发布通信。

UI提供器220被配置成向客户端设备提供UI。例如,UI提供器220可被配置成向主播/主持客户端设备102a提供UI 112a(或其一部分,或其内容/信息)和/或向访客客户端设备102b提供UI 112b(或其一部分,或其内容/信息)。UI 112a和UI 112b的进一步的实施例在下文另外详细描述。

会话排队服务208可以各种方式操作以通过管理会话跟踪和自动排队来增强在线内容流或活动(诸如多玩家游戏)中的参与。例如,图3示出了根据示例实施例的用于通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与的流程图300。在一实施例中,会话排队服务208可根据流程图300进行操作。基于以下描述,其他结构及操作的示例对于相关邻域的技术人员将是显而易见的。参照图1的排队系统100和图2的系统200,流程图300描述如下。

流程图300从步骤302开始。在步骤302,通过将用户包括在活动群组中来将该用户与主持玩家的活动相关联。例如,图2中的会话排队服务208的受众管理器212被配置成通过将用户表示为属于活动群组来将用户与主持玩家的游戏或视频流相关联。待分群组的用户可以包括被游戏/流传输服务或平台(诸如像Xbox Live之类的在线服务)认证(即在其上登录)的那些用户。经分群组的用户可能正作为观众观看视频流、可能会在正在被流传输的标题的大厅中、可能会在群组大厅中以加入多玩家游戏,等等。在各实施例中,受众管理器212可在存储器206中存储以此方式分群组的用户的指示。因此,有资格排队参与游戏或内容流的会话的用户可被管理以便要求用户与游戏或内容流相关联地出现。

在步骤304,从活动群组中的用户的至少一个子集接收作为访客玩家加入游戏/视频流的会话的请求,该会话包括与主持玩家一起参与活动。例如,图2的队列管理器214可被配置成从步骤302中描述的经认证的用户接收加入游戏/视频流的会话的请求。这些用户可通过选择诸如UI 112b之类的UI上的选项来请求加入会话,该选项向队列管理器214提供指示用户希望加入会话的通信消息。在一些实施例中,少于所有经认证的用户可能会提供请求。活动可包括玩游戏、演示、虚拟现实体验等。

在步骤306,对提交加入会话的请求的用户进行排队。例如,队列管理器214可被配置成将发出请求的用户置于队列中。队列可包括诸如FIFO队列之类的排队结构,其可由队列管理器214存储在诸如存储器206之类的存储中。在FIFO队列示例中,与第一个接收到的请求相对应的用户位于队列的顶部或头部,换言之,接收到的请求的顺序与用户在队列中的位置相对应。在各实施例中,在对发出请求的用户进行排队之前,队列管理器214被配置成例如利用来自受众管理器212的针对经分群组的用户的存储指示来验证发出请求的用户对视频流而言仍然存在。

在步骤308,确定会话的开始。例如,会话管理器216被配置成确定会话何时准备好开始和/或会话何时开始。如上文描述的,会话管理器216可从会话跟踪器222接收信息。当会话管理器216确定会话准备好开始时,会话管理器216可被配置成向将被插入即将开始的下一个会话的经排队的用户或所有经排队的用户提供指示。

在步骤310,预定数量的经排队的用户被自动地插入会话以发起活跃会话。例如,会话管理器216被配置成自动地将经排队的用户的集合插入会话。插入会话中的经排队的用户的数量可被预定成会话中同时允许的最大数量、或者预定成与主播/主持的偏好相对应的数量,并且在一些实施例中,当用户的数量小于其他数量中的任何一个时,可以是队列中的一个或多个用户。会话管理器216可被配置成自动地将经排队的用户集合一次一个地插入会话中,直到达到指定的/最大数量(例如,以预定的顺序或以如本文描述的与来自用户的参与接受指示相对应的顺序),或者经排队的用户集合可被同时或大约同时地插入会话。当用户作为访客玩家被插入时,会话可会自动地变为活跃状态。在各实施例中,在插入经排队的玩家之后,主播/主持可经由主持UI(例如,UI 112a)来激活会话。

通过自动地将经排队的用户插入会话中,可以大大减少网络话务。例如,重复或连续的会话可以无缝地发生而无需在客户端设备102a/102b与会话排队主机202之间的用于重新加入新的游戏/流/群组/大厅、选择不同的用户以插入下一个会话等的附加通信。此外,由所描述的实施例实现的活动的连续性在活动的设置中提供了更少的停机时间,这减少了客户端设备的功耗。

此外,如前所提及的,会话排队服务位于主播和访客客户端设备之间的中央位置,并且能够基于主播/主持用户的特定偏好为每个此类用户在游戏/流传输系统或平台支持的每个可用标题上动态地管理队列和会话参与。以此方式,会话排队服务能够有效地管理会话参与,并为任何数量的用户改善内容流传输系统及用户对其的体验。因此,可以从集中式服务对每个标题和每个主播/主持进行队列管理和会话参与的自定义。

更进一步,图2的API 218的API还可被配置成向用户、经排队的用户和/或访客玩家实时地发布包括提醒/通知的一对多通信。如与上文描述类似地,位于中央的会话排队服务针对关于队列管理和会话参与以及网络利用的系统性能来被配置。由于所描述的会话排队服务被配置成向经认证的用户的所有客户端设备发布与排队和会话参与有关的单个通知,因此通过所描述的实施例进一步显著降低了网络话务和负载。即,提醒和通知以如上提及的方式(例如经由API 218)分发,该方式不需要从服务、从标题或从主播/主持向观赏用户发出单独的通知。根据所描述的标题排队服务和系统减少的网络话务是显著的,因为支持参与游戏或观看标题流传输、排队和参与会话的用户的数量可以是数千到数十万。

在被插入会话之后,访客玩家可以与主播/主持用户一起参加活动,直到会话完成。在会话完成后,图2的会话排队服务208被配置成自动地且无缝地重复会话发起和对经排队的用户插入。

例如,图4示出了根据示例实施例的用于通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与的流程图400。会话排队服务208可根据流程图400进行操作。流程图400可以是图3的流程图300的另一实施例。基于以下描述,其他结构及操作的示例对于相关邻域的技术人员将是显而易见的。参照图1的排队系统100和图2的系统200,流程图400描述如下。

流程图400从步骤402开始。在步骤402,在活跃会话之前发生的先前活跃会话被跟踪。例如,如上文描述的,图2的会话管理器216可被配置成经由会话跟踪器222来跟踪会话。在各实施例中,会话管理器216可以从会话跟踪器222接收源自游戏/流传输服务系统或平台的会话信息,使得流和会话被直接或间接地监视以获得跟踪信息。

在步骤404,确定先前活跃会话的完成。例如,会话管理器216被配置成获得跟踪信息,如上文针对步骤402所描述的。会话管理器216可基于跟踪信息来确定会话的完成。会话管理器216因此被配置成等待执行从会话中移除访客玩家,直到确定先前的会话完成为止。

在步骤406,基于该完成并在所述自动地将预定数量的经排队的用户插入会话之前,先前活跃会话的所有访客玩家被自动地移除。例如,会话管理器216可被配置成在会话完成时自动地从会话中移除访客玩家。会话管理器216因此被配置成等待执行将经排队的用户作为访客玩家到新会话的插入,直到从先前会话中移除访客玩家为止。

在步骤408,该开始基于先前活跃会话的完成来确定。例如,如上文提及的,在新会话被激活之前,活动的先前会话已完成。当先前的会话完成时,会话跟踪器222被配置成通知会话管理器216。在各实施例中,会话跟踪器216可被配置成响应于先前的活跃会话的完成而确定何时开始新的活跃会话,例如经由将经排队的用户作为访客玩家进行插入。

在各实施例中,流程图400的步骤可以例如在没有来自用户的输入的情况下自动地执行以无缝且有效地管理会话参与和流。

因此,流程图300和流程图400(以及系统200的会话排队服务208)通过使会话排队服务208被配置成作为用于针对任意数量的用户的不同开发者的任意数量的标题的会话和游戏/流传输的自动队列管理器和会话管理器来操作使得通过管理会话跟踪和自动排队来改善和增强在线内容流或活动中的参与。各实施例提供有效的,减少网络话务/负载的通知以及用户到活跃会话中的集成。

图5、图6和图7例示了根据所描述的实施例的流程图。图5示出了流程图500、图6示出了流程图600、而图7示出了流程图700,根据各示例实施例,每一者都用于通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与。为了说明,所描述的流程图与上文描述的实施例相关联。会话排队服务208可根据流程图500、流程图600和/或流程图700进行操作。流程图500、流程图600和/或流程图700可以是图3的流程图300和/或图4的流程图400的其他实施例。基于以下描述,其他结构及操作的示例对于相关邻域的技术人员将是显而易见的。

下面参照图1的排队系统100和图2的系统200以及诸如图1的主播/主持客户端设备102a之类的主播客户端设备来描述图5的流程图500。

在步骤502,主持例如经由主播/主持客户端设备102a启动该主持希望与其他用户一起玩的多玩家标题。在流程图500例示的示例的上下文中,参照主持/受众模型描述了主持,其中主持向诸如访客客户端设备102b的用户之类的用户的受众流传输其玩游戏过程。响应于步骤502,在步骤504,例如,通过配置成流传输标题或主持多玩家游戏会话的游戏/流传输服务系统或平台来创建多玩家(MP)服务流(或游戏会话)。在同时或大约同时,创建至会话跟踪器222的持久连接506(例如,所例示的WebSocket连接)(并在此上下文中用作实时活动(RTA)服务实例),该持久连接对会话的变化和状态保持更新。充当RTA服务实例的会话跟踪器222可以用作发布/订阅模型服务,其中订户实时/近实时地接收项目的推送更新。

然后,主持在步骤508开始例如经由平台从主播/主持客户端设备102a广播。然后,主播/主持(或在此情况下为主播)可以在步骤510决定创建自动游戏LFG过程,该过程将在每个流传输会话之后持续拉入想要玩的新受众成员,如本文实施例所描述的。可以自动填充或自定义LFG过程的详细信息512以包括但不限于要添加到会话中的用户数量(即用户位置)、会话的历时、对作为订户、追随者、聊天活跃者等受众成员的优先级排序等等。详细信息512可以是默认选项和/或经由诸如UI 112a之类的UI来自定义(如下文进一步描述)。在步骤512处创建自动游戏LFG使得会话排队服务创建LFG过程,该LFG过程可经由诸如UI112b之类的UI被提供给用户(如下文进一步描述)。附加地,在各实施例中,可视选项可以允许受众用户成为能够观看LFG过程的唯一用户。

现在转向图6和流程图600,此示例实施例参照诸如图1的访客客户端设备102b之类的访客客户端设备被描述。流程图600还参照图5的流程图500被描述,例如,作为与流程图500一致的客户端图示。

在步骤602,流观看者(或通常为用户)可经由诸如访客客户端设备102b之类的客户端设备观看某标题的主播/主持的广播或内容流(或加入多玩家游戏会话)。例如,在流程图500的步骤508中广播的流可被观看。用户可以在由对流进行广播的游戏/流传输服务系统或平台提供的大厅或其他在线位置中观看该流(在下面的图7中示出)。如流程图500的步骤510,主播/主持可以为受众启用自动游戏LFG过程。例如,在诸如图1的UI 112a之类的交互式UI中,主播/主持使受众用户能够用可选选项来激活例如UI 112b来与主播/主持一起参与流的活动或会话。在步骤604,观看者请求进入会话队列。

在接收到来自用户的请求时,平台可以在步骤606中将用户元数据提供给会话排队服务,以用于将要执行的任何队列优先级排序。此元数据可以包括本文描述的标准数据,该标准数据可以与图2的用户信息224一起存储。当用户在步骤608中被成功地添加到会话队列中时(例如,通过如上文描述的会话排队服务208),经排队的用户可以具有在步骤610中建立的至会话跟踪器222的持久连接506(例如,所例示的WebSocket连接),以使经排队的用户保持对其在队列中的位置的信息更新以及对LFG过程的其他更新。

参照图7和流程图700,此示例实施例参考会话排队系统(诸如图1的排队系统100和/或系统200)被描述。流程图700还参照图5的流程图500和图6的流程图600被描述,例如,作为与这些流程图一致的系统级图示。

当主播/主持客户端设备102a处的主播/主持对自动游戏LFG有足够的兴趣时,或当一个或多个其他用户排队时,主播/主持可在一个或多个访客客户端设备102b处开始选择经排队的用户的过程,以用于通过在步骤702在其UI(例如图1的UI 112a)上激活开始对象来插入会话。此激活导致向会话排队服务208提供相应的通知,以开始选择队列中的最靠前的用户,并(例如,经由队列管理器214)尝试在步骤704填充游戏会话。在一些实施例中,会话排队服务208可在预定数量的用户排队时(或者在一个或多个用户排队了一段时间之后)自动地开始从队列中选择用户。

会话排队服务208被配置成在步骤706(例如经由会话管理器216)向所选择的用户的访客客户端设备102b自动地提供诸如WNS通知之类的通知。所选择的用户可以通过其UI(例如,图1的UI 112b)中的可选对象对通知进行响应以接受会话邀请,或者在其他实施例中,队列中的所选择的用户可被提供有关他们正在被添加到会话中的信息提醒,而不需要附加的用户输入。当队列中的每个所选择的用户接受时,在步骤708,他们例如由会话排队服务208的会话管理器216被自动地添加到游戏会话中。如果所选择的用户拒绝或在预定时间段内未能接受邀请通知,则会话排队服务208被配置成从队列中移除该用户,或替换地将该用户置于队列末尾,并选择在队列顶部的下一个用户。

如上文描述的,一旦已经根据指定数量的参与者填充了会话,主播/主持就可将会话发起为活跃的,而在一些其他实施例中,会话可被自动地激活。在任何一种情况下,会话都会进行到结束。基于由会话跟踪器222跟踪的会话状态,在会话完成时,在步骤710确定游戏/流是否已经结束。如果游戏/流结束,则标题或会话排队服务208将在步骤712(例如通过会话管理器216)将访客玩家从会话中移除并断开经排队的用户的连接。如果游戏/流未完成,则会话排队服务208将在步骤714(例如通过会话管理器216)将访客玩家从会话中移除或踢出以便为新的访客玩家释放会话中的可用位置并仅留下主播/主持。会话跟踪器222被配置成在会话排队服务208和游戏/流传输服务系统或平台处的MP服务流(或游戏会话)716之间中继关于游戏/流中的可用会话位置和队列中可用的后续用户的信息。然后,所描述的过程可自动地重复,例如,在步骤704开始选择队列中可用的后续用户,并在步骤706向所选择的用户发送WNS游戏邀请。

在各实施例中,在会话进行时的等待时间段期间,可(例如通过队列管理器214)自动地将离开游戏/流的任何访客玩家从队列中移除。由于所描述的各实施例的自动性质,一旦该过程重新开始,在主播/主持取消或结束游戏/流和会话之前,主播/主持将无需执行任何动作来选择后续经排队的用户作为新的访客玩家。附加地,作为流观看者或希望成为活动参与者的用户可以保留在队列中,并在他们等待时经由其各自的UI看到他们在队列中的位置。

因此,所描述的会话参与和队列管理系统和过程通过减少会话建立所需的通信使得网络110的网络话务和负载显著减少,并且本文的系统和设备的功耗也通过会话的无缝迭代而降低,使得能够在当前解决方案上实现更高效的实现。此外,现有技术缺乏被配置和/或编程为以此高效方式操作的会话参与和队列管理系统。

示例用户界面实施例

本文所描述的客户端设备(例如,如图1所示的主播/主持客户端设备102a和/或访客客户端设备102b)的用户被配置成彼此交互,并与图1中的会话排队主机104和/或与图2中的系统200的会话排队主机202和会话排队服务208进行交互。主播/主持客户端设备102a和/或访客客户端设备102b可以是任何类型的计算设备或计算系统,包括游戏控制台、终端、个人计算机、膝上型计算机、平板设备、智能电话等,其可被用户用于赏玩、流传输和/或观赏标题开发者的标题(即,观看标题开发者的标题的视频流)。如上文提及的,此类设备可以包括诸如图1的UI 112a和UI 112b之类的UI。本文描述的UI及其信息/内容可以全部或部分地由客户端设备或其他系统/主机执行的标题来提供、可被嵌入客户端设备、或其任何组合。

现在转到图8A和8B,描述了作为UI 112a和UI 112b的各个实施例的UI。

在图8A中,示出了主持UI 800A的框图。所例示的主持UI 800A是UI 112a的另一实施例。主持UI 800A可以是从图2的(诸)UI提供器220提供给主播/主持的UI。主持UI 800A被描述如下。

主持UI 800A可包括游戏/流玩耍窗口802,该游戏/流玩耍窗口802被配置成显示主播/主持在标题的流或游戏期间发生的活动。主持UI 800A还可包括可由主播/主持选择或与之交互以配置凭证的可配置对象。例如,示出了会话凭证对象804和优先级凭证对象806。会话凭证对象804和/或优先级凭证对象806可包括下拉菜单或其他类型的可扩展接口,其使主播/主持能够指定和/或选择在本文描述的会话参与和队列管理实施例中实现的凭证。会话凭证对象804提供了与用于能够加入游戏/流的会话的用户凭证相关联的配置选项。作为示例,主播/主持可能希望要求仅允许其追随者和朋友、或仅特定社区或群组的成员加入并参与游戏/流会话。然而,可构想用户的其他特征/凭证可相对于会话凭证对象804被指定。优先级凭证对象806提供了与用于在请求加入和参与游戏/流的会话时具有优先级排序的队列放置的用户凭证相关联的配置选项。作为示例,主播/主持可能希望允许具有由主播/主持经由消息收发对象816提供的密码的用户或其流传输频道的订户被置于队列的顶部,但位于已被排队的具有此类特征/标准的其他用户/订户之后(即,位于没有此类特征/标准的经排队的用户之前)。然而,可构想用户的其他特征/凭证可相对于优先级凭证对象806被指定。

主持UI 800A还可包括可选择对象808,该可选择对象808在被选择时被配置成启动LFG过程(即,激活流的会话模式)以开始与其他用户一起参与活动的会话。在各实施例中,如下文描述的,选择对象808使访客UI 800B向用户显示或激活其一个或多个部分。主持UI 800A还可以包括队列的表示(例如,队列对象810),用户根据所描述的各实施例在该队列中被排队。队列对象810可例示被排队的用户及其在队列中的位置。队列对象810还可以提供指示812,该指示812表示将被添加到下一个会话的经排队的用户(例如,如图所示的位于队列位置1和2处的用户)或经排队的用户的数量。换言之,在所示的实施例中,允许为每个总共有三个参与者(包括主播/主持)的会话添加作为经排队的用户的子集的两个经排队的用户,尽管本文构想了其他数量的用户子集。队列对象810可以例示与队列中的用户相关联的其他信息/特征,例如,头像图、徽章、订阅指示等。在一些实施例中,主持UI 800A可以使主播/主持能够从队列对象810中选择特定用户以进行优先排序。

主持UI 800A还可包括用于其他动作的可选择对象814,为了说明清楚和简洁起见未示出。在选择对象814时执行的其他动作可以包括但不限于:从队列对象810移除用户、结束会话、结束流、开始会话、为会话参与者设置限制、为会话设置历时、向访客UI显示会话信息(诸如剩余时间或会话目标进度)等。在各实施例中,选择对象808或对象814可以提供显示先前由主播/主持实现的会话选项的列表或历史。

在图8B中,示出了访客UI 800B的框图。所例示的访客UI 800B是UI 112b的另一实施例。访客UI 800B可以是从图2的(诸)UI提供器220提供给主播/主持的UI。访客UI 800B可以在用户进入标题大厅、群组等时被提供。访客UI 800B被描述如下。

访客UI 800B可包括游戏/流观看窗口818,该游戏/流观看窗口818被配置成显示主播/主持在标题的流或游戏期间发生的活动。游戏/流观看窗口818可被配置成显示会话信息,诸如剩余时间或会话目标进度。如本文描述的,游戏/流观看窗口818可被配置成显示用户在被添加到其中之后在游戏/流的会话中的参与。

访客UI 800B可包括凭证对象820、请求加入对象822、队列对象824和提醒指示对象828。这些对象中的一者或多者可被配置成在主播/主持(例如,经由主持UI 800A的对象808)激活LFG过程或会话之前不被显示或被停用。

在一些示例中,凭证对象820可被配置成使得用户能够输入或选择凭证以提供给主播/主持以验证用户的许可。例如,凭证对象820可以是文本字段,用户可在其中输入主播/主持经由消息收发对象830提供的密码。如本文描述的,请求加入对象822可被用户选择以导致加入会话的请求被发送。

队列对象824可显示在其中用户根据所描述的各实施例被排队的队列的表示。队列对象824可例示被排队的用户及其在队列中的位置,包括观看访客UI800B的用户。队列对象824还可以提供指示826,该指示826表示将被添加到下一个会话的经排队的用户(例如,如图所示的位于队列位置1和2处的用户)或经排队的用户的数量。换言之,在所示的实施例中,允许为每个总共有三个参与者(包括主播/主持)的会话添加作为经排队的用户的子集的两个经排队的用户,尽管本文构想了其他数量的用户子集。

提醒指示对象828被配置成提供针对用户将作为访客玩家参与的活跃会话的初始化的提醒指示。由提醒指示对象828提供的提醒通知可以包括任何类型的视觉和/或听觉通知。在各实施例中,提醒指示对象828可被配置成由用户激活以接受加入会话的邀请的可选择对象,如上文描述的。例如,当经排队的用户被自动地选择以包括在会话中并且通知被自动地提供给用户时(如上述图7中的流程图700的步骤704和706所示),用户可通过选择提醒指示对象828来响应此通知以接受插入到会话中。

如受益于本公开的相关领域的技术人员所理解的,主持UI 800A和访客UI 800B的这些和其他功能可以与所描述的系统和设备的任何其他实施例和特征组合。

III.示例移动设备和计算设备实施例

本文描述的各实施例可以以硬件或与软件和/或固件结合的硬件来实现。例如,本文描述的各实施例可被实现为被配置成在一个或多个处理器中执行并且被存储在计算机可读存储介质中的计算机程序代码/指令。替换地,本文描述的各实施例可以被实现为硬件逻辑/电路系统。

如本文提及的,所描述的实施例,包括图1的排队系统100、图2的系统200、图8A的主持UI 800A和图8B的访客UI 800B、以及其任何组件和/或子组件、以及本文所描述的流程图/流程图和/或本文所描述的其他示例,可在硬件或具有软件和/或固件的任何组合的硬件中实现,包括被实现为被配置成在一个或多个处理器中执行并且被存储在计算机可读存储介质中的计算机程序代码,或被实现为硬件逻辑/电路系统,诸如在片上系统(SoC)、现场可编程门阵列(FPGA)或专用集成电路(ASIC)中一起实现。SoC可包括集成电路芯片,该集成电路芯片包括以下一个或多个:处理器(如微控制器、微处理器、数字信号处理器(DSP)等等)、存储器、一个或多个通信接口、和/或用于执行其功能的进一步的电路和/或嵌入式固件。

本文描述的实施例可以在一个或多个计算设备中实现,该一个或多个计算设备类似于静止或移动计算机实施例中的移动系统和/或计算设备,包括本文描述的移动系统和/或计算设备的一个或多个特征以及替换特征。本文提供的对移动系统和计算设备的描述是为了说明的目的而提供的,并不旨在是限制性的。实施例也可以在相关领域的技术人员所知的其它类型的计算机系统中实现。

图9是包括可实现本文描述的各实施例的移动设备902的示例性移动系统900的框图。例如,在前序章节中,移动设备902可用于实现任何系统、客户端或设备或其组件/子组件。如图9中显示的,移动设备902包括各种任选的硬件和软件组件。移动设备902中的任何组件可与任何其他组件通信,但出于容易例示的目的而未示出所有连接。移动设备902可以是各种计算设备(例如,蜂窝电话、智能电话、手持式计算机、个人数字助理(PDA)等)中的任一个,并且可允许与诸如蜂窝或卫星网络的一个或多个移动通信网络904或与局域网或广域网进行无线双向通信。

移动设备902可以包括用于执行任务的控制器或处理器910(例如,信号处理器、微处理器、ASIC或者其他控制和处理逻辑电路系统),此类任务诸如信号编码、数据处理、输入/输出处理、功率控制、和/或其他功能。操作系统912可控制对移动设备902的分配和使用,并提供对一个或多个应用程序914(也称为“应用”、“app”等)的支持。应用程序914可包括公共移动计算应用程序(例如,电子邮件应用程序、日历、联系人管理器、web浏览器、消息收发应用程序)、或任何其他计算应用(例如文字处理应用、绘图应用、媒体播放器应用)。

移动设备902可包括存储器920。存储器920可包括不可移动存储器922和/或可移动存储器924。不可移动存储器922可包括RAM、ROM、闪存、硬盘、或其他众所周知的存储器设备或技术。可移动存储器924可包括闪存或在GSM通信系统中公知的订户身份模块(SIM)卡,或者其他诸如“智能卡”之类的公知存储器设备或技术。存储器920可用于存储数据和/或用于运行操作系统912和应用程序914的代码。示例数据可包括经由一个或多个有线或无线网络发送给和/或接收自一个或多个网络服务器或其它设备的网页、文本、图像、声音文件、视频数据、或其它数据集。存储器920可用于储存诸如国际移动订户身份(IMSI)等订户标识符,以及诸如国际移动设备订户标识符(IMEI)等设备标识符。此类标识符可被传送到网络服务器以标识用户和设备。

多个程序可被储存在存储器920中。这些程序包括操作系统912、一个或多个应用程序914以及其他程序模块和程序数据。例如,此类应用程序或程序模块的示例可包括用于实现以下一者或多者的计算机程序逻辑(例如,计算机程序代码或指令):图1的排队系统100、图2的系统200、图8A的主持UI 800A和图8B的访客UI 800B,以及其任何组件和/或子组件以及本文描述的绘图和流程图/流程图和/或进一步的示例。

移动设备902可支持诸如触摸屏932、话筒934、相机936、物理键盘938和/或跟踪球940的一个或多个输入设备930,以及诸如扬声器952和显示器954的一个或多个输出设备950。其他可能的输出设备(未示出)可包括压电或其他触觉输出设备。一些设备可供应不止一个输入/输出功能。例如,触摸屏932和显示器954可被组合在单个输入/输出设备中。输入设备930可包括自然用户界面(NUI)。

一个或多个无线调制解调器960可被耦合至(诸)天线(未示出),并且可支持处理器910与外部设备之间的双向通信,如本领域中所充分理解的那样。调制解调器960被一般示出,并且可以包括用于与移动通信网络904通信的蜂窝调制解调器966和/或其他基于无线电的调制解调器(例如,蓝牙964和/或Wi-Fi 962)。至少一个无线调制解调器960被典型地配置成用于与一个或多个蜂窝网络(诸如GSM网络)通信,以供单个蜂窝网络内、多个蜂窝网络之间、或者在移动设备和公共交换电话网(PSTN)之间的数据和语音通信。

移动设备902可进一步包括至少一个输入/输出端口980、电源982、诸如全球定位系统(GPS)接收机之类的卫星导航系统接收机984、加速度计986、和/或物理连接器990,该物理连接器990可以是USB端口、IEEE 1394(火线)端口、和/或RS-232端口。所示的移动设备902的各组件并非是必需或者涵盖全部的,因为如本领域技术人员所理解地,任何组件可不存在且附加地其它组件可存在。

在一实施例中,移动设备902被配置成实现本文的流程图的上述特征中的任何一者。用于执行本文描述的任何操作、步骤和/或功能的计算机程序逻辑可被存储在存储器920中并由处理器910执行。

图10描绘了其中可实现各实施例的计算设备1000的示例性实现。例如,本文描述的各实施例可以在一个或多个计算设备中实现,该一个或多个计算设备类似于静止或移动计算机实施例中的计算设备1000,包括计算设备1000的一个或多个特征和/或替换特征。本文中所提供的对计算设备1000的描述只是为了说明,并不旨在限制。实施例也可以在相关领域的技术人员所知的其他类型的计算机系统和/或游戏控制台中实现。

如图10所示,计算设备1000包括一个或多个处理器(被称为处理器电路1002)、系统存储器1004,以及将包括系统存储器1004的各种系统组件耦合到处理器电路1002的总线1006。处理器电路1002是用一个或多个物理硬件电子电路设备元件和/或集成电路器件(半导体材料芯片或管芯)实现为中央处理单元(CPU)、微控制器、微处理器、和/或其他物理硬件处理器电路的电子和/或光学电路。处理器电路1002可执行存储在计算机可读介质中的程序代码,诸如操作系统1030、应用程序1032、其他程序1034的程序代码等。总线1006表示若干类型的总线结构中的任何总线结构中的一个或多个,包括存储器总线或存储器控制器、外围总线、加速图形端口,以及处理器或使用各种总线体系结构中的任一种的局部总线。系统存储器1004包括只读存储器(ROM)1008和随机存取存储器(RAM)1010。基本输入/输出系统1012(BIOS)被存储在ROM 1008中。

计算设备1000还具有一个或多个以下驱动器:用于读写硬盘的硬盘驱动器1014、用于读或写可移动磁盘1016的磁盘驱动器1018、以及用于读或写诸如CD ROM、DVD ROM或其他光介质之类的可移动光盘1020的光盘驱动器1022。硬盘驱动器1014、磁盘驱动器1016、以及光盘驱动器1020分别通过硬盘驱动器接口1024、磁盘驱动器接口1026、以及光盘驱动器接口1028连接至总线1006。这些驱动器以及它们相关联的计算机可读介质为计算机提供了对计算机可读指令、数据结构、程序模块及其他数据的非易失存储。虽然描述了硬盘、可移动磁盘和可移动光盘,但是诸如闪存卡、数字视频盘、RAM、ROM之类的其他类型的基于硬件的计算机可读存储介质和其他硬件存储介质也可被用来储存数据。

数个程序模块可被存储在硬盘、磁盘、光盘、ROM或RAM上。这些程序包括操作系统1030、一个或多个应用程序1032、其他程序1034以及程序数据1036。应用程序1032或其他程序1034可包括例如用于实现本文描述的各实施例的计算机程序逻辑(例如,计算机程序代码或指令),诸如图1的排队系统100、图2的系统200、图8A的主持UI 800A和图8B的访客UI800B,以及其任何组件和/或子组件,以及本文描述的绘图和流程图/流程图和/或本文描述的进一步示例。

用户可通过诸如键盘1038和定点设备1040之类的输入设备向计算设备1000中输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、碟型卫星天线、扫描仪、触摸屏和/或触摸平板、用于接收语音输入的语音识别系统、用于接收姿势输入的姿势识别系统,等等。这些及其他输入设备通常通过耦合到总线1006的串行端口接口1042来连接到处理器电路1002,但是也可以通过其他接口(诸如并行端口、游戏端口、或通用串行总线(USB))来进行连接。

显示屏1044也通过诸如视频适配器1046之类的接口来连接到总线1006。显示屏1044可以在计算设备1000外部或纳入其中。显示屏1044可显示信息,以及作为用于接收用户命令和/或其他信息(例如,通过触摸、手指姿势、虚拟键盘等)的用户界面。除了显示屏1044之外,计算设备1000还可包括其他外围输出设备(未示出),诸如扬声器和打印机。

计算设备1000通过适配器或网络接口1050、调制解调器1052、或用于通过网络建立通信的其他手段来连接到网络1048(例如,互联网)。可以是内置的或外置的调制解调器1052可以经由串行端口接口1042连接到总线1006,如图10所示,或者可以使用包括并行接口的另一接口类型连接到总线1006。

如此处所用的,术语“计算机程序介质”、“计算机可读介质”以及“计算机可读存储介质”等被用于指物理硬件介质,诸如与硬盘驱动器1014相关联的硬盘、可移动磁盘1018、可移动光盘1022、其他物理硬件介质,诸如RAM、ROM、闪存卡、数字视频盘、zip磁盘、MEM、基于纳米的存储设备,以及其他类型的物理/有形硬件存储介质(包括图10的存储器1020)。此类计算机可读介质和/或存储介质与通信介质和传播信号区分且不交叠(不包括通信介质和传播信号)。通信介质在诸如载波等已调制数据信号中承载计算机可读指令、数据结构、程序模块或其他数据。术语“已调制数据信号”意指以在信号中对信息进行编码的方式来使其一个或多个特性被设置或改变的信号。作为示例而非限制,通信介质包括无线介质(诸如声学、RF、红外和其他无线介质)以及有线介质。各实施例还涉及与涉及计算机可读存储介质的实施例分开且不交叠的这类通信介质。

如以上所指出的,计算机程序和模块(包括应用程序1032及其他程序1034)可被储存在硬盘、磁盘、光盘、ROM、RAM或其他硬件存储介质上。这样的计算机程序也可以经由网络接口1050、串行端口接口1042或任何其他接口类型来接收。这些计算机程序在由应用执行或加载时使计算机1000能够实现本文中所讨论的各实施例的特征。相应地,这些计算机程序表示计算机系统1000的控制器。

各实施例还涉及包括存储在任何计算机可读介质或计算机可读存储介质上的计算机代码或指令的计算机程序产品。这些计算机程序产品包括硬盘驱动、光盘驱动、存储器设备包、便携式记忆棒、存储器卡以及其他类型的物理存储硬件。

IV.附加示例和优点

如所描述的,具体化本文的技术的系统和设备可以以各种方式被配置和启用以执行它们各自的功能。在各实施例中,本文描述的任何流程图和/或流程图的步骤或操作中的一者或多者可以不被执行。此外,可以执行除本文描述的任何流程图和/或流程图中的步骤或操作之外的步骤或操作。此外,在各示例中,本文描述的任何流程图和/或流程图的一个或多个操作可以不按顺序执行、以替换的序列执行、或者与彼此或与其他操作部分(或完全)并发地执行。

尽管可以在流传输其他用户正在观看的标题的主播/主持用户的上下文中(例如,在与该标题相关联的虚拟或在线大厅中)描述以上章节中描述的各实施例,这些实施例也可被应用于在虚拟或在线位置“相遇”的用户群组(例如,朋友群组)以玩未被流式传输以供观看的游戏。例如,允许四个或八个玩家同时参与的多玩家游戏会话可以由希望与朋友群组一起玩的用户来创建和主持。当朋友群组(包括主持用户)超过游戏允许的参与者数量时,本文描述的用于管理会话跟踪和自动排队的各实施例同样适用于此类场景。

所描述的实施例不仅改善了用户的体验以及他们的客户端设备的性能(诸如,由中央系统更高效地处理各功能来降低功耗和减少处理周期负担)以及它们之间的网络的负载,而且还改善了游戏/流传输服务系统/平台的性能。经由本文描述的标题的无缝集成,还减少了标题开发者的计算资源利用(例如,减少了开发时间和开发处理周期)。附加地,本文中位于中央的会话排队系统和设备为游戏/流会话参与提供了可动态地配置的队列管理,该队列管理是根据每个特定的主播主持的偏好和他们正在流传输的标题而自定义的。应当注意,“位于中央”的系统可以包括地理上不同的组件(例如,服务器、数据中央等),其被配置成有效地促进在不同地理区域中所描述的实施例——即,“位于中央”可以描述所描述的各实施例的功能和实现和/或系统的物理位置。实时队列状态更新由所描述的持久连接启用,这也提供了在没有主播/主持监督的情况下自动地管理队列的能力(例如,因无响应或离开流/大厅而将用户从队列中移除)。因此,等待加入会话的时间以及加入会话的用户交互的复杂性通过高效管理和处理用于会话参与的自动队列被大大降低,减少了主持/主播和客户端设备、服务平台本身的处理需求,进一步降低网络话务。即,对提交加入会话的请求的用户进行排队、确定会话的开始、并然后自动地将预定数量的经排队的用户插入会话以发起活跃会话的被管理功能减少对所涉及的客户端设备和服务平台的处理,并且在它们之间需要更少的网络通信。附加地,确定先前活跃会话的完成,并基于该完成并在自动地将预定数量的经排队的用户插入会话之前自动地移除先前活跃会话的所有访客玩家,从而进一步提高用于如本文描述的队列管理的处理效率,并进一步减少网络通信。类似地,诸如响应于完结会话的一个或多个经移除的访客玩家的移除自动地对该一个或多个经移除的访客玩家进行重新排队、并自动地使离开活动群组的任何用户退出排队之类的进一步提高排队效率的管理提高了排队效率和操作,这进而对会话参与产生积极影响。

此外,所描述的各实施例不存在于用于通过管理会话跟踪和自动排队来改进在线内容流或活动的参与的软件实现中(例如,基于云的实现中)。

更进一步,实时队列状态信息在流传输期间被自动提供给主播/主持以及在经排队的用户经由访客UI观看内容流和/或等待会话参与时自动提供给经排队的用户而无需附加的输入,用户在适当的时间(例如,当确定会话开始时)从队列中被自动地插入会话,从而改进了UI功能和体验。附加地,主播/主持用户能够经由主持UI观看队列状态,队列随着会话自动地迭代从而允许主播/主持持续监视会话参与和流传输。

在本文中还构想,会话参与和/或性能可被链接到与被流传输的标题和/或所使用的游戏/流传输服务或平台相关联的奖励服务。奖励可包括但不限于徽章、皮肤、游戏内物品、经验值、游戏内解锁等。

本章节中描述的附加示例和实施例可适用于本公开的任何其他章节或子章节中公开的示例。

本文描述了会话排队系统。会话排队系统可以以各种方式配置和启用以通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与,如本文所描述的。会话排队系统包括一个或多个处理器以及存储将由该处理器执行的程序代码的一个或多个存储器。程序代码包括受众管理器、队列管理器和会话管理器。受众管理器被配置成通过将用户包括在活动群组中来将用户与主持玩家的活动(例如,游戏或视频流)相关联。队列管理器被配置成从活动群组中的用户的至少一个子集接收作为访客玩家加入活动的会话的请求,该会话包括与主持玩家一起参与活动;以及对提交加入会话的请求的用户进行排队。会话管理器配置成确定会话的开始;以及自动地将预定数量的经排队的用户插入会话以发起活跃会话。

在会话排队系统的一个实施例中,会话管理器被配置成跟踪在活跃会话之前发生的先前活跃会话;以及基于先前活跃会话的完成来确定该开始。

在会话排队系统的一个实施例中,会话管理器被配置成确定先前活跃会话的完成;以及基于该完成并在所述自动地将预定数量的经排队的用户插入会话之前,自动地移除先前活跃会话的所有访客玩家。

在会话排队系统的一个实施例中,会话管理器被配置成向预定数量的经排队的用户提供将其插入会话的通知;接收对通知的相应响应;以及基于相应响应自动地将预定数量的经排队的用户插入会话。

在会话排队系统的一个实施例中,队列管理器被配置成执行以下一者或多者:响应于完结会话的一个或多个经移除的访客玩家的移除自动地对该一个或多个经移除的访客玩家进行排队;自动地使离开活动群组的任何用户退出排队;或基于用户的特征对用户的排队进行优先级排序。

在会话排队系统的一个实施例中,程序代码进一步包括访客用户界面(UI)提供器,其配置成向活动群组中的用户提供访客UI,其中该访客UI包括以下至少一项:可选择对象,其在激活时提供加入视频流的会话的请求;凭证部分,其配置成用于验证用户的许可;对用户的队列位置的指示;或针对用户将作为访客玩家参与的活跃会话的初始化的提醒指示。

在会话排队系统的一个实施例中,程序代码进一步包括主持用户界面(UI)提供器,其配置成向主持玩家提供主持UI,该主持UI包括以下至少一项:可选择对象,其在激活时发起使得访客UI将被提供给活跃群组中的用户的会话模式;指定使活跃群组中的有资格用户加入视频流的会话的凭证的第一可配置对象;或指定藉此活跃群组中的用户在排队方面按优先级排序以加入视频流的会话的凭证的第二可配置对象。

还描述了一种在处理系统上执行的用于会话排队的方法。该方法通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与,如本文所描述的。该方法包括:从活动群组中的用户的至少一个子集接收作为访客玩家加入活动的会话的请求,该会话包括与主持玩家一起参与活动;以及对提交加入会话的请求的用户进行排队。该方法还包括:确定会话的开始,以及自动地将预定数量的经排队的用户插入会话以发起活跃会话。

在一实施例中,该方法进一步包括:跟踪在活跃会话之前发生的先前活跃会话;以及基于先前活跃会话的完成来确定该开始。

在一实施例中,该方法进一步包括:确定先前活跃会话的完成;以及基于该完成并在所述自动地将预定数量的经排队的用户插入会话之前,自动地移除先前活跃会话的所有访客玩家。

在一实施例中,该方法进一步包括:向该数量的经排队的用户提供将其插入会话的通知;接收对该通知的相应响应;以及还基于相应响应自动地将该数量的经排队的用户插入会话。

在一实施例中,该方法进一步包括以下至少一项:响应于完结会话的一个或多个经移除的访客玩家的移除自动地对该一个或多个经移除的访客玩家进行排队;自动地使离开活动群组的任何用户退出排队;或基于用户的特征对用户的排队进行优先级排序。

在一实施例中,该方法进一步包括:向活动群组中的每个用户提供访客用户界面(UI),该UI包括以下至少一项:可选择对象,其在激活时提供加入视频流的会话的请求;凭证部分,其配置成用于验证用户的许可;对用户的队列位置的指示;或针对用户将作为访客玩家参与的活跃会话的初始化的提醒指示。

在一实施例中,该方法进一步包括:向主持玩家提供主持用户界面(UI),该UI包括以下至少一项:可选择对象,其在激活时发起使得访客UI将被提供给活跃群组中的用户的会话模式;指定使有资格用户加入视频流的会话的凭证的第一可配置对象;或指定藉此用户在排队方面按优先级排序以加入视频流的会话的凭证的第二可配置对象。

本文还提供了一种其上记录有程序指令的计算机可读介质,该程序指令在由处理设备执行时,执行一种用于会话排队的方法。该方法通过管理会话跟踪和自动排队来增强在线内容流或活动中的参与,如本文所描述的。该方法包括:通过将用户包括在活动群组中来将用户与主持玩家的活动相关联;从活动群组中的用户的至少一个子集接收作为访客玩家加入活动的会话的请求,该会话包括与主持玩家一起参与活动。该方法还包括:对提交加入会话的请求的用户进行排队;确定会话的开始,以及自动地将预定数量的经排队的用户插入会话以发起活跃会话。

在该计算机可读存储介质的一实施例中,该方法进一步包括:跟踪在活跃会话之前发生的先前活跃会话;以及基于先前活跃会话的完成来确定该开始。

在该计算机可读存储介质的一实施例中,该方法进一步包括:确定先前活跃会话的完成,以及基于该完成并在所述自动地将预定数量的经排队的用户插入会话之前,自动地移除先前活跃会话的所有访客玩家。

在该计算机可读存储介质的一实施例中,该方法进一步包括:向该数量的经排队的用户提供将其插入会话的通知;接收对该通知的相应响应;以及还基于相应响应自动地将该数量的经排队的用户插入会话。

在该计算机可读存储介质的一实施例中,该方法进一步包括以下至少一项:响应于完结会话的一个或多个经移除的访客玩家的移除自动地对该一个或多个经移除的访客玩家进行排队;自动地使离开活动群组的任何用户退出排队;或基于用户的特征对用户的排队进行优先级排序。

在该计算机可读存储介质的一实施例中,该方法进一步包括:向活动群组中的用户提供访客用户界面(UI),该访客UI包括以下至少一项:可选择对象,其在激活时提供加入视频流的会话的请求;凭证部分,其配置成用于验证用户的许可;对用户的队列位置的指示;或针对用户将作为访客玩家参与的活跃会话的初始化的提醒指示。在一实施例中,该方法进一步包括向主持玩家提供主持UI,该主持UI包括以下至少一项:可选择对象,其在激活时发起使得访客UI将被提供给活跃群组中的每个用户的会话模式;指定使活跃群组中的有资格用户加入视频流的会话的凭证的第一可配置对象;或指定藉此活跃群组中的一个或多个用户在排队方面按优先级排序以加入视频流的会话的凭证的第二可配置对象。

V.结语

尽管上文描述了所公开的主题的各实施例,但是,应该理解,它们只是作为示例来呈现的,而不作为限制。(诸)相关领域的技术人员将理解,在不偏离如所附权利要求书所定义的各实施例的精神和范围的情况下,可以在形式和细节方面进行各种修改。相应地,所公开的主题的范围不应受到以上所描述的示例性实施例中的任一个的限制,而只应根据下面的权利要求及其等同物来限定。

相关技术
  • 用于增强在线多玩家会话中的参与的系统和方法
  • 用于管理在线会话中的参与者的方法和系统
技术分类

06120112364436