一种通过离线频道对用户分流的方法、系统及存储介质与流程

未命名 07-27 阅读:104 评论:0


1.本发明涉及虚拟与现实技术领域,特别涉及一种通过离线频道对用户分流的方法、系统及存储介质。


背景技术:

2.虚拟场景是一种数字化三维环境,由实时交互通信、虚拟现实等技术组合而成的。实时交互通信:利用公用通信网或互联网,并通过运行在计算机、智能终端等的客户端软件、浏览器等,为用户提供即时发送和接收消息(包括文本、图片、音视频)、文件等信息的服务。虚拟现实:虚拟现实是一种计算机技术,能够创建出一种仿真的环境,让用户感觉自己置身于其中。虚拟现实技术通常使用头戴式显示器和手柄等设备,以及专门的软件和硬件来实现。
3.在虚拟场景中,用户需要进行各种活动和交互,这些活动和交互需要与其他用户或系统进行通信,包括发送消息、获取信息、控制虚拟角色等等。而通过频道,用户可以实现与其他用户的实时通信,由频道将他们连接到虚拟场景中去,但是一个频道可供连接的客户端数量一定,因此在人数超过频道极限时,需要采用多个频道对用户进行分流,传统的分流方法一般采用先进入主频道再进行分流,当一次性进入主频道的人数较多时,会导致主频道通信压力大,频道网络峰值高也可能会导致卡顿,延迟,严重时会导致服务器宕机;而且传统方式在分流时需要进行切换频道操作,在切换频道时需要加载对应的场景内容,加载过程容易导致卡顿,切换过程生硬等较差的体验效果。


技术实现要素:

