基于多模块协同合作的即时通讯系统、方法及智能设备
文献发布时间:2024-04-18 20:02:40
技术领域
本公开实施例涉及即时通信技术领域,尤其涉及一种基于多模块协同合作的即时通讯系统、方法及智能设备。
背景技术
即时消息(Instant Messaging,IM),又称即时通信,是指可以在线时实交流的工具,也就是通常所说的在线聊天工具。广义的来说,即时消息包括网络聊天室、网络会议系统等与所有联机的通信;狭义的来说,即时消息是指由一组IM服务器控制下的通信。目前,许多项目需要多个开发人员共同协作开发,一些大型会议也需要多个成员同时参会,在上述场景中经常会用到即时通讯系统以提高协同合作效率。
应用于多人或多模块协同合作的即时通讯系统通常包括即时通讯客户端、协作服务器和即时通讯服务器。即时通讯客户端上运行有可实现多模块协同合作的即时通讯应用软件,即时通讯应用软件运行时会同时启动若干个业务模块,各个业务模块在知晓自身已掉线时通常会通过内部程序不断尝试与即时通讯服务器重新建立连接。但是,由于各个业务模块是通过同一账号登录的,在向协作服务器发起在线检查请求时基于其登录账号进行在线检查,因此,当其中某一个业务模块掉线时也无法及时查询到,并无法尝试与即时通信服务器重新建立连接,从而导致业务模块的在线率无法保证,整个即时通讯系统的可靠性较差。
发明内容
本公开实施例提供了一种基于多模块协同合作的即时通讯系统、方法及智能设备,所述即时通讯系统能够检测各个业务模块是否在线,可在业务模块掉线时及时将其重建并与即时通讯服务器建立连接,有助于提高业务模块的在线率,从而提高整个即时通讯系统的协同合作可靠性。
根据本公开实施例的第一方面,提供了一种基于多模块协同合作的即时通讯系统,所述即时通讯系统包括可相互通信的即时通讯客户端、协作服务器和即时通讯服务器;
所述即时通讯客户端上运行有在线检测模块,以及与所述在线检测模块相连接的若干个业务模块,各个所述业务模块通过所述即时通讯服务器与其他的所述业务模块建立即时通信实现协同合作;
每一所述业务模块均包括处理单元,以及和所述处理单元对应的业务单元,所述业务单元为即时通信单元,各个所述处理单元向所述在线检测模块发起与其相对应的所述业务单元的在线检测订阅请求;
所述在线检测模块监听各个所述处理单元发起的所述在线检测订阅请求,并根据所述在线检测订阅请求向所述协作服务器发起集中检测请求,然后向各个所述业务模块发起在线检测广播通知;
所述协作服务器接收所述集中检测请求,并向所述即时通讯服务器发送集中检测心跳包;
所述即时通讯服务器接收所述集中检测心跳包,并分别向所述即时通讯客户端上运行的各个业务模块发起心跳检测信息;
所述即时通讯客户端上的所述处理单元接收所述在线检测模块发起的在线检测广播通知后,若判定与其对应的所述业务单元已掉线则将已掉线的业务单元销毁,并重建新业务单元使所述新业务单元与所述即时通讯服务器建立即时通信连接。
根据本公开实施例的第二方面,提供了一种基于多模块协同合作的即时通信方法,应用于智能设备,包括以下步骤:
为各个所述业务模块的业务单元创建对应的处理单元,并创建与各个所述业务模块相连接的在线检测模块;
通过所述处理单元向所述在线检测模块发起与其对应的所述业务单元的在线检测订阅请求;
控制所述处理单元在接收所述在线检测模块发起的在线检测广播通知后判断所述业务单元是否已掉线,若所述处理单元判定与其对应的所述业务单元已掉线则将已掉线的业务单元销毁,并重建新业务单元使所述新业务单元与所述即时通讯服务器重新建立即时通信连接。
根据本公开实施例的第三方面,提供了一种智能设备,包括至少一个处理器和至少一个存储器;所述存储器与所述处理器电连接;
其中,所述存储器存有计算机程序,所述计算机程序适于由所述处理器加载并执行如上实施例记载的基于多模块协同合作的即时通信方法。
本公开实施例的上述技术方案,通过各个业务模块的处理单元向在线检测模块发起对应的业务单元的在线检测订阅请求,通过在线检测模块根据各个业务单元的在线检测订阅请求,统一向协作服务器发起集中检测请求,可以降低多个业务模块同时向协作服务器发起在线检测请求而给协作服务器带来的处理压力;通过即时通讯客户端上的业务模块的处理单元接收在线检测广播通知,并判断对应的业务单元是否掉线,若业务单元掉线则将其销毁并重建新业务单元,通过新业务单元与即时通讯服务器建立通信连接,从而保证了业务模块的业务单元的在线率,进而提高整个即时通讯系统的协同合作可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
为了更好地理解和实施,下面结合附图详细说明本公开的技术方案。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的即时通讯系统的结构示意图;
图2为本公开实施例提供的即时通讯系统各端之间的交互过程示意图;
图3为本公开实施例提供的发起集中检测请求方法的流程示意图;
图4为本公开实施例提供的发起集中检测请求方法的步骤S102的流程示意图;
图5为本公开实施例提供的发起集中检测请求方法的步骤S1022的流程示意图;
图6为本公开另一实施例提供的即时通讯系统各端之间的交互过程示意图;
图7为本公开实施例提供的基于多模块协同合作的即时通信方法的流程示意图;
图8为本公开一个实施例提供的智能设备的结构示意图。
图中部分标号说明:
100、即时通讯客户端;10、业务模块;11、业务单元;12、处理单元;20、在线检测模块;200、协作服务器;300、即时通讯服务器。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本公开实施例中,提供了一种即时通讯系统,该即时通讯系统能够检测各个业务模块是否在线,可在业务模块掉线时及时将其重建并与即时通讯服务器建立连接,有助于提高业务模块的在线率,从而提高整个即时通讯系统的协同合作可靠性。
请参阅图1,图1为本公开一个实施例提供的即时通讯系统的结构示意图。
所述即时通讯系统包括可相互通信的即时通讯客户端100、协作服务器200和即时通讯服务器300。
即时通讯客户端100可为智能手机、交互平板、会议平板、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal DigitalAssistant,PDA)等终端设备,终端还可以包括客户端,该客户端可以是即时通信客户端、或能够实现即时通信的浏览器客户端,本公开不做此限定。本公开中,即时通讯客户端100上安装有用于协同合作的即时通讯软件,或能够运行浏览器以打开即时通讯网页,用户可通过账号登录即时通讯软件或即时通讯网页与其他的用户进行即时通信,以实现协同合作项目的开发或协同合作会议的开展。
协作服务器200为协同合作会议或协同合作开发项目提供协作服务的中转服务器。协作服务器200可以是独立的物理服务器,物理服务器为计算机等智能设备。协作服务器200也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。协作服务器200可以通过有线或无线通信方式与即时通讯客户端100进行直接或间接地连接,本公开对此不加以限定。
即时通讯服务器300为能够为多个客户终端提供即时通信服务的中转服务器,即时通讯服务器300可以是独立的物理服务器,物理服务器为计算机等智能设备。即时通讯服务器300也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。即时通讯服务器300可以通过有线或无线通信方式与即时通讯客户端100进行直接或间接地连接,本公开对此不加以限定。
“IM技术”的全称为Instant Messaging(即时通讯技术),是一种可以让使用者在网络上建立某种私人聊天或实时交换信息的实时通讯技术,可应用于协同合作的项目开发或网络会议中。
请参阅图2,图2为本公开一个实施例提供的即时通讯系统各端之间的交互过程示意图。
所述即时通讯客户端100用于为用户提供服务端口,用户可以通过账号登录即时通讯客户端100上运行的即时通讯软件或即时通讯网页。所述即时通讯客户端100包括处理器、存储器和显示器,所述处理器存储有计算机程序和原始数据,所述处理器用于执行所述存储器中存储的计算机程序实现多用户之间的即时通讯,所述显示器用于接收处理器的显示信号显示即时通讯界面。
所述即时通讯客户端100上运行有在线检测模块20,以及与所述在线检测模块20相连接的若干个业务模块10,各个所述业务模块10通过所述即时通讯服务器300与其他的所述业务模块10建立即时通信实现协同合作。每一所述业务模块10均包括处理单元12,以及和所述处理单元12对应的业务单元11,所述业务单元11为即时通信单元,各个所述处理单元12向所述在线检测模块20发起与其相对应的所述业务单元11的在线检测订阅请求;所述在线检测模块20监听各个所述处理单元12发起的所述在线检测订阅请求,并根据所述在线检测订阅请求向所述协作服务器200发起集中检测请求,然后向各个所述业务模块10发起在线检测广播通知。
所述协作服务器200接收所述集中检测请求,并向所述即时通讯服务器300发送集中检测心跳包。
所述即时通讯服务器300接收所述集中检测心跳包,并分别向所述即时通讯客户端100上运行的各个业务模块10发起心跳检测信息,若业务模块10的业务单元11未接收到心跳检测消息则说明该业务单元11可能断线。
所述即时通讯客户端100上的所述处理单元12接收所述在线检测模块20发起的在线检测广播通知后,若判定与其对应的所述业务单元11已掉线则将已掉线的业务单元11销毁,并重建新业务单元11使所述新业务单元11与所述即时通讯服务器300重新建立即时通信连接。
本公开实施例的上述技术方案,通过各个业务模块10的处理单元12向在线检测模块20发起对应的业务单元11的在线检测订阅请求,通过在线检测模块20根据各个业务单元11的在线检测订阅请求,统一向协作服务器200发起集中检测请求,可以降低多个业务模块10同时向协作服务器200发起在线检测请求而给协作服务器200带来的处理压力;通过即时通讯客户端100上的业务模块10的处理单元12接收在线检测广播通知,并判断对应的业务单元11是否掉线,若业务单元11掉线则将其销毁并重建新业务单元11,通过新业务单元11与即时通讯服务器300建立通信连接,从而保证了业务模块10的业务单元11的在线率,进而提高整个即时通讯系统的协同合作可靠性。
在一个可选的实施例中,所述在线检测模块20监听各个所述处理单元12发起的所述在线检测订阅请求,并根据所述在线检测订阅请求向所述协作服务器200发起集中检测请求,然后向各个所述业务模块10发起在线检测广播通知。
具体的,如图3所示,在线检测模块20向协作服务器200发起集中检测请求的方法,包括以下步骤:
S101:实时监听各个所述处理单元发起的与其相对应的所述业务单元的所述在线检测订阅请求。
在相关技术中,业务模块10具有业务单元11,业务单元11可以通过协作服务器200与外网的其他的业务单元11实现通信,若业务单元11出现断线时,通常由业务模块10中的检查器单元,即IM sdk不断尝试与协作服务器200重新建立连接,即业务单元11的重启依赖于IM sdk的内部强启动,外部模块无法将业务单元11销毁后重建,因此,业务单元11的在线率得不到保障。其中,检查器单元为一种运行在客户端(浏览器)的应用程序,该应用程序主要封装了用于和即时通讯服务器300进行websocket协议通道的建立和消息发送与接收相关的逻辑程序。
其中,WebSocket通信协议是一种在单个TCP连接上进行全双工通信的协议。WebSocket协议使得客户端和服务器之间的数据交换变得更加简单,允许服务器主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
本实施例中,业务模块10中新增了处理单元12,处理单元12与业务单元11绑定并相连接,处理单元12定时向在线检测模块20发起与其相关的业务单元11的在线检测订阅请求,以及时判断业务单元11是否断线。其中,处理单元12和业务单元11均属于同一业务模块10中的单元,因此,同一业务模块10下的处理单元12和业务单元11的模块标识号相同,即采用同一模块标识号进行身份标识,从而处理单元12可以基于所属的业务模块10的模块标识号向在线检测模块20发起在线检测订阅请求,以便于与其他的业务模块10发起的在线检测请求进行区分。
S102:基于预设时间间隔定时向所述协作服务器发起集中检测请求。
本实施例中,在线检测模块20收集各个业务模块10的处理单元12发起的在线检测订阅请求后,基于预设时间间隔统一定时向所述协作服务器200发起集中检测请求,能够防止多个业务模块10同时向协作服务器200发起心跳检测带来的数据处理压力,节约协作服务器200上的处理器资源。
在一个可选的实施例中,发起集中检测请求的方式可以为向协作服务器200发起集中检测心跳包。
如图4所示,S102:基于预设时间间隔定时向所述协作服务器200发起集中检测请求,可以通过以下步骤实现:
S1021:根据各个所述处理单元发起的所述在线检测订阅请求生成所述集中检测心跳包。
可选的,若各个所述处理单元12基于其所属的业务模块10的模块标识号向所述在线检测模块20发起在线检测订阅请求时,则集中检测心跳包中包括各个所述业务模块10的模块标识号以及在线检测请求事件,以便于协作服务器200及即时通讯服务器300向对应的业务模块10发起心跳检测信息。
S1022:基于预设时间间隔,定时基于Http请求向所述协作服务器发送所述集中检测心跳包。
以预设时间间隔向协作服务器200发起集中检测心跳包,能够防止多个业务模块10同时向协作服务器200发起心跳检测带来的数据处理压力,节约协作服务器200上的处理器资源。
预设时间间隔可以由发明人根据业务经验确定或根据业务需求设定,例如,预设时间间隔可以为25秒或30秒,本申请中不做具体时间间隔的限定。
在一个可选的实施例中,如图5所示,步骤S1022可以包括:
S10221:基于所述集中检测心跳包创建XML Http Request对象;
S10222:通过所述XML Http Request对象中的open函数为所述XML Http Request对象创建Http请求;
S10223:设置响应所述Http请求状态变化的函数,并设置获取所述协作服务器返回数据的语句;
S10224:将所述Http请求发送至所述协作服务器。
S103:发起集中检测请求后再向各个所述处理单元发起在线检测广播通知。
在线检测模块20向协作服务器200发起集中检测请求后再向各个处理单元12发起在线检测广播通知,以告知各个处理单元12的在线检测计时起始时间,有助于处理单元12及时判断是否接收到心跳检测信息,以判断对应的业务单元11是否在线。
在一个可选的实施例中,若所述在线检测广播通知包括所述集中检测请求的发起时间,
所述处理单元12判定与其对应的所述业务单元11掉线的方法,包括:
所述处理单元12接收所述在线检测模块20发起的在线检测广播通知后,基于在线检测广播通知中的集中检测请求的所述发起时间开始计时,若在预设时间阈值内未接收所述即时通讯服务器300发起的心跳检测信息,则判定与其对应的所述业务单元11已掉线。
在一个可选的实施例中,若各个所述处理单元12基于其所属的业务模块10的模块标识号向所述在线检测模块20发起在线检测订阅请求,则所述即时通讯服务器300接收所述集中检测心跳包,并分别向所述即时通讯客户端100上运行的各个业务模块10发起心跳检测信息,包括:
所述即时通讯服务器300接收所述集中检测心跳包,并基于所述集中检测心跳包中的模块标识号分别向所述即时通讯客户端100上运行的各个业务模块10的业务单元11发起心跳检测信息。
其中,向各个业务模块10的业务单元11发起的心跳检测信息可以为相同或不同的心跳检测信息,本实施例中不做限定。
在一个可选的实施例中,每一所述业务模块10的业务单元11与所述即时通讯服务器300基于WebSocket通信协议建立即时通信,与其他的业务模块10实现协同合作。
如图6所示,业务模块10可以为运行于即时通讯客户端100上多个客户端页面,如客户端页面A、客户端页面B、以及其他的客户端页面,每一个客户端页面上运行有业务模块10,业务模块10为IM实例,每一个IM实例均通过WebSocket通信通道与即时通讯服务器300建立连接,将即时消息发送至即时通讯服务器300,再由即时通讯服务器300将即时消息转发至其他客户端上的各个业务模块10。
在一个可选的实施例中,运行于同一即时通讯客户端100上的各个业务模块10为所述即时通讯系统下用于实现不同协同合作功能的业务模块10,如可以实现不同功能的IM实例。
本公开实施例的上述技术方案,通过各个业务模块10的处理单元12向在线检测模块20发起对应的业务单元11的在线检测订阅请求,通过在线检测模块20根据各个业务单元11的在线检测订阅请求,统一向协作服务器200发起集中检测请求,可以降低多个业务模块10同时向协作服务器200发起在线检测请求而给协作服务器200带来的处理压力;通过即时通讯客户端100上的业务模块10的处理单元12接收在线检测广播通知,并判断对应的业务单元11是否掉线,若业务单元11掉线则将其销毁并重建新业务单元11,通过新业务单元11与即时通讯服务器300建立通信连接,从而保证了业务模块10的业务单元11的在线率,进而提高整个即时通讯系统的协同合作可靠性。
本公开实施例还提出了一种基于多模块协同合作的即时通信方法,应用于智能设备。
智能设备可以是即时通讯客户端100,即时通讯客户端100可以为计算机、交互平板、会议平板、智慧黑板、智能手机等智能设备,即时通讯客户端100上安装有即时通讯软件,或者能够通过浏览器打开即时通讯网页。
请参阅图7,图7为本公开一个实施例提供的基于多模块协同合作的即时通信方法的流程示意图。
基于多模块协同合作的即时通信方法,应用于智能设备,包括以下步骤:
S701:为各个所述业务模块的业务单元创建对应的处理单元,并创建与各个所述业务模块相连接的在线检测模块;
S702:通过所述处理单元向所述在线检测模块发起与其对应的所述业务单元的在线检测订阅请求;
S703:控制所述处理单元在接收所述在线检测模块发起的在线检测广播通知后判断所述业务单元是否已掉线,若所述处理单元判定与其对应的所述业务单元已掉线则将已掉线的业务单元销毁,并重建新业务单元使所述新业务单元与所述即时通讯服务器重新建立即时通信连接。
本公开实施例的上述技术方案,通过各个业务模块10的处理单元12向在线检测模块20发起对应的业务单元11的在线检测订阅请求,通过在线检测模块20根据各个业务单元11的在线检测订阅请求,统一向协作服务器200发起集中检测请求,可以降低多个业务模块10同时向协作服务器200发起在线检测请求而给协作服务器200带来的处理压力;通过即时通讯客户端100上的业务模块10的处理单元12接收在线检测广播通知,并判断对应的业务单元11是否掉线,若业务单元11掉线则将其销毁并重建新业务单元11,通过新业务单元11与即时通讯服务器300建立通信连接,从而保证了业务模块10的业务单元11的在线率,进而提高整个即时通讯系统的协同合作可靠性。
本公开实施例还提出了一种智能设备。
智能设备包括至少一个处理器和至少一个存储器;所述存储器与所述处理器电连接;其中,所述存储器存有计算机程序,所述计算机程序适于由所述处理器加载并执行如上基于多模块协同合作的即时通信方法。
请参阅图8,图8为本公开一个实施例提供的智能设备的结构示意图。
智能设备可以包括:处理器101、存储器102以及存储在存储器102并可以在处理器101上运行的计算机程序103,例如:数据同步程序;处理器101执行计算机程序104时实现上述各方法实施例中的步骤。
其中,处理器101可以包括一个或多个处理核心。处理器101利用各种接口和线路连接运营端内的各个部分,通过运行或执行存储在存储器102内的指令、程序、代码集或指令集,以及调用存储器102内的数据,执行运营端的各种功能和处理数据,可选的,处理器101可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programble Logic Array,PLA)中的至少一个硬件形式来实现。处理器11业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块10业务模块100可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责触摸显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器101中,单独通过一块芯片进行实现。
其中,存储器102可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器102包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器102可用于存储指令、程序、代码、代码集或指令集。存储器102可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控指令等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器102可选的还可以是至少一个位于远离前述处理器101的存储装置。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元12中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
- 基于非合作目标协同测量方法及系统
- 一种基于邮件协议进行即时通讯的方法及系统
- 一种基于合作型协同进化算法的无人节点协同方法及系统
- 一种基于深度学习的多模块协同物体识别系统及方法