CN114827065B - 基于统一通信信道的实时通信方法及相关设备 - Google Patents
基于统一通信信道的实时通信方法及相关设备 Download PDFInfo
- Publication number
- CN114827065B CN114827065B CN202210471149.2A CN202210471149A CN114827065B CN 114827065 B CN114827065 B CN 114827065B CN 202210471149 A CN202210471149 A CN 202210471149A CN 114827065 B CN114827065 B CN 114827065B
- Authority
- CN
- China
- Prior art keywords
- message
- communication
- real
- communication channel
- time
- 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
Links
- 230000006854 communication Effects 0.000 title claims abstract description 543
- 238000004891 communication Methods 0.000 title claims abstract description 533
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012544 monitoring process Methods 0.000 claims abstract description 55
- 230000005540 biological transmission Effects 0.000 claims abstract description 26
- 239000012634 fragment Substances 0.000 claims description 40
- 238000012795 verification Methods 0.000 claims description 35
- 230000015654 memory Effects 0.000 claims description 25
- 230000011664 signaling Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 9
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 abstract description 16
- 238000012423 maintenance Methods 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 20
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000013467 fragmentation Methods 0.000 description 6
- 238000006062 fragmentation reaction Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 239000002131 composite material Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/10—Multimedia information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提出一种基于统一通信信道的实时通信方法、装置、电子设备及存储介质,基于统一通信信道的实时通信方法包括:基于不同会话类型的通信系统构建通信信道框架和各会话类型的消息插件,基于通信信道框架和消息插件构建实时通信系统;当用户登录实时通信系统时,调用通信信道框架为用户建立统一通信信道;调用消息插件以创建实时会话;当产生消息数据时,基于消息插件对消息数据进行分片以获取待发送消息;基于统一通信信道对待发送消息进行断点续传以获取通信结果;基于通信结果监测实时通信系统的运行情况以获取监测结果。本申请能够实现不同通信场景下资源的复用,减少了不同场景下通信系统开发的复杂度和调试维护成本,提高开发效率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种基于统一通信信道的实时通信方法、装置、电子设备及存储介质。
背景技术
在不同的通信场景下使用相同通信功能时,往往需要对不同场景中相同的通信功能进行重复性开发,导致代码和网络资源无法复用,同时,在测试过程中很难完全覆盖所有的通信场景。
目前业界的做法都是针对不同场景的各个通信系统进行独立开发,再从客户端UI界面上进行集成,然而,这种方式势必导致针对不同场景需要进行重复的定制开发,开发的复杂度成倍上升,造成网络和设备资源的浪费,通信系统的开发效率低下。
发明内容
鉴于以上内容,有必要提出一种基于统一通信信道的实时通信方法及相关设备,以解决如何提高通信系统开发效率这一技术问题,其中,相关设备包括基于统一通信信道的实时通信装置、电子设备及存储介质。
本申请提供基于统一通信信道的实时通信方法,所述方法包括:
基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型;
当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道;
依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话;
当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息;
基于所述统一通信信道对所述待发送消息进行传输以获取通信结果;
基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
在一些实施例中,所述基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,包括:
存储现有的不同会话类型的通信系统以构建通信系统集合;
提取所述通信系统集合中所有通信系统共同的功能组件以获取所有基础组件,将所有基础组件作为通信信道框架;
基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;
提取所述通信系统子集中所有通信系统除基础组件外共同的功能组件以获取每一个会话类型的消息插件;
基于所述通信信道框架和所有消息插件得到实时通信系统。
在一些实施例中,所述当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道,包括:
当用户登录所述实时通信系统时,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道;
每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据。
在一些实施例中,所述当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息,包括:
当实时会话中产生消息数据时,判断所述消息数据的大小是否大于预设阈值,所述预设阈值为所述统一通信信道中最大传输单元传输的数据大小;
若大于预设阈值,获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息;
若不大于预设阈值,则将所述消息数据作为待发送消息。
在一些实施例中,所述获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息,包括:
依据预设阈值对所述消息数据进行划分得到相同大小的分片数据;
依据分片数据在所述消息数据的位置关系为所有分片数据分配ID信息;
依据哈希算法对所述消息数据进行哈希处理获取验证值;
将所有分片数据和所述验证值作为所述消息数据的待发送消息。
在一些实施例中,所述基于所述统一通信信道对所述待发送消息进行传输以获取通信结果包括:
将所述待发送消息经所述统一通信信道上传至所述实时会话中的所有用户,当上传过程中出现上传中断时,获取中断时间点的上传进度作为上传断点,当被中断的上传任务再次开始时,基于所述上传断点继续进行待发送消息的上传;
所述实时会话中的用户经所述统一通信信道对所述待发送消息进行下载以获取接收数据,当下载过程中出现下载中断时,获取中断时间点的下载进度作为下载断点,当被中断的下载任务再次开始时,基于所述下载断点继续进行待发送消息的下载;
基于所述待发送消息的验证值判断所述接收数据是否完整,若不完整,则所述通信结果为失败;
若完整,则将所述接收数据作为消息数据,并获取用户的状态属性;
若用户的状态属性为在线时,将所述消息数据推送给所述用户并发出提醒,若成功发出提醒则所述通信结果为成功,否则所述通信结果为失败;
若用户的状态属性不为在线时,自动转离线消息推送,当所述用户的状态属性更改为在线时,若所述消息数据推送给所述用户并成功发出提醒,则所述通信结果为成功,否则所述通信结果为失败。
在一些实施例中,所述基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果包括:
基于所述通信结果监测统计所述实时通信系统的监测数据,所述监测数据包括消息送达率、在线送达率和离线送达率,所述消息送达率表示所有通信结果中所述通信结果为成功的占比,所述在线送达率为用户的状态属性为在线时采集的所有通信结果中所述通信结果为成功的占比;所述离线送达率为用户的状态属性不为在线时采集的所有通信结果中所述通信结果为成功的占比;
若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障。
本申请实施例还提供一种基于统一通信信道的实时通信装置,所述装置包括:
构建单元,用于基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型;
建立单元,用于当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道;
创建单元,用于依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话;
分片单元,用于当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息;
传输单元,基于所述统一通信信道对所述待发送消息进行传输以获取通信结果;
监测单元,用于基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
本申请实施例还提供一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;
处理器,执行所述存储器中存储的指令以实现所述的基于统一通信信道的实时通信方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现所述的基于统一通信信道的实时通信方法。
综上,本申请能够通过建立统一通信信道传输不同类型的消息数据,实现不同通信场景下通信资源的复用,基于统一通信信道可实现通信系统开发和维护,减少了不同场景下通信系统开发的复杂度和调试维护成本,提高了通信系统的开发效率。
附图说明
图1是本申请所涉及的基于统一通信信道的实时通信方法的较佳实施例的流程图。
图2是本申请所涉及的基于统一通信信道的实时通信装置的较佳实施例的功能模块图。
图3是本申请所涉及的基于统一通信信道的实时通信方法的较佳实施例的电子设备的结构示意图。
图4是本申请所涉及的实时通信系统的框架示意图。
具体实施方式
为了能够更清楚地理解本申请的目的、特征和优点,下面结合附图和具体实施例对本申请进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互结合。在下面的描述中阐述了很多具体细节以便于充分理解本申请,所述描述的实施例仅是本申请一部分实施例,而不是全部的实施例。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
本申请实施例提供一种基于统一通信信道的实时通信方法,可应用于一个或者多个电子设备中,电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
电子设备可以是任何一种可与客户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
电子设备还可以包括网络设备和/或客户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云。
电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
如图1所示,是本申请基于统一通信信道的实时通信方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S10,基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型。
在一个可选的实施例中,所述基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,包括:
存储现有的不同会话类型的通信系统以构建通信系统集合;
提取所述通信系统集合中所有通信系统共同的功能组件以获取所有基础组件,将所有基础组件作为通信信道框架;
基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;
提取所述通信系统子集中所有通信系统除基础组件外共同的功能组件以获取每一个会话类型的消息插件;
基于所述通信信道框架和所有消息插件得到实时通信系统。
该可选的实施例中,存储现有的不同会话类型的通信系统以构建通信系统集合,所述会话类型反映了所述通信系统中包含的消息类型,所述消息类型包括通信过程中需要传输的即时通信数据(Instant Messaging,IM)、在线文档数据、实时音视频数据(Realtime communication,RTC)等,所述会话类型与通信场景决定,所述通信系统包括多个功能组件,每一个功能组件可以独立完成固定的功能。示例性的,若一个通信系统中传输的消息类型为在线文档数据,则所述通信系统的会话类型为在线文档数据。
该可选的实施例中,存储所述通信系统集合中每一个通信系统的所有功能组件以获取功能组件集合;选取目标组件,所述目标组件为所述功能组件集合中所有功能组件中的任意一个;若所有通信系统均包含所述目标组件,则将所述目标组件标记为基础组件,所述基础组件是实现通信系统的必要组件;遍历所述功能组件集合中所有功能组件以获取所有基础组件,将所有基础组件作为通信信道框架,所述通信信道框架可以实现通信信息建立、维护通信信道可靠性等所有通信系统的基本功能。
该可选的实施例中,基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;获取相同通信系统子集中所有通信系统的功能组件以构建每一个会话类型的功能组件子集;从目标会话类型的功能组件子集中随机选取一个功能组件作为目标组件,所述目标会话类型为所有会话类型中的任意一个;若所述目标组件存在于所述目标会话类型的通信系统子集的所有通信系统中,则将所述目标组件标记为所述会话类型的初始必要组件,遍历所述目标会话类型的功能组件子集中每一个功能组件获取所述目标会话类型的所有初始必要组件,需要说明的是,所有初始必要组件中包括所有基础组件,将所有初始必要组件中的基础组件删除以获取所述目标会话类型的必要组件,将所述目标会话类型的必要组件作为所述目标会话类型的消息插件。
该可选的实施例中,按照上述的方法获取每一个会话类型的消息插件,将所有会话类型的消息插件与所述通信信道框架组合可以实现所有会话类型的通信系统的基本功能,故仅需要设定通信协议后即可基于所述通信信道框架和所有消息插件得到实时通信系统,所述实时通信系统中仅创建和维护一个通信信道即可实现多个会话类型的通信功能。其中,所述通信协议是指双方实体完成通信或服务所必须遵循的规则和约定,所述通信协议包括但不限于TCP/IP(Transport Control Protocol/Internet Protocol)、NETBEUI等,所述实时通信系统的框架示意图如图4所示。
如此,通过提取现有的各种通信系统中共同的功能组件得到通信信道框架和不同会话类型的消息插件,仅创建和维护一个通信信道即可实现多个会话类型的通信功能,实现通信系统开发代码和通信资源可复用,不重复建设,不浪费资源。
S11,当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道。
在一个可选的实施例中,所述当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道,包括:
当用户登录所述实时通信系统时,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道;
每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据。
该可选的实施例中,当用户所述实时通信系统成功登陆后,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道,所述统一通信信道用于传输不同类型的消息数据,所述统一通信信道将每一个用户与所述实时通信系统的通信服务器连接起来,当不同用户之间进行消息数据的传输时,消息数据需通过所述通信服务器才可以传输给其他用户。
该可选的实施例中,所述统一通信信道的建立方法还可以在不同用户之间直接建立统一通信信道,当不同用户之间进行消息数据的传输时,消息数据可直接通过用户之间的统一通信信道进行传输,不需要经过通信服务器。
该可选的实施例中,在所述统一通信信道建立完成后,每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据,可以使得所述统一通信信道的双方了解对方是否在线,确保统一通信信道连接的有效性,所述心跳信令不会影响通信系统中消息的传输。
如此,为所述实时通信系统中的用户创建统一通信信道,并基于心跳信令维持统一通信信道的有效连接。
S12,依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话。
在一个可选的实施例中,当用户有通信需求时,依据预设会话用户和预设会话类型调用预设会话类型的消息插件以创建实时会话,其中,所述预设会话类型与用户的通信需求有关,所述预设会话类型的数量可以为一个或多个,所述预设用户可以为一个或多个,所述预设会话用户和预设会话类型与用户的会话需求有关。
所述消息插件与会话类型一一对应,所述消息插件实现的功能包括但不限于:序列化消息数据、反序列化消息数据、过滤消息等,其中,所述序列化消息数据是指将所述消息数据转换为可以在通信信道中传输的序列数据,所述序列数据经所述反序列化消息数处理后又可以得到原始的消息数据;所述过滤消息是指依据预设关键词对不良消息进行屏蔽。
该可选的实施例中,所述实时会话中可以包括两个或两个以上的用户,同一个用户在相同时间可以加入多个不同的实时会话,也可以随时退出任意一个实时会话。在一个实时会话中,每个用户可以设置自己的状态属性,所述状态属性包括静音、隐身、在线等。
示例性的,当通信场景为会话类型1的单一应用场景时,在通信过程中只需要调用会话类型1的消息插件,然后就可以跟实时会话中的其他人通信;当通信场景为会话类型1+会话类型2的复合通信场景,在通信过程中需要调用会话类型1和会话类型2的消息插件,跟实时会话中的其他人通信时,会话类型1和会话类型2共用通信信道、用户状态属性、心跳信令。
如此,能够基于用户的需求调用消息插件,灵活的创建实时会话,并在一个实时会话中可以灵活设置用户属性,提高用户体验。
S13,当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息。
在一个可选的实施例中,所述当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息,包括:
当实时会话中产生消息数据时,判断所述消息数据的大小是否大于预设阈值,所述预设阈值为所述统一通信信道中最大传输单元传输的数据大小;
若大于预设阈值,获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息;
若不大于预设阈值,则将所述消息数据作为待发送消息。
该可选的实施例中,所述获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息包括:
依据预设阈值对所述消息数据进行划分得到相同大小的分片数据;
依据分片数据在所述消息数据的位置关系为所有分片数据分配ID信息;
依据哈希算法对所述消息数据进行哈希处理获取验证值;
将所有分片数据和所述验证值作为所述消息数据的待发送消息。
其中,在后续通信过程中,针对所述待发送消息中的分片数据和验证值进行传输,依据所述ID信息对所有分片数据进行组合即可以重构消息数据,所述验证值用于验证重构后的消息数据是否与原始消息数据一致,保证消息数据的准确性。
示例性的,假设所述消息类型为图片数据,则将所述图片数据划分为多个预设阈值大小的图像块,每一个图像块为一个分片数据;进一步基于每一个图像块在图片数据中行方向和纵方向的坐标位置(x,y)作为每一个分片数据的ID信息,依据哈希算法对所述图片数据进行哈希处理获取验证值,则将分片数据、分片数据的ID信息(x,y)以及验证值作为所述图片数据的待发送消息。
如此,能够将不同消息类型的消息数据划分为多个分片数据,并获取消息数据的验证值,针对数据量大的消息数据实现了数据量的划分,每一个分片数据的大小不大于统一通信信道中最大传输单元传输的数据量,保证了传输速度,为实现断点续传提供数据基础。
S14,基于所述统一通信信道对所述待发送消息进行传输以获取通信结果。
在一个可选的实施例中,获取待发送消息后,基于所述统一通信信道对所述待发送消息进行传输,所述待发送消息包括分片数据、消息数据的验证值以及每一个分片数据的ID信息。
该可选的实施例中,将所述待发送消息中分片数据、验证值以及每一个分片数据的ID信息经所述统一通信信道上传至所述实时会话中的所有用户;当上传过程中由于网络故障或用户操作导致上传中断时,获取中断时间点的上传进度作为上传断点;当被中断的上传任务再次开始时,基于所述上传断点继续进行待发送消息的上传,实现所述待发送消息上传过程的断点续传,避免出现消息数据的重复上传。
该可选的实施例中,当所述待发送消息上传后,所述实时会话中的用户需要对所述待发送消息进行下载以获取接收数据,所述接收数据包括用户已经下载的分片数据、验证值以及已经下载的分片数据的ID信息;当下载过程中由于网络故障或用户操作导致下载中断时,获取中断时间点的下载进度作为下载断点;当被中断的下载任务再次开始时,基于所述下载断点继续进行待发送消息的下载,实现所述待发送消息下载过程的断点续传,避免出现消息数据的重复下载。
该可选的实施例中,按照所述分片数据的ID信息对已经下载的分片数据进行组合得到重构消息,并基于哈希算法对所述重构消息进行哈希处理得到重构验证值;若所述重构验证值与验证值相同,则说明用户接收到了完整的消息数据;若所述重构验证值与验证值不同,则说明用户没有接收到完整的消息数据,持续进行下载过程;当下载过程持续时间超过预设时间阈值时,停止下载过程,所述通信结果为失败。
该可选的实施例中,当用户收到了完整的消息数据后,判断所述用户的状态属性,当所述用户的状态属性为在线时,将所述消息数据推送给所述用户并发出提醒,若成功发出提醒则所述通信结果为成功,否则所述通信结果为失败;若用户的状态属性不为在线时,自动转离线消息推送,当所述用户的状态属性更改为在线时,若所述消息数据推送给所述用户并成功发出提醒,则所述通信结果为成功,否则所述通信结果为失败。
如此,基于统一通信信道对不同类型的待发送消息进行传输,实现断点续传,避免出现消息数据重复上传和下载的情况,同时,不同类型的待发送消息共用一个通信信道,实现通信资源的复用。
S15,基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
在一个可选的实施例中,所述基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果包括:
基于所述通信结果监测统计所述实时通信系统的监测数据,所述监测数据包括消息送达率、在线送达率和离线送达率;
若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障。
在可选的实施例中,基于所述通信结果监测统计所述实时通信系统的消息送达率,所述消息送达率表示所有通信结果中所述通信结果为成功的占比,所述消息送达率满足关系式:
其中,Num为所有通信结果的数量,Num+为所有通信结果中所述通信结果为成功的数量;SD为所述消息送达率,取值范围为[0,1]。
进一步,根据用户的状态属性又可以将所述消息送达率拆分为在线送达率和离线送达率,所述在线送达率为用户的状态属性为在线时采集的所有通信结果中所述通信结果为成功的占比;所述离线送达率为用户的状态属性不为在线时采集的所有通信结果中所述通信结果为成功的占比。
该可选的实施例中,所述消息送达率、所述在线送达率和所述离线送达率可以准确反映所述实时通信系统的运行情况,将所述消息送达率、所述在线送达率和所述离线送达率作为监测数据,若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障,提醒人员进行维护,其中,所述预设阈值为0.8。
如此,能够基于通信结果实现所述实时通信系统的监测,确保实时通信系统的正常运行。
由以上技术方案可以看出,本申请能够通过建立统一通信信道传输不同类型的消息数据,实现不同通信场景下通信资源的复用,基于统一通信信道可实现通信系统开发和维护,减少了不同场景下通信系统开发的复杂度和调试维护成本,提高了通信系统的开发效率。
请参见图2,图2是本申请基于统一通信信道的实时通信装置的较佳实施例的功能模块图。基于统一通信信道的实时通信装置11包括构建单元110、建立单元111、创建单元112、分片单元113、传输单元114、监测单元115。本申请所称的模块/单元是指一种能够被处理器13所执行,并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
在一个可选的实施例中,构建单元110用于基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型。
在一个可选的实施例中,所述基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,包括:
存储现有的不同会话类型的通信系统以构建通信系统集合;
提取所述通信系统集合中所有通信系统共同的功能组件以获取所有基础组件,将所有基础组件作为通信信道框架;
基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;
提取所述通信系统子集中所有通信系统除基础组件外共同的功能组件以获取每一个会话类型的消息插件;
基于所述通信信道框架和所有消息插件得到实时通信系统。
该可选的实施例中,存储现有的不同会话类型的通信系统以构建通信系统集合,所述会话类型反映了所述通信系统中包含的消息类型,所述消息类型包括通信过程中需要传输的即时通信数据(Instant Messaging,IM)、在线文档数据、实时音视频数据(Realtime communication,RTC)等,所述会话类型与通信场景决定,所述通信系统包括多个功能组件,每一个功能组件可以独立完成固定的功能。示例性的,若一个通信系统中传输的消息类型为在线文档数据,则所述通信系统的会话类型为在线文档数据。
该可选的实施例中,存储所述通信系统集合中每一个通信系统的所有功能组件以获取功能组件集合;选取目标组件,所述目标组件为所述功能组件集合中所有功能组件中的任意一个;若所有通信系统均包含所述目标组件,则将所述目标组件标记为基础组件,所述基础组件是实现通信系统的必要组件;遍历所述功能组件集合中所有功能组件以获取所有基础组件,将所有基础组件作为通信信道框架,所述通信信道框架可以实现通信信息建立、维护通信信道可靠性等所有通信系统的基本功能。
该可选的实施例中,基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;获取相同通信系统子集中所有通信系统的功能组件以构建每一个会话类型的功能组件子集;从目标会话类型的功能组件子集中随机选取一个功能组件作为目标组件,所述目标会话类型为所有会话类型中的任意一个;若所述目标组件存在于所述目标会话类型的通信系统子集的所有通信系统中,则将所述目标组件标记为所述会话类型的初始必要组件,遍历所述目标会话类型的功能组件子集中每一个功能组件获取所述目标会话类型的所有初始必要组件,需要说明的是,所有初始必要组件中包括所有基础组件,将所有初始必要组件中的基础组件删除以获取所述目标会话类型的必要组件,将所述目标会话类型的必要组件作为所述目标会话类型的消息插件。
该可选的实施例中,按照上述的方法获取每一个会话类型的消息插件,将所有会话类型的消息插件与所述通信信道框架组合可以实现所有会话类型的通信系统的基本功能,故仅需要设定通信协议后即可基于所述通信信道框架和所有消息插件得到实时通信系统,所述实时通信系统中仅创建和维护一个通信信道即可实现多个会话类型的通信功能。其中,所述通信协议是指双方实体完成通信或服务所必须遵循的规则和约定,所述通信协议包括但不限于TCP/IP(Transport Control Protocol/Internet Protocol)、NETBEUI等,所述实时通信系统的框架示意图如图4所示。
在一个可选的实施例中,建立单元111用于当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道。
在一个可选的实施例中,所述当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道,包括:
当用户登录所述实时通信系统时,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道;
每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据。
该可选的实施例中,当用户所述实时通信系统成功登陆后,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道,所述统一通信信道用于传输不同类型的消息数据,所述统一通信信道将每一个用户与所述实时通信系统的通信服务器连接起来,当不同用户之间进行消息数据的传输时,消息数据需通过所述通信服务器才可以传输给其他用户。
该可选的实施例中,所述统一通信信道的建立方法还可以在不同用户之间直接建立统一通信信道,当不同用户之间进行消息数据的传输时,消息数据可直接通过用户之间的统一通信信道进行传输,不需要经过通信服务器。
该可选的实施例中,在所述统一通信信道建立完成后,每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据,可以使得所述统一通信信道的双方了解对方是否在线,确保统一通信信道连接的有效性,所述心跳信令不会影响通信系统中消息的传输。
在一个可选的实施例中,创建单元112用于依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话。
在一个可选的实施例中,当用户有通信需求时,依据预设会话用户和预设会话类型调用预设会话类型的消息插件以创建实时会话,其中,所述预设会话类型与用户的通信需求有关,所述预设会话类型的数量可以为一个或多个,所述预设用户可以为一个或多个,所述预设会话用户和预设会话类型与用户的会话需求有关。
所述消息插件与会话类型一一对应,所述消息插件实现的功能包括但不限于:序列化消息数据、反序列化消息数据、过滤消息等,其中,所述序列化消息数据是指将所述消息数据转换为可以在通信信道中传输的序列数据,所述序列数据经所述反序列化消息数处理后又可以得到原始的消息数据;所述过滤消息是指依据预设关键词对不良消息进行屏蔽。
该可选的实施例中,所述实时会话中可以包括两个或两个以上的用户,同一个用户在相同时间可以加入多个不同的实时会话,也可以随时退出任意一个实时会话。在一个实时会话中,每个用户可以设置自己的状态属性,所述状态属性包括静音、隐身、在线等。
示例性的,当通信场景为会话类型1的单一应用场景时,在通信过程中只需要调用会话类型1的消息插件,然后就可以跟实时会话中的其他人通信;当通信场景为会话类型1+会话类型2的复合通信场景,在通信过程中需要调用会话类型1和会话类型2的消息插件,跟实时会话中的其他人通信时,会话类型1和会话类型2共用通信信道、用户状态属性、心跳信令。
在一个可选的实施例中,分片单元113用于当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息。
在一个可选的实施例中,所述当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息,包括:
当实时会话中产生消息数据时,判断所述消息数据的大小是否大于预设阈值,所述预设阈值为所述统一通信信道中最大传输单元传输的数据大小;
若大于预设阈值,获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息;
若不大于预设阈值,则将所述消息数据作为待发送消息。
该可选的实施例中,所述获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息包括:
依据预设阈值对所述消息数据进行划分得到相同大小的分片数据;
依据分片数据在所述消息数据的位置关系为所有分片数据分配ID信息;
依据哈希算法对所述消息数据进行哈希处理获取验证值;
将所有分片数据和所述验证值作为所述消息数据的待发送消息。
其中,在后续通信过程中,针对所述待发送消息中的分片数据和验证值进行传输,依据所述ID信息对所有分片数据进行组合即可以重构消息数据,所述验证值用于验证重构后的消息数据是否与原始消息数据一致,保证消息数据的准确性。
示例性的,假设所述消息类型为图片数据,则将所述图片数据划分为多个预设阈值大小的图像块,每一个图像块为一个分片数据;进一步基于每一个图像块在图片数据中行方向和纵方向的坐标位置(x,y)作为每一个分片数据的ID信息,依据哈希算法对所述图片数据进行哈希处理获取验证值,则将分片数据、分片数据的ID信息(x,y)以及验证值作为所述图片数据的待发送消息。
在一个可选的实施例中,传输单元114基于所述统一通信信道对所述待发送消息进行传输以获取通信结果。
在一个可选的实施例中,获取待发送消息后,基于所述统一通信信道对所述待发送消息进行传输,所述待发送消息包括分片数据、消息数据的验证值以及每一个分片数据的ID信息。
该可选的实施例中,将所述待发送消息中分片数据、验证值以及每一个分片数据的ID信息经所述统一通信信道上传至所述实时会话中的所有用户;当上传过程中由于网络故障或用户操作导致上传中断时,获取中断时间点的上传进度作为上传断点;当被中断的上传任务再次开始时,基于所述上传断点继续进行待发送消息的上传,实现所述待发送消息上传过程的断点续传,避免出现消息数据的重复上传。
该可选的实施例中,当所述待发送消息上传后,所述实时会话中的用户需要对所述待发送消息进行下载以获取接收数据,所述接收数据包括用户已经下载的分片数据、验证值以及已经下载的分片数据的ID信息;当下载过程中由于网络故障或用户操作导致下载中断时,获取中断时间点的下载进度作为下载断点;当被中断的下载任务再次开始时,基于所述下载断点继续进行待发送消息的下载,实现所述待发送消息下载过程的断点续传,避免出现消息数据的重复下载。
该可选的实施例中,按照所述分片数据的ID信息对已经下载的分片数据进行组合得到重构消息,并基于哈希算法对所述重构消息进行哈希处理得到重构验证值;若所述重构验证值与验证值相同,则说明用户接收到了完整的消息数据;若所述重构验证值与验证值不同,则说明用户没有接收到完整的消息数据,持续进行下载过程;当下载过程持续时间超过预设时间阈值时,停止下载过程,所述通信结果为失败。
该可选的实施例中,当用户收到了完整的消息数据后,判断所述用户的状态属性,当所述用户的状态属性为在线时,将所述消息数据推送给所述用户并发出提醒,若成功发出提醒则所述通信结果为成功,否则所述通信结果为失败;若用户的状态属性不为在线时,自动转离线消息推送,当所述用户的状态属性更改为在线时,若所述消息数据推送给所述用户并成功发出提醒,则所述通信结果为成功,否则所述通信结果为失败。
在一个可选的实施例中,监测单元115用于基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
在一个可选的实施例中,所述基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果包括:
基于所述通信结果监测统计所述实时通信系统的监测数据,所述监测数据包括消息送达率、在线送达率和离线送达率;
若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障。
在可选的实施例中,基于所述通信结果监测统计所述实时通信系统的消息送达率,所述消息送达率表示所有通信结果中所述通信结果为成功的占比,所述消息送达率满足关系式:
其中,Num为所有通信结果的数量,Num+为所有通信结果中所述通信结果为成功的数量;SD为所述消息送达率,取值范围为[0,1]。
进一步,根据用户的状态属性又可以将所述消息送达率拆分为在线送达率和离线送达率,所述在线送达率为用户的状态属性为在线时采集的所有通信结果中所述通信结果为成功的占比;所述离线送达率为用户的状态属性不为在线时采态属性为离线时采集的所有通信结果中所述通信结果为成功的占比。
该可选的实施例中,所述消息送达率、所述在线送达率和所述离线送达率可以准确反映所述实时通信系统的运行情况,将所述消息送达率、所述在线送达率和所述离线送达率作为监测数据,若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障,提醒人员进行维护,其中,所述预设阈值为0.8。
由以上技术方案可以看出,本申请能够通过建立统一通信信道传输不同类型的消息数据,实现不同通信场景下通信资源的复用,基于统一通信信道可实现通信系统开发和维护,减少了不同场景下通信系统开发的复杂度和调试维护成本,提高了通信系统的开发效率。
请参见图3,是本申请实施例提供的一种电子设备的结构示意图。电子设备1包括存储器12和处理器13。存储器12用于存储计算机可读指令,处理器13用执行所述储器中存储的计算机可读指令以实现上述任一实施例所述的基于统一通信信道的实时通信方法。
在一个可选的实施例中,电子设备1还包括总线、存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如基于统一通信信道的实时通信程序。
图3仅示出了具有存储器12和处理器13的电子设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
结合图1,电子设备1中的所述存储器12存储多个计算机可读指令以实现一种基于统一通信信道的实时通信方法,所述处理器13可执行所述多个指令从而实现:
基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型;
当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道;
依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话;
当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息;
基于所述统一通信信道对所述待发送消息进行传输以获取通信结果;
基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,电子设备1可以是总线型结构,也可以是星形结构,电子设备1还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置,例如电子设备1还可以包括输入输出设备、网络接入设备等。
需要说明的是,电子设备1仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
其中,存储器12至少包括一种类型的可读存储介质,所述可读存储介质可以是非易失性的,也可以是易失性的。所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器12在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。存储器12在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。存储器12不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如基于统一通信信道的实时通信程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器13在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。处理器13是电子设备1的控制核心(Control Unit),利用各种接口和线路连接整个电子设备1的各个部件,通过运行或执行存储在所述存储器12内的程序或者模块(例如执行基于统一通信信道的实时通信程序等),以及调用存储在所述存储器12内的数据,以执行电子设备1的各种功能和处理数据。
所述处理器13执行所述电子设备1的操作系统以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个基于统一通信信道的实时通信方法实施例中的步骤,例如图1所示的步骤。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机程序在电子设备1中的执行过程。例如,所述计算机程序可以被分割成构建单元110、建立单元111、创建单元112、分片单元113、传输单元114、监测单元115。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、计算机设备,或者网络设备等)或处理器(Processor)执行本申请各个实施例所述的基于统一通信信道的实时通信方法的部分。
电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指示相关的硬件设备来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存储器及其他存储器等。
进一步地,计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,在图3中仅用一根箭头表示,但并不表示仅有一根总线或一种类型的总线。所述总线被设置为实现所述存储器12以及至少一个处理器13等之间的连接通信。
本申请实施例还提供一种计算机可读存储介质(图未示),计算机可读存储介质中存储有计算机可读指令,计算机可读指令被电子设备中的处理器执行以实现上述任一实施例所述的基于统一通信信道的实时通信方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。说明书陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。
Claims (9)
1.一种基于统一通信信道的实时通信方法,其特征在于,所述方法包括:
基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型;
当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道;
依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话;
当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息;
基于所述统一通信信道对所述待发送消息进行传输以获取通信结果;
基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果;
所述基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,包括:
存储现有的不同会话类型的通信系统以构建通信系统集合;
提取所述通信系统集合中所有通信系统共同的功能组件以获取所有基础组件,将所有基础组件作为通信信道框架;
基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;
提取所述通信系统子集中所有通信系统除基础组件外共同的功能组件以获取每一个会话类型的消息插件;
基于所述通信信道框架和所有消息插件得到实时通信系统。
2.如权利要求1所述的基于统一通信信道的实时通信方法,其特征在于,所述当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道,包括:
当用户登录所述实时通信系统时,调用所述实时通信系统中的通信信道框架为用户建立统一通信信道;
每隔固定时间发送心跳信令以维持所述统一通信信道的连接,所述心跳信令为预设数据。
3.如权利要求1所述的基于统一通信信道的实时通信方法,其特征在于,所述当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息,包括:
当实时会话中产生消息数据时,判断所述消息数据的大小是否大于预设阈值,所述预设阈值为所述统一通信信道中最大传输单元传输的数据大小;
若大于预设阈值,获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息;
若不大于预设阈值,则将所述消息数据作为待发送消息。
4.如权利要求3所述的基于统一通信信道的实时通信方法,其特征在于,所述获取所述消息数据的消息类型,并调用所述消息类型的消息插件对所述消息数据进行分片以获取待发送消息,包括:
依据预设阈值对所述消息数据进行划分得到相同大小的分片数据;
依据分片数据在所述消息数据的位置关系为所有分片数据分配ID信息;
依据哈希算法对所述消息数据进行哈希处理获取验证值;
将所有分片数据和所述验证值作为所述消息数据的待发送消息。
5.如权利要求1所述的基于统一通信信道的实时通信方法,其特征在于,所述基于所述统一通信信道对所述待发送消息进行传输以获取通信结果包括:
将所述待发送消息经所述统一通信信道上传至所述实时会话中的所有用户,当上传过程中出现上传中断时,获取中断时间点的上传进度作为上传断点,当被中断的上传任务再次开始时,基于所述上传断点继续进行待发送消息的上传;
所述实时会话中的用户经所述统一通信信道对所述待发送消息进行下载以获取接收数据,当下载过程中出现下载中断时,获取中断时间点的下载进度作为下载断点,当被中断的下载任务再次开始时,基于所述下载断点继续进行待发送消息的下载;
基于所述待发送消息的验证值判断所述接收数据是否完整,若不完整,则所述通信结果为失败;
若完整,则将所述接收数据作为消息数据,并获取用户的状态属性;
若用户的状态属性为在线时,将所述消息数据推送给所述用户并发出提醒,若成功发出提醒则所述通信结果为成功,否则所述通信结果为失败;
若用户的状态属性不为在线时,自动转离线消息推送,当所述用户的状态属性更改为在线时,若所述消息数据推送给所述用户并成功发出提醒,则所述通信结果为成功,否则所述通信结果为失败。
6.如权利要求1所述的基于统一通信信道的实时通信方法,其特征在于,所述基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果包括:
基于所述通信结果监测统计所述实时通信系统的监测数据,所述监测数据包括消息送达率、在线送达率和离线送达率,所述消息送达率表示所有通信结果中所述通信结果为成功的占比,所述在线送达率为用户的状态属性为在线时采集的所有通信结果中所述通信结果为成功的占比;所述离线送达率为用户的状态属性不为在线时采集的所有通信结果中所述通信结果为成功的占比;
若所述监测数据中任意一个数值小于预设阈值,则说明所述实时通信系统中消息数据传输异常,所述监测结果为故障。
7.一种基于统一通信信道的实时通信装置,其特征在于,所述装置包括:
构建单元,用于基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,所述基于不同会话类型的通信系统构建通信信道框架和每一个会话类型的消息插件,并基于所述通信信道框架和所有消息插件构建实时通信系统,所述会话类型反映通信系统中包含的消息类型,包括:
存储现有的不同会话类型的通信系统以构建通信系统集合;
提取所述通信系统集合中所有通信系统共同的功能组件以获取所有基础组件,将所有基础组件作为通信信道框架;
基于所述会话类型筛选所述通信系统集合以获取每一个会话类型的通信系统子集;
提取所述通信系统子集中所有通信系统除基础组件外共同的功能组件以获取每一个会话类型的消息插件;
基于所述通信信道框架和所有消息插件得到实时通信系统;
建立单元,用于当用户登录所述实时通信系统时,调用通信信道框架为用户建立统一通信信道;
创建单元,用于依据预设会话用户和预设会话类型调用所述消息插件以创建实时会话;
分片单元,用于当所述实时会话中产生消息数据时,基于所述消息插件对所述消息数据进行分片以获取待发送消息;
传输单元,基于所述统一通信信道对所述待发送消息进行传输以获取通信结果;
监测单元,用于基于所述通信结果监测所述实时通信系统的运行情况以获取监测结果。
8.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储有计算机可读指令;及
处理器,执行所述存储器中存储的计算机可读指令以实现如权利要求1至6中任意一项所述的基于统一通信信道的实时通信方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至6中任一项所述的基于统一通信信道的实时通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210471149.2A CN114827065B (zh) | 2022-04-28 | 2022-04-28 | 基于统一通信信道的实时通信方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210471149.2A CN114827065B (zh) | 2022-04-28 | 2022-04-28 | 基于统一通信信道的实时通信方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114827065A CN114827065A (zh) | 2022-07-29 |
CN114827065B true CN114827065B (zh) | 2024-02-23 |
Family
ID=82509724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210471149.2A Active CN114827065B (zh) | 2022-04-28 | 2022-04-28 | 基于统一通信信道的实时通信方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114827065B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102090075A (zh) * | 2008-07-24 | 2011-06-08 | 三星电子株式会社 | 执行iptv通信服务的方法和设备 |
CN109101403A (zh) * | 2018-08-24 | 2018-12-28 | 浪潮软件股份有限公司 | 一种对移动端产生sql进行实时监控的方法及系统 |
CN109151006A (zh) * | 2018-08-08 | 2019-01-04 | 中国电子科技集团公司第二十八研究所 | 一种以数据为中心的分布式实时会话管理方法 |
CN112422497A (zh) * | 2020-09-03 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 消息传递方法、装置及计算机设备 |
CN112751748A (zh) * | 2020-12-28 | 2021-05-04 | 百果园技术(新加坡)有限公司 | 会话消息管理方法、装置、服务器和可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8065219B2 (en) * | 2001-06-13 | 2011-11-22 | Sungard Energy Systems Inc. | System architecture and method for energy industry trading and transaction management |
WO2009035694A1 (en) * | 2007-09-13 | 2009-03-19 | Lockheed Martin Corporation | Facility wide mixed mail sorting and/or sequencing system and components and methods thereof |
US8787234B2 (en) * | 2009-06-23 | 2014-07-22 | Qualcomm Incorporated | Multicasting within a wireless communications system |
CN109548175B (zh) * | 2017-08-15 | 2021-11-19 | 华为技术有限公司 | 一种会话处理方法及装置 |
-
2022
- 2022-04-28 CN CN202210471149.2A patent/CN114827065B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102090075A (zh) * | 2008-07-24 | 2011-06-08 | 三星电子株式会社 | 执行iptv通信服务的方法和设备 |
CN109151006A (zh) * | 2018-08-08 | 2019-01-04 | 中国电子科技集团公司第二十八研究所 | 一种以数据为中心的分布式实时会话管理方法 |
CN109101403A (zh) * | 2018-08-24 | 2018-12-28 | 浪潮软件股份有限公司 | 一种对移动端产生sql进行实时监控的方法及系统 |
CN112422497A (zh) * | 2020-09-03 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 消息传递方法、装置及计算机设备 |
CN112751748A (zh) * | 2020-12-28 | 2021-05-04 | 百果园技术(新加坡)有限公司 | 会话消息管理方法、装置、服务器和可读存储介质 |
Non-Patent Citations (2)
Title |
---|
Katriel Cohn-Gordon ; Cas Cremers.A Formal Security Analysis of the Signal Messaging Protocol.2017 IEEE European Symposium on Security and Privacy.2017,全文. * |
移动医疗平台即时通讯系统设计与实现;杜豪杰;中国优秀硕士学位论文数据库;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114827065A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4120166A1 (en) | Blockchain message processing method and apparatus, computer and readable storage medium | |
CN110545260B (zh) | 一种基于拟态构造的云管理平台构建方法 | |
US8554855B1 (en) | Push notification delivery system | |
CN108230047B (zh) | 抽奖数据处理方法及装置 | |
CN109547511B (zh) | 一种web消息实时推送方法、服务器、客户端及系统 | |
US11017387B2 (en) | Cryptographically assured zero-knowledge cloud services for elemental transactions | |
CN111314067A (zh) | 区块存储方法、装置、计算机设备及存储介质 | |
CN111163130A (zh) | 一种网络服务系统及其数据传输方法 | |
CN111510474A (zh) | 基于消息中间件的数据传输方法及相关设备 | |
CN111831485A (zh) | 数据恢复方法、装置、电子设备及介质 | |
CN111698126B (zh) | 信息监控方法、系统及计算机可读存储介质 | |
CN111741014B (zh) | 消息发送方法、装置、服务器及存储介质 | |
CN114827065B (zh) | 基于统一通信信道的实时通信方法及相关设备 | |
CN115694699A (zh) | 时延参数采集方法、装置、电子设备及存储介质 | |
CN111698198B (zh) | 秘密生成和份额分发 | |
CN112182112A (zh) | 基于区块链的分布式数据动态存储方法和电子设备 | |
CN112351082A (zh) | Http请求报文的限流方法及装置 | |
CN110324364B (zh) | 一种离线抽奖方法及电子终端 | |
EP3276914A1 (en) | Data sharing method and device for virtual desktop | |
CN115022012B (zh) | 一种数据传输方法、装置、系统、设备及存储介质 | |
CN114979109A (zh) | 行为轨迹检测方法、装置、计算机设备和存储介质 | |
CN115080147A (zh) | 基于人工智能的h5页面加载方法、装置、设备及介质 | |
CN112637540B (zh) | 多客户端的音视频通话连接方法、装置、设备及存储介质 | |
CN114723394A (zh) | 基于人工智能的授信流程配置方法及相关设备 | |
CN108307081B (zh) | 骚扰数据批量处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |