CN115297162A - 消息的发送方法和装置、存储介质及电子装置 - Google Patents
消息的发送方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN115297162A CN115297162A CN202210737145.4A CN202210737145A CN115297162A CN 115297162 A CN115297162 A CN 115297162A CN 202210737145 A CN202210737145 A CN 202210737145A CN 115297162 A CN115297162 A CN 115297162A
- Authority
- CN
- China
- Prior art keywords
- message
- client
- pushed
- sending
- pushing
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000004891 communication Methods 0.000 claims abstract description 70
- 230000006870 function Effects 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 239000002699 waste material Substances 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000005406 washing Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004887 air purification Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 235000019504 cigarettes Nutrition 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种消息的发送方法和装置、存储介质及电子装置,涉及智慧家庭技术领域,该消息的发送方法包括:接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端,采用上述技术方案,解决了终端设备存在多个消息下发通道,存在资源浪费等问题。
Description
技术领域
本申请涉及通信领域,具体而言,涉及一种消息的发送方法和装置、存储介质及电子装置。
背景技术
智能家居(smart home),通俗来讲是指通过特定交互设备进行远程操控。一般通过声控、面板、魔镜、电视、手机等多种方式控制接入家庭网络的设备,由此衍生出的各种智慧场景都需要消息的动态下发,保证数据状态、用户意图的及时处理并展示给用户。而大屏端消息推送和管理主要有几种方式:
1)各app独立使用推送通道,一个大屏端可能有多个消息推送通道;
2)多app共享推送通道,并使用全局静态广播的方式转发消息;
3)多app共享推送通道,并使用socket的方式建立client和server连接来转发消息。
现有的实现方案在特定情境下的不足可表现为以下几个点:
1、app独立使用消息通道:一个大屏端存在多个消息下发通道,存在资源浪费问题;
2、广播、socket等消息转发方式,资源开销较大,其中全局广播存在一定隐私安全问题;
3、通过C和S本地消息转发通道进行分发的消息,消息传递必须经过c和s的接口然后进行数据的分发,如果对数据进行预处理,object类型需要进行序列化,且都必须放入bundle中传递,序列化过程开销大、时间慢,转发过程相对繁琐;
4、缺少消息预处理和消息拦截,无法对某些类型的消息统一处理和灵活过滤拦截。
针对相关技术中,终端设备存在多个消息下发通道,存在资源浪费等问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种消息的发送方法和装置、存储介质及电子装置,以至少解决相关技术中,终端设备存在多个消息下发通道,存在资源浪费等问题。
根据本申请实施例的一个实施例,提供了一种消息的发送方法,包括:接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
在一个示例性实施例中,通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:解析所述待推送消息,以获取所述待推送消息的消息属性,其中,所述消息属性用于指示所述待推送消息是否为正常信息,以及所述待推送消息的消息类型;根据所述消息属性确定所述待推送消息的推送策略;根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
在一个示例性实施例中,根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:根据所述消息属性确定所述待推送消息是否为正常信息;在确定所述待推送消息为正常信息的情况下,根据所述消息类型确定所述待推送消息的推送模板;根据所述推送模板通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
在一个示例性实施例中,确定发送方与所述客户端是否存在进程间通信连接之后,所述方法还包括:在所述发送方与所述客户端不存在进程间通信连接的情况下,向所述客户端发送广播信息,其中,所述广播信息用于指示所述发送方需要向所述客户端发送消息;在所述客户端校验通过所述广播信息的情况下,接收所述客户端发送的连接请求;根据所述连接请求建立所述发送方与所述客户端的进程间通信连接。
在一个示例性实施例中,根据所述连接请求建立所述发送方与所述客户端的进程间通信连接之后,所述方法还包括:在所述客户端的当前状态符合预设状态的情况下,接收所述客户端发送的断开请求,其中,所述预设状态至少包括以下之一:所述发送方与所述客户端的进程间通信连接的预设时长;所述客户端的预设活跃时长;根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
在一个示例性实施例中,接收云端发送的消息推送请求,包括:在所述发送方的***重新启动的情况下,初始化所述发送方的推送能力,以及注册推送***;向云端发送用于连接所述云端的请求信息;在云端响应所述请求信息,并建立所述云端与所述发送方的连接的情况下,通过所述推送***接收所述云端发送的消息推送请求。
在一个示例性实施例中,通过所述应用程序接口函数将所述待推送消息发送至所述客户端之后,所述方法还包括:接收所述客户端发送的反馈信息,其中,所述反馈信息用于指示所述客户端是否成功接收所述待推送消息;在所述反馈信息指示所述客户端未成功接收所述待推送消息的情况下,再次向所述客户端发送所述待推送消息。
根据本申请实施例的另一个实施例,还提供了一种消息的发送装置,包括:接收模块,用于接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定模块,用于确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;发送模块,用于在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
根据本申请实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述消息的发送方法。
根据本申请实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的消息的发送方法。
在本申请实施例中,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端;采用上述技术方案,解决了终端设备存在多个消息下发通道,存在资源浪费等问题,进而本申请实施例通过进程间通信IPC跨进程调用接口方式直接发布消息到本地通道,通知订阅者处理消息,实现屏端消息下发和管理的一致性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例的一种消息的发送方法的硬件环境示意图;
图2是根据本申请实施例的消息的发送方法的流程图;
图3是根据本申请实施例的消息的发送方法的时序图;
图4是根据本申请实施例的一种消息的发送装置的结构框图(一);
图5是根据本申请实施例的一种消息的发送装置的结构框图(一)。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例的一个方面,提供了一种消息的发送方法。该消息的发送方法广泛应用于智慧家庭(Smart Home)、智能家居、智能家用设备生态、智慧住宅(Intelligence House)生态等全屋智能数字化控制应用场景。可选地,在本实施例中,上述消息的发送方法可以应用于如图1所示的由终端设备102和服务器104所构成的硬件环境中。如图1所示,服务器104通过网络与终端设备102进行连接,可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器104提供数据存储服务,可在服务器上或独立于服务器配置云计算和/或边缘计算服务,用于为服务器104提供数据运算服务。
上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:WIFI(Wireless Fidelity,无线保真),蓝牙。终端设备102可以并不限定于为PC、手机、平板电脑、智能空调、智能烟机、智能冰箱、智能烤箱、智能炉灶、智能洗衣机、智能热水器、智能洗涤设备、智能洗碗机、智能投影设备、智能电视、智能晾衣架、智能窗帘、智能影音、智能插座、智能音响、智能音箱、智能新风设备、智能厨卫设备、智能卫浴设备、智能扫地机器人、智能擦窗机器人、智能拖地机器人、智能空气净化设备、智能蒸箱、智能微波炉、智能厨宝、智能净化器、智能饮水机、智能门锁等。
在本实施例中提供了一种消息的发送方法,应用于发送方,图2是根据本申请实施例的消息的发送方法的流程图,该流程包括如下步骤:
步骤S202,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
步骤S204,确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
步骤S206,在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
通过上述步骤,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端,解决了相关技术中,终端设备存在多个消息下发通道,存在资源浪费等问题,进而本申请实施例通过进程间通信IPC跨进程调用接口方式直接发布消息到本地通道,通知订阅者处理消息,实现屏端消息下发和管理的一致性。
在一个示例性实施例中,通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:解析所述待推送消息,以获取所述待推送消息的消息属性,其中,所述消息属性用于指示所述待推送消息是否为正常信息,以及所述待推送消息的消息类型;根据所述消息属性确定所述待推送消息的推送策略;根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
本实施例中为对待推送消息进行消息预处理,具体的,云端服务器将消息下发给客户端,发送方的消息模块将待推送消息解析成对应的消息模板对象,其中,所述消息模板对象用于指示将消息抽象成个体、对象;确定消息状态、属性;将待推送消息发送给消息***处理。消息***是用于消息策略、消息再加工等消息转发前的处理工作,其中,消息策略可灵活配置,支持本地和远端配置策略,
在一个示例性实施例中,根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:根据所述消息属性确定所述待推送消息是否为正常信息;在确定所述待推送消息为正常信息的情况下,根据所述消息类型确定所述待推送消息的推送模板;根据所述推送模板通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
也就是说,在待推送消息为正常消息的情况下,根据消息类型确定所述带推送消息的推送策略,以及根据所述推送策略确定对应的推送模板,根据所述推送模板通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
例如,对于不需要用户确认但要提醒的简单提示性消息,就可以在这里进行拦截,直接弹窗提示用户;客户端也可配置不同的***策略。消息处理完成后将消息发布到本地消息通道。
在一个示例性实施例中,确定发送方与所述客户端是否存在进程间通信连接之后,还包括:在所述发送方与所述客户端不存在进程间通信连接的情况下,向所述客户端发送广播信息,其中,所述广播信息用于指示所述发送方需要向所述客户端发送消息;在所述客户端校验通过所述广播信息的情况下,接收所述客户端发送的连接请求;根据所述连接请求建立所述发送方与所述客户端的进程间通信连接。
发送方消息模块在准备将待推送消息发送到客户端时,发送方消息模块会先判断客户端的活跃状态,以及客户端确定是否和发送方保持着连接,如果校验失败,需要把客户端拉活。具体实现可以是通过定向带权限校验的静态广播方式把消息发送给客户端,客户端被拉活后执行SDK的初始化,将消息发送给客户端。
在一个示例性实施例中,根据所述连接请求建立所述发送方与所述客户端的进程间通信连接之后,还包括:在所述客户端的当前状态符合预设状态的情况下,接收所述客户端发送的断开请求,其中,所述预设状态至少包括以下之一:所述发送方与所述客户端的进程间通信连接的预设时长;所述客户端的预设活跃时长;根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
可选地,在所述发送方与所述客户端的进程间通信连接的预设时长大于第一时长的情况下,接收所述客户端发送的断开请求;并根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
可选地,所述客户端的预设活跃时长大于第二时长的情况下,接收所述客户端发送的断开请求;并根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
在一个示例性实施例中,接收云端发送的消息推送请求,包括:在所述发送方的***重新启动的情况下,初始化所述发送方的推送能力,以及注册推送***;向云端发送用于连接所述云端的请求信息;在云端响应所述请求信息,并建立所述云端与所述发送方的连接的情况下,通过所述推送***接收所述云端发送的消息推送请求。
本发明实施例,在发送方开机启动的情况下或者在所述发送方与所述客户端不存在进程间通信连接的情况下,初始化和连接云消息平台。发送方在启动或者注册信息发生变化(比如账号切换等),应进行推送能力的初始化和注册推送***;然后向云端发起注册和连接云消息中心请求,使得客户端内消息服务所在发送方能接收到云端的实时消息。
在一个示例性实施例中,通过所述应用程序接口函数将所述待推送消息发送至所述客户端之后,还包括:接收所述客户端发送的反馈信息,其中,所述反馈信息用于指示所述客户端是否成功接收所述待推送消息;在所述反馈信息指示所述客户端未成功接收所述待推送消息的情况下,再次向所述客户端发送所述待推送消息。
举例来讲,根据客户端发送的反馈信息,确定是否需要向客户端重新发送所述待推送消息,具体的,在所述反馈信息指示所述客户端未成功接收所述待推送消息的情况下,再次向所述客户端发送所述待推送消息;在所述反馈信息指示所述客户端成功接收所述待推送消息的情况下,不需要再次向所述客户端发送所述待推送消息。
可选地,确认类型的消息需要回传用户接收和处理状态给云消息中心,以继续业务流程,或者将消息的处理结果作为用户场景执行的计数,生成对应的业务模型,进而可以智能生成一些策略或决策***。
为了更好的理解上述消息的发送方法的过程,以下再结合可选实施例对上述消息的发送的实现方法流程进行说明,但不用于限定本申请实施例的技术方案。
在本实施例中提供了一种消息的发送方法,图3是根据本申请实施例的消息的发送方法的示意图,如图3所示,具体如下步骤:
步骤1.1:主***(相当于上述实施例中的发送方)在启动或者注册信息发生变化(比如账号切换等),应进行推送能力的初始化;
步骤1.2:注册推送***clientID;
步骤1.3:向云端发起注册和连接云消息中心请求,使得子***(相当于上述实施例中的客户端)内消息服务所在的主***能接收到云端的实时消息;
步骤1.4:同步连接云状态;
建立屏端主***和子***间的IPC连接(进程间通信连接),主***可直接发布消息到子***。
步骤2.1:子***启动时初始化消息SDk,该消息SDk的作用是消息分发的桥梁,主要负责屏端内主***和子***间的连接消息通道;
步骤2.2:注册appID,向消息SDk发送连接远端服务的请求;
步骤2.3:消息SDk向主***注册和连接;
步骤2.4:主***建立IPC连接;
步骤2.5:主***向消息SDk返回连接状态;
步骤2.6:消息SDk向子***返回连接状态。
使用IPC机制实现。主要目的是实现跨进程直接调用其他***的api接口函数的能力,简化消息转发的流程。可根据消息类型直接转发的具体业务处理处,不必像socket通信那样,每次都要经过server和client的连接通道转发,然后再进行消息事件的二次分发,消息也可能面板解析到在封装Bundle的过程,是一种对c/s消息转发架构的升级。同时这种模式也很容易兼容c/s消息流转能力。
步骤3.1:子***向消息SDk发送注册设备和用户信息到云的请求信息;
步骤3.2:消息SDk向主***发送注册设备和用户信息到云的请求信息;
步骤3.3:主***向云消息中心(相当于上述实施例中的云端服务器)发送注册设备和用户信息到云的请求信息;
步骤3.4:云消息中心返回注册结果;
步骤3.5:主***返回注册结果;
步骤3.6:消息SDk返回注册结果;
步骤3.7:子***向主***发送消息订阅。
注册设备和用户信息等到消息中心,消息中心数据发生变化时,根据注册信息匹配到对应的用户设备,通过消息通道和注册的***将消息下发到用户侧。
步骤4.1:云消息将消息下发给主***;
步骤4.2:主***的消息模块会将消息解析成对应的消息模板对象;
步骤4.3:将消息模板对象发送给消息***;
步骤4.4:发布消息。
步骤5.1:确定子***是否与主***连接;
步骤5.2:在子***与主***未连接的情况下,拉活子***;
步骤5.3:重新建立IPC连接;
步骤5.4:分发消息;
步骤5.5:子***与主***建立IPC连接;
步骤5.6:分发消息。
步骤6.1:子***向主***上报消息状态;
步骤6.2:主***向云消息中心上报消息状态。
步骤7.1:子***断开与主***IPC连接。
本申请的实施例是对大屏消息推送通道聚合、屏端内消息流转和消息管理一致性的一种消息服务引擎,简称主***,主***负责发布接收到的云端消息并向其他消息接收端转发消息。其他消息接收端简称子***。服务引擎接收到云端下发的消息后,按消息体的类型解析和转化成相匹配的消息对象,再由消息***的策略预处理后,将消息直接分发给子***,子***包括同一个进程内的消息订阅、同一个app内不同进程消息订阅、不同app不同进程的服务或应用等消息接收端。子***收到本机的消息通道下发的消息事件后,执行具体的业务处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
图4是根据本申请实施例的一种消息的发送装置的结构框图;如图4所示,包括:
接收模块42,用于接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
确定模块44,用于确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
发送模块46,用于在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
通过上述装置,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端,解决了相关技术中,终端设备存在多个消息下发通道,存在资源浪费等问题,进而本申请实施例通过进程间通信IPC跨进程调用接口方式直接发布消息到本地通道,通知订阅者处理消息,实现屏端消息下发和管理的一致性。
在一个示例性实施例中,图5是根据本申请实施例的一种消息的发送装置的结构框图;如图5所示,上述装置还包括:解析模块52,用于解析所述待推送消息,以获取所述待推送消息的消息属性,其中,所述消息属性用于指示所述待推送消息是否为正常信息,以及所述待推送消息的消息类型;发送模块,还用于根据所述消息属性确定所述待推送消息的推送策略;根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
在一个示例性实施例中,发送模块,还用于根据所述消息属性确定所述待推送消息是否为正常信息;在确定所述待推送消息为正常信息的情况下,根据所述消息类型确定所述待推送消息的推送模板;根据所述推送模板通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
在一个示例性实施例中,图5是根据本申请实施例的一种消息的发送装置的结构框图;如图5所示,上述装置还包括:建立模块54,用于在所述发送方与所述客户端不存在进程间通信连接的情况下,向所述客户端发送广播信息,其中,所述广播信息用于指示所述发送方需要向所述客户端发送消息;在所述客户端校验通过所述广播信息的情况下,接收所述客户端发送的连接请求;根据所述连接请求建立所述发送方与所述客户端的进程间通信连接。
在一个示例性实施例中,图5是根据本申请实施例的一种消息的发送装置的结构框图;如图5所示,上述装置还包括:断开模块56,用于在所述客户端的当前状态符合预设状态的情况下,接收所述客户端发送的断开请求,其中,所述预设状态至少包括以下之一:所述发送方与所述客户端的进程间通信连接的预设时长;所述客户端的预设活跃时长;根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
在一个示例性实施例中,发送模块,还用于在所述发送方的***重新启动的情况下,初始化所述发送方的推送能力,以及注册推送***;向云端发送用于连接所述云端的请求信息;在云端响应所述请求信息,并建立所述云端与所述发送方的连接的情况下,通过所述推送***接收所述云端发送的消息推送请求。
在一个示例性实施例中,发送模块,还用于接收所述客户端发送的反馈信息,其中,所述反馈信息用于指示所述客户端是否成功接收所述待推送消息;在所述反馈信息指示所述客户端未成功接收所述待推送消息的情况下,再次向所述客户端发送所述待推送消息。
本申请的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
S2,确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
S3,在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
S2,确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
S3,在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种消息的发送方法,其特征在于,包括:
接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
2.根据权利要求1所述的消息的发送方法,其特征在于,通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:
解析所述待推送消息,以获取所述待推送消息的消息属性,其中,所述消息属性用于指示所述待推送消息是否为正常信息,以及所述待推送消息的消息类型;
根据所述消息属性确定所述待推送消息的推送策略;
根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
3.根据权利要求2所述的消息的发送方法,其特征在于,根据所述推送策略通过所述应用程序接口函数将所述待推送消息发送至所述客户端,包括:
根据所述消息属性确定所述待推送消息是否为正常信息;
在确定所述待推送消息为正常信息的情况下,根据所述消息类型确定所述待推送消息的推送模板;
根据所述推送模板通过所述应用程序接口函数将所述待推送消息发送至所述客户端。
4.根据权利要求1所述的消息的发送方法,其特征在于,接收云端发送的消息推送请求,包括:
在所述发送方的***重新启动的情况下,初始化所述发送方的推送能力,以及注册推送***;
向云端发送用于连接所述云端的请求信息;
在云端响应所述请求信息,并建立所述云端与所述发送方的连接的情况下,通过所述推送***接收所述云端发送的消息推送请求。
5.根据权利要求1所述的消息的发送方法,其特征在于,确定发送方与所述客户端是否存在进程间通信连接之后,所述方法还包括:
在所述发送方与所述客户端不存在进程间通信连接的情况下,向所述客户端发送广播信息,其中,所述广播信息用于指示所述发送方需要向所述客户端发送消息;
在所述客户端校验通过所述广播信息的情况下,接收所述客户端发送的连接请求;
根据所述连接请求建立所述发送方与所述客户端的进程间通信连接。
6.根据权利要求5所述的消息的发送方法,其特征在于,根据所述连接请求建立所述发送方与所述客户端的进程间通信连接之后,所述方法还包括:
在所述客户端的当前状态符合预设状态的情况下,接收所述客户端发送的断开请求,其中,所述预设状态至少包括以下之一:所述发送方与所述客户端的进程间通信连接的预设时长;所述客户端的预设活跃时长;
根据所述断开请求断开所述发送方与所述客户端的进程间通信连接。
7.根据权利要求1所述的消息的发送方法,其特征在于,通过所述应用程序接口函数将所述待推送消息发送至所述客户端之后,所述方法还包括:
接收所述客户端发送的反馈信息,其中,所述反馈信息用于指示所述客户端是否成功接收所述待推送消息;
在所述反馈信息指示所述客户端未成功接收所述待推送消息的情况下,再次向所述客户端发送所述待推送消息。
8.一种消息的发送装置,其特征在于,包括:
接收模块,用于接收云端服务器发送的消息推送请求,其中,所述消息推送请求包括:待推送消息,以及接收所述待推送消息的客户端的标识信息,其中,所述标识信息用于唯一标识所述客户端;
确定模块,用于确定发送方与所述标识信息对应的客户端是否存在进程间通信连接;
发送模块,用于在所述发送方与所述客户端存在进程间通信连接的情况下,通过所述进程间通信调用所述客户端的应用程序接口函数,并通过所述应用程序接口函数将所述消息的推送请求中包括的待推送消息发送至所述客户端。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737145.4A CN115297162B (zh) | 2022-06-27 | 2022-06-27 | 消息的发送方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737145.4A CN115297162B (zh) | 2022-06-27 | 2022-06-27 | 消息的发送方法和装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115297162A true CN115297162A (zh) | 2022-11-04 |
CN115297162B CN115297162B (zh) | 2024-03-22 |
Family
ID=83821000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210737145.4A Active CN115297162B (zh) | 2022-06-27 | 2022-06-27 | 消息的发送方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115297162B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115914367A (zh) * | 2023-02-17 | 2023-04-04 | 福建联迪商用科技有限公司 | 智能设备的消息推送方法与*** |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572710A (zh) * | 2009-06-03 | 2009-11-04 | 杭州华三通信技术有限公司 | 一种进程间通信方法和*** |
CN102404632A (zh) * | 2011-12-08 | 2012-04-04 | 四川长虹电器股份有限公司 | 智能电视的信息推送方法及应用 |
US20120303774A1 (en) * | 2011-05-26 | 2012-11-29 | Mfluent Llc | Enhanced Push Notification Services |
CN103685528A (zh) * | 2013-12-18 | 2014-03-26 | 北京奇虎科技有限公司 | 信息展示方法和装置 |
WO2015055073A1 (zh) * | 2013-10-18 | 2015-04-23 | 北京奇虎科技有限公司 | 一种消息提醒的方法和装置、以及*** |
CN106686056A (zh) * | 2016-11-25 | 2017-05-17 | 济南中维世纪科技有限公司 | 一种安卓客户端通信装置及与服务器进行连接通信的方法 |
CN107341052A (zh) * | 2017-06-07 | 2017-11-10 | 努比亚技术有限公司 | 一种消息处理方法及装置 |
CN107800585A (zh) * | 2016-09-07 | 2018-03-13 | 腾讯科技(深圳)有限公司 | 网络通信的方法和装置、推送消息的方法和装置 |
CN111970315A (zh) * | 2019-05-20 | 2020-11-20 | 北京车和家信息技术有限公司 | 推送消息的方法、装置及*** |
CN112650606A (zh) * | 2020-12-30 | 2021-04-13 | 北京奇艺世纪科技有限公司 | 一种消息处理方法、装置、***、电子设备及存储介质 |
CN112866391A (zh) * | 2021-01-21 | 2021-05-28 | 北京百度网讯科技有限公司 | 消息推送方法、装置、电子设备及存储介质 |
CN113890895A (zh) * | 2021-08-27 | 2022-01-04 | 青岛海尔科技有限公司 | 消息推送方法和装置、存储介质及电子装置 |
WO2022088804A1 (zh) * | 2020-10-30 | 2022-05-05 | 深圳壹账通智能科技有限公司 | 消息推送方法、装置、电子设备及存储介质 |
-
2022
- 2022-06-27 CN CN202210737145.4A patent/CN115297162B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572710A (zh) * | 2009-06-03 | 2009-11-04 | 杭州华三通信技术有限公司 | 一种进程间通信方法和*** |
US20120303774A1 (en) * | 2011-05-26 | 2012-11-29 | Mfluent Llc | Enhanced Push Notification Services |
CN102404632A (zh) * | 2011-12-08 | 2012-04-04 | 四川长虹电器股份有限公司 | 智能电视的信息推送方法及应用 |
WO2015055073A1 (zh) * | 2013-10-18 | 2015-04-23 | 北京奇虎科技有限公司 | 一种消息提醒的方法和装置、以及*** |
CN103685528A (zh) * | 2013-12-18 | 2014-03-26 | 北京奇虎科技有限公司 | 信息展示方法和装置 |
CN107800585A (zh) * | 2016-09-07 | 2018-03-13 | 腾讯科技(深圳)有限公司 | 网络通信的方法和装置、推送消息的方法和装置 |
CN106686056A (zh) * | 2016-11-25 | 2017-05-17 | 济南中维世纪科技有限公司 | 一种安卓客户端通信装置及与服务器进行连接通信的方法 |
CN107341052A (zh) * | 2017-06-07 | 2017-11-10 | 努比亚技术有限公司 | 一种消息处理方法及装置 |
CN111970315A (zh) * | 2019-05-20 | 2020-11-20 | 北京车和家信息技术有限公司 | 推送消息的方法、装置及*** |
WO2022088804A1 (zh) * | 2020-10-30 | 2022-05-05 | 深圳壹账通智能科技有限公司 | 消息推送方法、装置、电子设备及存储介质 |
CN112650606A (zh) * | 2020-12-30 | 2021-04-13 | 北京奇艺世纪科技有限公司 | 一种消息处理方法、装置、***、电子设备及存储介质 |
CN112866391A (zh) * | 2021-01-21 | 2021-05-28 | 北京百度网讯科技有限公司 | 消息推送方法、装置、电子设备及存储介质 |
CN113890895A (zh) * | 2021-08-27 | 2022-01-04 | 青岛海尔科技有限公司 | 消息推送方法和装置、存储介质及电子装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115914367A (zh) * | 2023-02-17 | 2023-04-04 | 福建联迪商用科技有限公司 | 智能设备的消息推送方法与*** |
Also Published As
Publication number | Publication date |
---|---|
CN115297162B (zh) | 2024-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107231606B (zh) | WiFi入网方法、智能硬件设备及电子终端 | |
CN110971495B (zh) | 智能家居***的设备绑定方法、装置及存储介质 | |
CN109246220B (zh) | 一种消息推送***及方法 | |
CN110633442A (zh) | 一种推送方法、装置及电子设备 | |
CN105991363B (zh) | 监控处理方法及装置 | |
CN103401896B (zh) | 一种多Android客户端服务共享方法及*** | |
US9425982B2 (en) | Server and method for providing device management service and device receiving the device management service | |
EP3331247A1 (en) | Multi-screen control method and device | |
CN109981421B (zh) | 一种智能设备配网方法和装置 | |
CN112671904B (zh) | 设备状态信息的传输方法及装置、存储介质、电子装置 | |
US20240137269A1 (en) | Method for instantiating edge application server and apparatus | |
CN112817751A (zh) | 算力资源的管理方法及装置、存储介质、电子装置 | |
CN115297162B (zh) | 消息的发送方法和装置、存储介质及电子装置 | |
CN112437153A (zh) | 一种设备联动处理方法及装置 | |
CN114268938A (zh) | 用户前置设备的纳管方法、装置、设备以及存储介质 | |
CN111427704B (zh) | 配置指令的远程监控方法、装置、设备及存储介质 | |
CN105225453B (zh) | 一种基于多控制中心的家电联动方法、装置及控制中心 | |
CN110572271B (zh) | 一种管理语音聊天室的方法及*** | |
CN115174512A (zh) | 消息推送方法及装置、存储介质及电子装置 | |
CN112995095B (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN113691427A (zh) | 配网方法、第一设备、第二设备、配网***与处理器 | |
CN112653769A (zh) | 一种消息的推送方法及*** | |
CN112968788A (zh) | 网络切片容量设置方法、控制方法、装置、设备及介质 | |
CN114760348B (zh) | 一种业务处理方法、装置、存储介质及电子装置 | |
CN116367204B (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 |