4.本发明的目的就在于为了解决上述用户分流方法容易导致主频道通信压力大以及频道切换过程体验感差的问题提出一种通过离线频道对用户分流的方法、系统及存储介质,具有利用离线频道减少通信压力,分流时仅切换通信接入通道,不容易卡顿,体验感更佳的优点。
5.第一方面,本发明通过以下技术方案来实现上述目的,一种通过离线频道对用户分流的方法,包括以下步骤:配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景;设置频道切换条件;客户端默认接入离线频道并加载虚拟场景,在所述虚拟场景中客户端的同步通信网络服务为关闭状态;检测到所述客户端满足频道切换条件后,切换所述客户端接入选定的平行空间频道,客户端的同步通信网络服务变为开启状态并连接到该平行空间频道对应的网络通道,处于该平行空间频道内的所有客户端相互之间信息同步。
6.优选的,所述频道切换条件是否满足的判断方法为:
预设计时器,并设置定时时间;在客户端加载完毕虚拟场景后,启动计时器;当计时器记录的时间到达定时时间时,输出满足频道切换条件的消息。
7.优选的,所述频道切换条件是否满足的判断方法为:在虚拟场景内设置地面检测区域;用户与所述地面检测区域之间进行碰撞检测;若检测到碰撞,输出满足频道切换条件的消息。
8.优选的,所述客户端的同步通信网络服务为关闭或开启状态的操作方法为:客户端向频道服务器发送接入频道的请求;频道服务器接收到请求后返回频道的标识信息,通过所述标识信息来识别频道类型和名称;若返回的是离线频道的标识信息,则客户端关闭自身的同步通信网络服务;若返回的是平行频道的标识信息,则客户端打开自身的同步通信网络服务。
9.优选的,所述切换所述客户端接入选定的平行空间频道的方法包括:预先在数据库中添加频道人员表,所述频道人员表中每个平行空间频道对应一组用户id;切换频道时,客户端向频道服务器发出进入新频道的请求消息,所述请求消息包括用户id;所述频道服务器通过数据库查找该用户id对应的平行空间频道,并将平行空间频道的标识信息返回给该平行空间频道;客户端使用标识信息接入平行空间频道。
10.优选的,所述切换所述客户端接入选定的平行空间频道的方法包括:根据配置完的若干平行空间频道生成频道列表,所述频道列表,所述频道列表用于客户端进入离线频道时保存;切换频道时,客户端向频道服务器按照所述频道列表的顺序依次询问频道内的人数;若当前询问的平行空间频道内的人数是在限额人数以内,则客户端接入该平行空间频道;反之,则询问下一个平行空间频道,直到询问到的平行空间频道内的人数是在限额人数以内,进行频道接入。
11.优选的,所述加载虚拟场景包括加载场景内容、用户的身份信息和虚拟角色形象。
12.第二方面,本发明通过以下技术方案来实现上述目的,一种通过离线频道对用户分流的系统,包括:频道服务器,所述频道服务器内包括:配置单元,用于配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景;接入单元,用于接收客户端的请求消息,并将频道的标识信息返回给客户端实现频道接入;客户端,所述客户端内包括:
场景加载单元,用于加载虚拟场景,包括场景内容、用户的身份信息和虚拟角色形象的加载;切换判断单元,用于检测是否满足频道切换条件;同步通信单元,用于开启或关闭同步通信网络服务。
13.优选的,所述同步通信单元启或关闭同步通信网络服务的方法包括:发送模块,用于向频道服务器发送接入频道的请求;接收模块,用于接收到频道服务器在接收到请求后返回的频道的标识信息;识别模块,用于通过所述标识信息来分辨接入的频道类型;开关模块,用于在识别出客户端接入离线频道时,关闭自身的同步通信网络服务,在识别出客户端接入平行频道时,打开自身的同步通信网络服务。
14.第三方面,本发明通过以下技术方案来实现上述目的,一种存储介质,其上存储有计算机程序,在所述计算机程序被处理器执行时,实现如第一方面所述的通过离线频道对用户分流的方法。
15.与现有技术相比,本发明的有益效果是:1、本发明利用离线频道来做为分流前的主频道缓冲使用,人员先进入离线频道再被分流进入平行空间频道,并且用户处于离线频道内时,客户端的同步通信网络服务处于关闭状态,无法进行消息同步功能,这样能有效的降低频道服务器的通信压力。
16.2、本发明在配置离线频道和平行空间频道时,将两种频道绑定同一个虚拟场景,并且客户端想要进入场景时,默认接入离线频道加载出虚拟场景,这样在后期切换频道时,无需加载虚拟场景,便可完成频道切换,切换起来无画面波动,不卡顿,体验感较好。
附图说明
17.图1为本发明的通过离线频道对用户分流的方法流程图。
18.图2为本发明的采用时间作为频道切换条件的方法流程图。
19.图3为本发明的采用地面检测作为频道切换条件的示意图。
20.图4为本发明的频道人员列表示意图。
21.图5为本发明的随机选择空闲平行空间频道接入的数据传输示意图。
22.图6为本发明的通过离线频道对用户分流的系统连接示意图。
实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.实施例1如图1所示,一种通过离线频道对用户分流的方法,包括以下步骤:分流开始前需要进行如下配置:配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景,通过频道服务器来进行频道配置,在配置频道时根据频道类型分为离线频
道和平行空间频道两种,根据频道的标识信息可以分辨是离线频道还是平行空间频道,离线频道仅配置一个,平行空间频道可根据需求来配置多个,所有频道均绑定同一个虚拟场景,这样客户端无论接入哪一个频道,加载出的场景内容都相同,这样在切换接入的频道的时候,无需再进行场景加载,从客户端角度来说,不必加载场景内容,减少卡顿的情况产生,从用户的角度来说,没有场景画面的切换,能避免突兀感和过渡动画带来的生硬感,让用户体验感更好。
25.设置频道切换条件,客户端想要进入虚拟场景并与其他客户端进行交互,需要通过接入频道实现同步交互功能,频道服务器配置的离线频道作为主频道,平行空间频道作为副频道,通过主频道再到各个副频道实现分流操作,因此客户端先进入主频道,再被分流到副频道这一过程是一个具有先后顺序,频道切换条件作为先后顺序的触发条件,是为了判断接入主频道的客户端是否可以分流道副频道中,频道切换条件由客户端进行设置,也在客户端上进行频道切换条件是否满足的检测。
26.分流过程中与频道服务器之间的交互如下:客户端默认接入离线频道并加载虚拟场景,在所述虚拟场景中客户端的同步通信网络服务为关闭状态,离线频道作为主频道,在客户端想要接入频道时,会向频道服务器发出一个接入请求,频道服务器收到请求只返回离线频道的标识信息,以供客户端接入,实现了客户端默认接入离线频道的操作,在客户端处于接入离线频道的状态时,它的同步通信网络服务为关闭状态,因此在离线频道下,客户端仅加载本地的虚拟场景,无法进行同步操作,所述加载虚拟场景包括加载场景内容、用户的身份信息和虚拟角色形象,所以用户只能看到虚拟场景的静态内容,虽然操控虚拟角色可以走动或者与场景内的功能进行交互,但仅为单机操作,无法观看到其他角色进入到该虚拟场景。
27.检测到所述客户端满足频道切换条件后,切换所述客户端接入选定的平行空间频道,客户端的同步通信网络服务变为开启状态并连接到该平行空间频道对应的网络通道,处于该平行空间频道内的所有客户端相互之间信息同步,客户端实时进行频道切换条件检测,在满足频道切换条件后,又向频道服务器发出接入副频道的请求,频道服务器收到请求后返回选定好的平行空间频道的标识信息,以供客户端接入,这里的选定好的是指频道服务器筛选出的合适的空间频道。在客户端处于接入平行空间频道的状态时,它的同步通信网络服务为开启状态,而且连接到了平行空间频道的网通通道中,用户此时从单机操作变为联机操作,虚拟角色在虚拟场景中的动作可以同步给其他客户端,别的客户端同样能看到该虚拟角色的动作。若空间频道之间数据可以同步,那么客户端不仅仅可以与同一平行空间频道中的其他客户端进行同步交互,还可以与所有平行空间频道中的客户端进行交互同步,频道间的数据同步属于较为成熟的现有技术,因此不再赘述其具体原理。
28.同步通信网络服务的状态由客户端根据接入的频道类型来选择开启或关闭自身的同步通信单元,所述客户端的同步通信网络服务为关闭或开启状态的操作方法为:客户端向频道服务器发送接入频道的请求,无论客户端接入离线频道或者平行空间频道,均需要通过向频道服务器发出接入请求来通知频道服务器;频道服务器接收到请求后返回频道的标识信息,通过所述标识信息来识别频道类型,标识信息是在频道服务器配置频道时生成的信息,相当于频道的身份,根据标识信息可以了解到频道的名称、类型、容纳人数以及配置参数等;
若返回的是离线频道的标识信息,则客户端关闭自身的同步通信网络服务;若返回的是平行频道的标识信息,则客户端打开自身的同步通信网络服务。
29.在上述的设置频道切换条件中,若采用时间作为频道切换条件,那么如图2所示,所述频道切换条件是否满足的判断方法为:步骤s1、预设计时器,并设置定时时间,通过计时器实时进行本地的时间计算,定时时间用作比较使用,通常可设置为1-2s;步骤s2、在客户端加载完毕虚拟场景后,启动计时器,客户端加载完毕后给计时器一个启动指令,用来开启计时器工作;步骤s3、在计时器开始工作时,客户端实时进行时间检测,记录计时器的计时时间;步骤s4、将计时器记录的计时时间与计时器的定时时间进行对比,若计时时间大于定时时间,则执行步骤s5,反之则继续执行步骤s3;步骤s5、输出满足频道切换条件的消息,该消息用来客户端判断已达到频道切换条件。
30.如图3所示,设置频道切换条件还有一种实施方式,与时间作为频道切换条件不同,该方式采用地面检测作为频道切换条件,所述频道切换条件是否满足的判断方法为:在虚拟场景100内设置地面检测区域101,地面检测区域101可以划分成任意形状,也可以是任意模型,例如设计地面检测区域101为一个门样式的模型;用户102与所述地面检测区域101之间进行碰撞检测,用户102在没有接触地面检测区域101时,检测不到碰撞消息,像图3中所示的,在用户102走向地面检测区域101的时候,才会被检测到碰撞;若检测到碰撞,输出满足频道切换条件的消息,与上述频道切换条件不同之处在于,上述采用时间作为切换条件类似于强制分流,只要达到时间,则将客户端分配到平行空间频道中,而本方式客户端采用自主选择的方式,只要用户102不主动接触到地面检测区域101,则不会被分流到平行空间频道中。
31.选定的平行空间频道为频道服务器选择的合适的平行空间频道,所述切换所述客户端接入选定的平行空间频道的方法包括:预先在数据库中添加频道人员表,所述频道人员表中每个平行空间频道对应一组用户id,如图4所示,每个平行空间频道都对应一个用户组,用户组中有用户名称和用户id;切换频道时,客户端向频道服务器发出进入新频道的请求消息,所述请求消息包括用户id,用户id跟随请求消息一起发出,由于每个用户具有唯一的用户id,所以通过用户id可以作为查找词条使用;所述频道服务器通过数据库查找该用户id对应的平行空间频道,并将平行空间频道的标识信息返回给该平行空间频道,根据用户id可以查找到该用户id所属于的用户组,用户组对应的平行空间频道则为选定的平行空间频道;客户端使用标识信息接入平行空间频道。
32.与通过预先添加频道人员表这种选定平行空间频道的方式不同,还可以选择不预先添加频道人员表,随机选择空闲平行空间频道接入的方式,所述切换所述客户端接入选定的平行空间频道的方法包括:
根据配置完的若干平行空间频道生成频道列表,所述频道列表,所述频道列表用于客户端进入离线频道时保存,频道列表在频道服务器配置频道时生成,并在客户端进入离线频道时,由频道服务器发送给客户端,频道列表中存储有所有平行空间频道的标识信息;切换频道时,客户端向频道服务器按照所述频道列表的顺序依次询问频道内的人数,频道服务器可以实时监控平行空间频道内的人数,并且在配置平行空间频道时,设定了每个平行空间频道的限额人数,用来限制接入数量,保证频道服务器的网络承受压力不会过大;若当前询问的平行空间频道内的人数是在限额人数以内,则客户端接入该平行空间频道。
33.反之,则询问下一个平行空间频道,直到询问到的平行空间频道内的人数是在限额人数以内,进行频道接入。如图5所示,平行空间频道1、平行空间频道2、平行空间频道3依次向频道服务器上传频道内人数,客户端依次向频道服务器发出接入请求,直到接收到平行空间频道3内人数未达到限额人数,客户端接入平行空间频道3,利用上述方法,无需提前将用户分配到指定平行空间频道,采用随机的方式可适合新用户的分流。
34.实施例2如图6所示,一种通过离线频道对用户分流的系统,包括:频道服务器,所述频道服务器内包括:配置单元,用于配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景,在配置频道时,每个配置完毕的频道都会生成标识信息,标识信息相当于频道的身份,根据标识信息可以了解到频道的名称、类型、容纳人数以及配置参数等,离线频道仅配置一个,平行空间频道可根据需求来配置多个;接入单元,用于接收客户端的请求消息,并将频道的标识信息返回给客户端实现频道接入,默认向客户端返回离线频道的标识信息,离线频道作为主频道,客户端默认接入,再被分流到其他的平行空间频道内;客户端,所述客户端内包括:场景加载单元,用于加载虚拟场景,包括场景内容、用户的身份信息和虚拟角色形象的加载;切换判断单元,用于检测是否满足频道切换条件,第一种,所述频道切换条件是否满足的判断方法为:预设计时器,并设置定时时间;在客户端加载完毕虚拟场景后,启动计时器;当计时器记录的时间到达定时时间时,输出满足频道切换条件的消息。
35.第二种,所述频道切换条件是否满足的判断方法为:在虚拟场景内设置地面检测区域;用户与所述地面检测区域之间进行碰撞检测;若检测到碰撞,输出满足频道切换条件的消息;同步通信单元,用于开启或关闭同步通信网络服务。
36.所述同步通信单元启或关闭同步通信网络服务的方法包括:
发送模块,用于向频道服务器发送接入频道的请求;接收模块,用于接收到频道服务器在接收到请求后返回的频道的标识信息;识别模块,用于通过所述标识信息来分辨接入的频道类型;开关模块,用于在识别出客户端接入离线频道时,关闭自身的同步通信网络服务,在识别出客户端接入平行频道时,打开自身的同步通信网络服务。
37.上述实施例2和实施例1本质相同,因此不再赘述各部分模块单元的原理。
38.实施例3本实施例提出了一种存储介质,存储介质包括存储程序区和存储数据区,其中存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。计算机程序存储在存储程序区,在所述计算机程序被处理器执行时,实现如实施例1所述的通过离线频道对用户分流的方法。处理器可以包括一个或多个中央处理单元(centralprocessingunit,cpu)或者为数字处理单元等等。
39.对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
40.此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

技术特征:
1.一种通过离线频道对用户分流的方法,其特征在于,包括以下步骤:配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景;设置频道切换条件;客户端默认接入离线频道并加载虚拟场景,在所述虚拟场景中客户端的同步通信网络服务为关闭状态;检测到所述客户端满足频道切换条件后,切换所述客户端接入选定的平行空间频道,客户端的同步通信网络服务变为开启状态并连接到该平行空间频道对应的网络通道,处于该平行空间频道内的所有客户端相互之间信息同步。2.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述频道切换条件是否满足的判断方法为:预设计时器,并设置定时时间;在客户端加载完毕虚拟场景后,启动计时器;当计时器记录的时间到达定时时间时,输出满足频道切换条件的消息。3.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述频道切换条件是否满足的判断方法为:在虚拟场景内设置地面检测区域;用户与所述地面检测区域之间进行碰撞检测;若检测到碰撞,输出满足频道切换条件的消息。4.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述客户端的同步通信网络服务为关闭或开启状态的操作方法为:客户端向频道服务器发送接入频道的请求;频道服务器接收到请求后返回频道的标识信息,通过所述标识信息来识别频道类型;若返回的是离线频道的标识信息,则客户端关闭自身的同步通信网络服务;若返回的是平行频道的标识信息,则客户端打开自身的同步通信网络服务。5.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述切换所述客户端接入选定的平行空间频道的方法包括:预先在数据库中添加频道人员表,所述频道人员表中每个平行空间频道对应一组用户id;切换频道时,客户端向频道服务器发出进入新频道的请求消息,所述请求消息包括用户id;所述频道服务器通过数据库查找该用户id对应的平行空间频道,并将平行空间频道的标识信息返回给该平行空间频道;客户端使用标识信息接入平行空间频道。6.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述切换所述客户端接入选定的平行空间频道的方法包括:根据配置完的若干平行空间频道生成频道列表,所述频道列表,所述频道列表用于客户端进入离线频道时保存;切换频道时,客户端向频道服务器按照所述频道列表的顺序依次询问频道内的人数;
若当前询问的平行空间频道内的人数是在限额人数以内,则客户端接入该平行空间频道;反之,则询问下一个平行空间频道,直到询问到的平行空间频道内的人数是在限额人数以内,进行频道接入。7.根据权利要求1所述的通过离线频道对用户分流的方法,其特征在于,所述加载虚拟场景包括加载场景内容、用户的身份信息和虚拟角色形象。8.一种通过离线频道对用户分流的系统,其特征在于,包括:频道服务器,所述频道服务器内包括:配置单元,用于配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景;接入单元,用于接收客户端的请求消息,并将频道的标识信息返回给客户端实现频道接入,默认向客户端返回离线频道的标识信息;客户端,所述客户端内包括:场景加载单元,用于加载虚拟场景,包括场景内容、用户的身份信息和虚拟角色形象的加载;切换判断单元,用于检测是否满足频道切换条件;同步通信单元,用于开启或关闭同步通信网络服务。9.根据权利要求8所述的通过离线频道对用户分流的系统,其特征在于,所述同步通信单元启或关闭同步通信网络服务的方法包括:发送模块,用于向频道服务器发送接入频道的请求;接收模块,用于接收到频道服务器在接收到请求后返回的频道的标识信息;识别模块,用于通过所述标识信息来分辨接入的频道类型;开关模块,用于在识别出客户端接入离线频道时,关闭自身的同步通信网络服务,在识别出客户端接入平行频道时,打开自身的同步通信网络服务。10.一种存储介质,其特征在于,其上存储有计算机程序,在所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的通过离线频道对用户分流的方法。

技术总结
本发明公开了一种通过离线频道对用户分流的方法、系统及存储介质,属于虚拟与现实技术领域,该方法包括:配置离线频道和若干平行空间频道,将所述离线频道和所有平行空间频道绑定同一个虚拟场景;设置频道切换条件;客户端默认接入离线频道并加载虚拟场景,在所述虚拟场景中客户端的同步通信网络服务为关闭状态;检测到所述客户端满足频道切换条件后,切换所述客户端接入选定的平行空间频道,客户端的同步通信网络服务变为开启状态并连接到该平行空间频道对应的网络通道,处于该平行空间频道内的所有客户端相互之间信息同步。本发明利用离线频道来做为分流前的主频道缓冲使用,且在离线频道内无同步服务,有效地降低了服务器的通信压力。器的通信压力。器的通信压力。


技术研发人员:林红
受保护的技术使用者:南京维赛客网络科技有限公司
技术研发日:2023.06.20
技术公布日:2023/7/25
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