CN114584613A - 一种推送消息的方法、消息推送系统及电子设备 - Google Patents
一种推送消息的方法、消息推送系统及电子设备 Download PDFInfo
- Publication number
- CN114584613A CN114584613A CN202011365694.0A CN202011365694A CN114584613A CN 114584613 A CN114584613 A CN 114584613A CN 202011365694 A CN202011365694 A CN 202011365694A CN 114584613 A CN114584613 A CN 114584613A
- Authority
- CN
- China
- Prior art keywords
- push
- application
- server
- local area
- area network
- 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 95
- 230000015654 memory Effects 0.000 claims description 84
- 238000012545 processing Methods 0.000 claims description 33
- 238000013507 mapping Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 description 39
- 238000013461 design Methods 0.000 description 37
- 238000007726 management method Methods 0.000 description 35
- 239000010410 layer Substances 0.000 description 31
- 238000010586 diagram Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 28
- 230000006870 function Effects 0.000 description 26
- 230000000694 effects Effects 0.000 description 12
- 230000001360 synchronised effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 230000008439 repair process Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 101150053844 APP1 gene Proteins 0.000 description 2
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 2
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 244000240602 cacao Species 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 208000000747 high pressure neurological syndrome Diseases 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Cardiology (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请提供一种推送消息的方法、消息推送系统及电子设备,在同一局域网内的多个设备中,可以确定出至少一个中心设备来与推送服务器建立长连接,该中心设备接收来自推送服务器的推送消息后,可以将该推送消息转发至该局域网内的其他设备。这样,有效减少同一局域网内推送服务器与不同电子设备之间的长连接数量,进而有效减少推送服务器的负载压力和电子设备的功耗,同时同一局域网内只需要少量的中心设备来维持与推送服务器之间的长连接以及从推送服务器接收推送消息,可以提高同一局域网内不同设备接收消息的协同性和一致性。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种推送消息的方法、消息推送系统及电子设备。
背景技术
随着互联网业务的发展,用户可以在电子设备上下载多个形态各异的应用。为了提高 用户的活跃度,第三方应用服务器需要将一些离线消息推送给用户的电子设备,或者,为 用户推送一些在线消息(例如,即时聊天信息)。
其中,对于在线消息,第三方服务器可以直接发送给电子设备;对于离线消息,第三 方应用服务器只能通过推送服务器向电子设备推送离线信息,即将离线消息发送给推送服 务器(push server),由推送服务器向电子设备推送离线信息。为实现推送服务器和电子设 备之间的数据传输,电子设备和推送服务器之间需要建立一条长期有效的连接(简称长连 接),例如在电子设备和推送服务器之间建立传输控制协议(transmissioncontrol protocol, TCP)连接,并通过心跳反应来维持该TCP连接长期有效。
在实际应用中,一个推送服务器一般要为大量电子设备提供不同应用服务器的推送消 息服务,导致推送服务器需要和大量的电子设备建立长连接。例如,一个推送服务器要为 一亿个用户提供推送消息服务,就需要分别和这一亿个用户的电子设备建立长连接,给推 送服务器造成了较大的负载压力。
发明内容
本申请实施例提供了一种推送消息的方法、消息推送系统及电子设备,用以解决推送 服务器负载压力较大的问题。
第一方面,提供一种推送消息的方法,应用于第一设备,第一设备和至少一个第二设 备处于同一局域网内,且第一设备与推送服务器之间具有长连接,至少一个第二设备与推 送服务器之间不具有长连接;在该方法中,第一设备可以基于长连接接收来自推送服务器 的第一推送信息,以及将第一推送信息转发给至少一个第二设备。
在本申请实施例中,一个局域网内只需要第一设备与推送服务器之间具有长连接,就 可以实现该局域网内的所有设备中的推送消息转发,有效减少同一局域网内推送服务器与 不同电子设备之间的长连接数量,进而有效减少推送服务器的负载压力。
在一种可能的设计中,第一设备和至少一个第二设备关联第一系统账号,第一推送信 息为推送服务器推送给第一系统账号的信息。
在该设计中,对于同一局域网内关联同一系统账号标识的不同设备,可以只选择第一 设备与推送服务器建立长连接,以减少电子设备与推送服务器之间的长连接数量,进而有 效缓解推送服务器的负载压力。
在一种可能的设计中,第一设备和至少一个第二设备中的每个第二设备均安装有第一 应用,且第一设备和每个第二设备上的第一应用的登录账号均为第一应用账号,第一推送 信息为推送服务器推送给第一应用账号的信息。
在该设计中,对于同一局域网内关联同一应用账号标识的不同设备,可以只选择第一 设备与推送服务器建立长连接,以减少电子设备与推送服务器之间的长连接数量,进而有 效缓解推送服务器的负载压力。
在一种可能的设计中,第一推送信息为通知类信息,第一设备基于长连接接收来自推 送服务器的第一推送信息之后,将第一推送信息转发给至少一个第二设备之前,第一设备 还可以在后台运行推送核心服务程序,对第一推送信息进行封装处理。
在该设计中,第一设备在转发第一推送消息之前,可以运行推送核心服务程序,对第 一推送信息进行封装处理。这样,可有效提高第一设备对推送消息的处理效率。
在一种可能的设计中,第一设备可以为第一设备和至少一个第二设备中通过外部电源 供电且长时间工作的设备。在该设计中,在局域网内通过外部电源供电且长时间工作的设 备确定为第一设备。这样,有效保证第一设备可以长时间向为推送服务器转发推送信息。
在一种可能的设计中,第一推送信息包括目标系统账号标识;将第一推送信息转发给 至少一个第二设备之前,第一设备可以根据预设的系统账号标识和设备标识之间的第一映 射关系,确定在局域网内与目标系统账号标识对应的至少一个设备标识,将至少一个设备 标识分别对应的设备确定为至少一个第二设备。
在该设计中,第一推送信息包括目标系统账号标识;第一设备可以根据预设的系统账 号标识和设备标识之间的第一映射关系,确定在局域网内与目标系统账号标识对应的至少 一个设备标识,将至少一个设备标识分别对应的设备确定为至少一个第二设备,这样,可 以实现对第一推送信息的精准转发,进而提升用户体验。
在一种可能的设计中,第一推送信息包括目标应用账号标识;第一设备在将第一推送 信息转发给至少一个第二设备之前,还可以根据预设的应用账号标识和设备标识之间的第 二映射关系,确定在局域网内与目标应用账号标识对应的至少一个设备标识,将至少一个 设备标识分别对应的设备确定为至少一个第二设备;以及第一设备确定至少一个第二设备 中正在前台运行目标应用账号标识对应的第二应用的至少一个第三设备,并将第一推送信 息发送到至少一个第三设备。
在该设计中,结合不同设备的运行第二应用的情况为用户推送消息,可以有效提高用 户处理推送消息的效率,进而有效提高用户的活跃度。
在一种可能的设计中,第一推送信息包括目标应用账号标识、目标系统账号标识;第 一设备将第一推送信息转发给至少一个第二设备之前,还可以根据预设的系统账号标识、 应用账号标识与设备标识之间的第三映射关系,确定在局域网内与目标应用账号标识、目 标系统账号标识对应的至少一个设备标识,将至少一个设备标识分别对应的设备确定为至 少一个第二设备;第一设备确定至少一个第二设备均未在前台运行目标应用账号标识对应 的第二应用,则确定至少一个第二设备中正在前台运行第三应用的至少一个第三设备;第 一设备将第一推送信息转发给至少一个第三设备。
在该设计中,即使用户当前所使用的设备未安装目标应用账号标识对应的应用,中心 设备也可以将该目标应用账号标识对应的推送消息推送到用户当前所使用的设备,以提醒 用户处理推送消息,避免推送消息的遗漏,进而有效提高用户的活跃度。
在一种可能的设计中,将第一设备将第一推送信息转发给至少一个第二设备之后,可 以获取至少一个第二设备中任一第二设备对第一推送信息的处理情况,并将处理情况发送 给至少一个第二设备中除任一第二设备以外的其他设备。
在该设计中,第一设备可以获取任一第二设备对第一推送信息的处理情况,并将处理 情况发送给至少一个第二设备中除任一第二设备以外的其他设备,如此,有效解决用户重 复处理同一推送信息的问题,进而提升用户体验。
在一种可能的设计中,第一设备还可以向推送服务器获取至少一个第二设备中任一第 二设备的应用令牌,并将应用令牌发送给任一第二设备。在该设计中,第一设备可以代理 同一局域网内的其他设备向推送服务器获取令牌,有效提升其他设备获取令牌的效率。
在一种可能的设计中,在第一设备基于长连接接收来自推送服务器的第一推送信息之 前,第一设备需要确定自身为局域网中的中心设备,与推送服务器建立长连接,或者保持 与推送服务器之间的长连接。在该设计中,第一设备可以代理同一局域网内的其他设备向 推送服务器获取令牌,有效提升其他设备获取令牌的效率。
在一种可能的设计中,第一设备可以在确定局域网中的设备数量发生变化时,确定自 身为第一局域网中的中心设备。
在该设计中,同一局域网内的设备退出该局域网、或者有新设备加入该局域网时,同 一局域网内的所有设备均需要决策新的中心设备,可有效保证该局域网内始终存在一个设 备作为中心设备,进而保证推送消息的正常转发。
第二方面,提供一种推送消息的方法,应用于至少一个第二设备中的任一第二设备, 至少一个第二设备和第一设备处于同一局域网内,且第一设备与推送服务器之间具有长连 接,至少一个第二设备与推送服务器之间不具有长连接;任一第二设备接收来自第一设备 的第一推送信息,其中,第一推送信息是推送服务器通过长连接转发给第一设备的。
在一种可能的设计中,第一设备和至少一个第二设备关联第一系统账号,第一推送信 息为推送服务器推送给第一系统账号的信息。
在一种可能的设计中,第一设备和至少一个第二设备中的每个第二设备均安装有第一 应用,且第一设备和每个第二设备上的第一应用的登录账号均为第一应用账号,第一推送 信息为推送服务器推送给第一应用账号的信息。
在一种可能的设计中,第一推送信息包括目标系统账号标识;目标系统账号标识用于 第一设备根据预设的系统账号标识和设备标识之间的第一映射关系在局域网内确定任一第 二设备。
在一种可能的设计中,第一推送信息包括目标应用账号标识;目标应用账号标识用于 第一设备根据预设的应用账号标识和设备标识之间的第二映射关系在局域网内确定至少一 个第二设备,任一第二设备是至少一个第二设备中正在前台运行目标应用账号标识对应的 第二应用的设备。
在一种可能的设计中,第一推送信息包括目标应用账号标识、目标系统账号标识;目 标系统账号标识和目标应用账号标识用于第一设备根据预设的系统账号标识、应用账号标 识与设备标识之间的第三映射关系在局域网内确定至少一个第二设备,任一第二设备是至 少一个第二设备中正在前台运行第三应用的设备。
在一种可能的设计中,任一第二设备还可以从第一设备接收应用令牌,该应用令牌是 第一设备从推送服务器获取的。
第三方面,提供一种第一电子设备,示例性的,该第一电子设备可以包括:一个或多 个处理器;一个或多个存储器;其中,一个或多个存储器存储有一个或多个计算机程序,一个或多个计算机程序包括指令,当指令被一个或多个处理器执行时,使得第一电子设备执行如第一方面或第一方面中任一种可能的设计中的方法。
第四方面,一种第二电子设备,示例性的,该第二电子设备可以包括:一个或多个处 理器;一个或多个存储器;其中,一个或多个存储器存储有一个或多个计算机程序,一个或多个计算机程序包括指令,当指令被一个或多个处理器执行时,执行如第二方面或第二方面中任一种可能的设计中的方法。
第五方面,提供一种消息推送系统,包括推送服务器、第一设备和至少一个第二设备; 第一设备和至少一个第二设备处于同一局域网内,且第一设备与推送服务器之间具有长连 接,至少一个第二设备与推送服务器之间不具有长连接;推送服务器,用于基于长连接向 第一设备发送第一推送信息;第一设备,用于基于长连接接收第一推送信息,并将第一推 送信息转发给至少一个第二设备;至少一个第二设备,用于从第一设备接收第一推送信息。
第六方面,提供一种计算机可读存储介质,包括程序或指令,当程序或指令在计算机 上运行时,使得如第一方面或第一方面中任一种可能的设计中的方法被执行,或,使得第 二方面或第二方面中任一种可能的设计中的方法被执行。
第七方面,提供一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存 储的程序指令,使得前述第一方面或第一方面中任一种可能的设计中的方法被执行,或, 使得如前述第二方面或第二方面中任一种可能的设计中的方法被执行。
上述第二方面至第七方面中任一方面可以达到的技术效果,具体可以参照上述第一方 面中任意一种可能的设计所带来的技术效果描述,这里不再赘述。
附图说明
图1为一种推送消息的场景示意图;
图2A为另一种推送消息的场景示意图;
图2B为多个电子设备与推送服务器之间的长连接示意图;
图3为另一种推送消息的场景示意图;
图4为本申请实施例适用的一种可能的场景示意图;
图5为本申请实施例提供的路由器500的结构示意图;
图6A为本申请实施例提供的手机100的硬件结构示意图;
图6B为本申请实施例提供的手机100的软件结构示意图;
图7为本申请实施例提供的一种推送消息的方法的流程示意图;
图8为本申请实施例提供的一种场景示意图;
图9为本申请实施例提供的另一种可能的场景示意图;
图10为本申请实施例提供的另一种可能的场景示意图;
图11为本申请实施例提供的一种建立长连接的场景示意图;
图12为本申请实施例提供的另一种建立长连接的场景示意图;
图13为本申请实施例提供的一种推送消息的场景示意图;
图14为本申请实施例提供的一种生成令牌方法的流程示意图;
图15为本申请实施例提供的一种可能的推送消息的流程示意图;
图16为本申请实施例提供的一种具体的推送消息的流程示意图;
图17为本申请实施例提供的一种具体的推送消息的场景示意图;
图18为本申请实施例提供的一种手机100的用户界面示意图;
图19为本申请实施例提供的一种具体的推送消息的场景示意图;
图20为本申请实施例提供的一种消息推送装置的结构示意图;
图21为本申请实施例提供的一种消息接收装置的结构示意图;
图22为本申请实施例提供的一种第一电子设备的结构示意图;
图23为本申请实施例提供的一种第二电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的 描述。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)电子设备:可以为安装各类应用程序,并且能够将已安装的应用程序中提供的对 象进行显示的设备。示例性地,该电子设备可以包含能够显示应用程序推送消息的器件(比 如显示屏)。该电子设备可以是移动的,也可以是固定的。例如,电子设备可以为智能手机、 平板电脑、各类可穿戴设备、车载设备、个人数字助理(personal digital assistant,PDA)或 其它能够实现上述功能的电子设备等。
(2)操作系统(operating system,OS):是运行在电子设备上的最基本的系统软件, 例如微软视窗操作系统(windows系统)、美国谷歌公司开发的移动操作系统(Android系统)、 苹果移动设备操作系统(iPhone operation system,IOS)等。以智能手机为例,操作系统可 以是Android系统或IOS系统。
(3)应用程序(application,APP):可以简称为应用,为能够完成某项或多项特定功 能的计算机程序。它可以具有可视的显示界面,能与用户进行交互,比如设置、电子地图、 微信、QQ等;或者,也可以不具有可视的显示界面,不能与用户进行交互。示例性地,应用可以划分为第三方应用和系统应用,其中,第三方应用可以理解为用户安装的应用,比如微信、腾讯聊天软件(QQ)、WhatsApp Messenger、连我(Line)、Kakao Talk、钉钉等; 系统应用可以理解为操作系统预置的应用,比如设置、拨号、信息等。
(4)运行状态:应用在操作系统中的运行状态可以分为前台运行状态和后台运行状态。 前台运行状态,即直接在显示屏的显示窗口或界面上运行,呈现出程序运行的当前界面, 可以和终端设备的使用者(即用户)通过显示的界面进行互动。后台运行状态,是指显示 屏不呈现应用的运行界面,但该应用在后台继续提供服务。对于具有可视的显示界面的应 用来说,其可以随时从后台运行状态切换成前台运行状态,或者从前台运行状态切换为后 台运行状态;对于不具有可视的显示界面的应用来说,其可以处于后台运行状态,而无法 切换到前台运行状态。
(5)第三方应用服务器:第三方应用服务器可以理解为第三方开发者所开发的应用程 序对应的业务服务器,例如,微信、腾讯聊天软件(QQ)、连我(Line)、Kakao Talk、钉钉等对应的业务服务器、第三方应用服务器可以向推送服务器发送推送消息,再由推送服务器向下载相应应用的设备发送该推送消息。
(6)推送服务器(push server):可以和电子设备建立长连接,并通过该长连接向电子 设备推送第三方应用服务器的推送消息。
其中,不同的操作系统可以有不同的推送服务器,例如iOS系统的推送服务器为苹果 推送服务器(apple push notification service,APNs),在Android系统集成的华为推送服务 器(huawei push notification service,HPNs)。
(7)推送核心服务(push core service):是常驻运行于终端设备中的核心推送服务,用 于与推送服务器建立长连接,并通过心跳机制保障与推送服务器的通信;核心推送服务还 可以为第三方应用提供具备申请和注销令牌能力的应用程序编程接口(application programming interface,API),并在第三方应用调用该API时,发起与推送服务器的通信。 当推送服务器向对应的设备发送推送消息时,该对应的设备上运行的推送核心服务对该推 送消息进行解析,以决策是唤醒推送通知中心(push notificationcenter,Push NC)将消息 重新封装并展示到通知栏,还是唤醒第三方应用在后台自行处理透传消息。
(8)中心设备:可以理解为一个局域网内一个或多个设备根据预设策略决策出来的用 于和推送服务器建立长连接的设备,用于负责将推送消息分发到该局域网内的其它设备。
(9)透传信息:为不需要用户感知的信息,可以是APP自己来处理的特定消息,例如不需要在电子设备的通知栏显示的信息(例如,APP的漏洞修复程序的相关信息。
(10)长连接:是指可以连续发送多个数据包的TCP连接,在该TCP连接保持期间,如果没有数据包发送,需要通信双方发检测心跳包以维持此连接长期有效,因此简称长连接。长连接可以理解为“始终在线”。
(11)短连接:是指仅仅通信双方有数据交互需求时通信双方才建立的TCP连接,通信双方数据交互完成后,则断开此TCP连接,因此简称短连接。
下面结合具体附图,介绍推送服务器向电子设备推送消息的过程。
图1示出了一种推送消息的场景示意图,推送服务器向电子设备推送消息的过程具体 包括以下步骤:①电子设备首次启动APP,向推送服务器获取令牌;②电子设备获取到令 牌之后,将该令牌上报至该APP对应的第三方应用服务器;③第三方应用服务器向推送服 务器发送推送消息(携带令牌),推送服务器接收该推送消息;④推送服务器根据该推送消 息携带的令牌将该推送消息分发到电子设备上对应的APP。
应理解,图1所示的推送服务器可以是APNs,也可以是HPNs,这里不作限制。
以上是以推送服务器为第三方应用服务器向一个电子设备发送推送消息为例。在实际 应用中,推送服务器还可以为多个不同的第三方应用服务器向多个不同的电子设备发送推 送消息。
请参见图2A,在图2A中推送服务器从服务器A接收推送消息1,并将推送消息1转发至手机2;推送服务器从服务器B接收推送消息2以及推送消息3,并将推送消息2转发 至电脑1、将推送消息3转发至手机3。
由图2A可知,推送服务器需要为多个第三方应用服务器推送消息,就要接收来自多个 第三方应用服务器的推送消息,给推送服务器造成了较大的负载压力。
另外,推送服务器若要向电子设备发送的推送消息,就需要和电子设备建立长连接。
请参见图2B,图2B为多个电子设备与推送服务器之间的长连接示意图。在图2B中,设备1、设备2、设备3、设备4处于同一局域网内,推送服务器需要分别与设备1、设备2、 设备3、设备4建立长连接1、长连接2、长连接3、长连接4。其中,电子设备与推送服务 器建立长连接的具体实现可以是电子设备中运行的推送核心服务与推送服务器建立长连接。 应理解,图2B中的设备的数量仅为示例而非限定,实际可以更多或者更少。
由图2B可知,处于同一局域网内的每个电子设备若要接收推送消息,每个设备均需要 与推送服务器建立各自的长连接,长连接数量与电子设备数量对应,因此需要消耗较大的 通信传输资源,进一步加剧推送服务器的负载压力。
请参见图3,图3示出了推送服务器向登录相同应用账号的不同设备推送消息的示意图。 在图3中,手机4和电脑5均安装了应用A,并且登录同一用户账号,服务器A为应用A对应的第三方服务器。当推送服务器接收到来自服务器A的针对该用户账号的推送消息4时,推送服务器需要将相同的推送消息4分别转发到手机4和电脑5。而对于用户而言,则 需要在手机4和电脑5上重复处理推送消息,进而使得用户体验较差。
基于以上描述,本申请提供一种推送消息的方法,在本申请的技术方案中,在同一局 域网内的多个设备中,可以确定出至少一个中心设备来与推送服务器建立长连接,该中心 设备接收来自推送服务器的推送消息后,可以将该推送消息转发至该局域网内的其他设备。 这样,有效减少同一局域网内推送服务器与不同电子设备之间的长连接数量,进而有效减 少推送服务器的负载压力和电子设备的功耗,同时同一局域网内只需要少量的中心设备来 维持与推送服务器之间的长连接以及从推送服务器接收推送消息,可以提高同一局域网内 不同设备接收消息的协同性和一致性。
图4为本申请实施例适用的一种可能的场景示意图,在图4中,设备401、设备402、设备403、设备404、设备405均处于一个局域网之中,设备401、设备402、设备403、设 备404、设备405进行协商之后将设备405作为中心设备。推送服务器只与设备405建立长 连接,设备405接收到来自推送服务器的推送消息后,设备405可以将该推送消息转发到 同一局域网内的其他设备,例如,设备401、设备402等。
推送服务器,用于将第三方应用服务器的推送消息推送到相应的电子设备,具体可以 APNs,也可以是HPNs,或者其他厂商的推送服务器,本申请实施例不作具体的限制。
应理解,实际的应用场景中包括的设备并不只限于图4所示的设备401、设备402、设 备403、设备404、设备405,还可以包括更多的电子设备,这里不做限制。其中,中心设 备的数量也不限定于一个,可以具体的实际需求来确定中心设备的数量,后文将会给出具 体的示例。
设备401、设备402、设备403、设备404、设备405可以是以下设备中的任一种:平 板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、车载设备、虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、智能家居设备、智能机器人、路由器等。只要是具备接入局域网功能的电子设备即可,本申请 实施例不做限制。其中,任一具备接入局域网功能的电子设备均有可能作为中心设备或者 作为同一局域网内从中心设备接收推送消息的其他设备。
下面以电子设备是路由器为例,说明本申请实施例所应用的一种电子设备的结构示意 图。如图5所示,路由器500包括处理器510,外部存储器接口520,内部存储器521,USB接口530,充电管理模块540,电源管理模块541,电池542,无线通信模块550等。
其中,处理器510可以包括一个或多个处理单元。例如:处理器510可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU), 图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit, NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
在一种可能的实施例中,路由器500可以作为同一局域网内的中心设备,处理器510 可以调用内部存储器521中存储的本申请实施例的处理程序,或者通过外部存储器接口520 调用第三方设备中存储的本申请实施例的处理程序,来将推送消息转发到同一局域网内对 应的设备。
外部存储器接口520可以用于连接外部存储卡,例如Micro SD卡,实现扩展路由器500 的存储能力。外部存储卡通过外部存储器接口520与处理器510通信,实现数据存储功能。 例如将音乐、图像、视频等文件保存在外部存储卡中。
内部存储器521可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系 统,至少一个功能所需的应用程序(比如声音播放功能,图像拍摄功能等)等。存储数据区可 存储路由器500使用过程中所创建的数据(比如系统账号标识、应用账号标识、设备标识之 间的映射表等)等。此外,内部存储器521可以包括高速随机存取存储器,还可以包括非易 失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage, UFS)等。
内部存储器521可以用于存储本申请实施例所提出的推送消息方法的计算机可执行程 序代码,所述可执行程序代码包括指令。处理器510可以通过运行存储在内部存储器521 的该推送消息方法的计算机可执行程序代码,从而使得路由器500可以完成本申请实施例 提出的推送消息的技术方案。
充电管理模块540用于从充电器接收充电输入。其中,充电器可以是无线充电器,也 可以是有线充电器。在一些有线充电的实施例中,充电管理模块540可以通过USB接口530 接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块540可以通过路 由器500的无线充电线圈接收无线充电输入。充电管理模块540为电池542充电的同时,还可以通过电源管理模块541为电子设备供电。
电源管理模块541用于连接电池542,充电管理模块540与处理器510。电源管理模块 541接收电池142和/或充电管理模块540的输入,为处理器510,内部存储器521,外部存储器,显示屏590,和无线通信模块550等供电。电源管理模块541还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块541也可以设置于处理器510中。在另一些实施例中,电源管理模块541和充电管理模 块540也可以设置于同一个器件中。
无线通信模块550,可以提供应用在路由器500上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导 航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近 距离无线通信技术(near field com,munication,NFC),红外技术(infrared,IR)等无线通信的 解决方案。
在一些实施例中,路由器500作可以为一个局域网内的中心设备,无线通信模块550 使得路由器500可以通过无线通信技术与网络将从推送服务器接收到的信息转发至同一局 域网内的其他设备。
应理解的是,本申请实施例示意的结构并不构成对路由器500的具体限定。在本申请 另一些实施例中,路由器500可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
下述以电子设备是手机为例,说明本申请实施例所应用的一种电子设备的结构示意图。 如图6A所示,手机100包括处理器110,外部存储器接口120,内部存储器121,通用串行 总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142, 天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受 话器170B,麦克风170C,耳机接口170D,显示屏180,传感器模块190等。
其中,处理器110可以包括一个或多个处理单元。例如:处理器110可以包括应用处理 器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU), 图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit, NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
在一种可能的实施例中,手机100可以作为中心设备,手机100可以从推送服务器接 收到推送消息时,处理器110可以调用内部存储器121中存储的本申请实施例的处理程序, 或者通过外部存储器接口120调用第三方设备中存储的本申请实施例的处理程序,控制无 线通信模块160将推送消息转发到同一局域网内的其他设备。
在另一种可能的实施例中,手机100可以作为接收中心设备转发的推送消息的设备, 当手机100从中心设备接收到推送消息时,处理器110可以调用内部存储器121中存储的 本申请实施例的处理程序,或者通过外部存储器接口120调用第三方设备中存储的本申请 实施例的处理程序,来控制显示屏180在用户界面中的通知栏显示该推送消息。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机100 的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。 例如将音乐、图像、视频等文件保存在外部存储卡中。
内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系 统,至少一个功能所需的应用程序(比如声音播放功能,图像拍摄功能等)等。存储数据区可 存储手机100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121 可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件, 闪存器件,通用闪存存储器(universal flash storage,UFS)等。内部存储器121可以用于存储 本申请实施例所提出的推送消息的方法的计算机可执行程序代码,所述可执行程序代码包 括指令。处理器110可以通过运行存储在内部存储器121的该推送消息方案的计算机可执 行程序代码,从而使得手机100可以完成本申请实施例提出的推送消息方案。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB 接口,USB Type C接口等。USB接口130可以用于连接充电器为手机100充电,也可以用 于手机100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口 还可以用于连接其他电子设备,例如AR设备等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也 可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130 接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过手 机100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块 141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏180,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模 块140也可以设置于同一个器件中。
手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。手机100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
在一种可能的实施例中,手机100作为某个局域网内的中心设备,无线通信模块160 可以从推送服务器接收推送消息,并向该局域网内的其他设备转发推送消息。
在一种可能的实施例中,手机100作为某个局域网内从中心设备接收推送消息的设备, 无线通信模块160可以用于接收来自中心设备的推送消息。
移动通信模块150可以提供应用在手机100上的包括2G/3G/4G/5G等无线通信的解决 方案。无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导 航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近 距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解 决方案。在一些实施例中,手机100的天线1和移动通信模块150耦合,天线2和无线通 信模块160耦合,使得手机100可以通过无线通信技术与网络以及其他设备通信。
显示屏180可用于显示由用户输入的信息或提供给用户的信息以及手机100的各种菜 单,另外还可以接受用户输入,比如用户的触摸操作。具体的,显示屏180可包括显示面 板181,以及触控面板182。其中,显示面板181可以采用液晶显示器(liquid crystaldisplay, LCD)、有机发光二极管(organicLight-emitting diode,OLED)等形式来配置显示面板181。 触控面板182,也称为触摸屏、触敏屏等,可收集用户在其上或附近的接触或者非接触操作 (比如用户使用手指、触笔等任何适合的物体或附件在触控面板182上或在触控面板182附 近的操作,也可以包括体感操作;该操作包括单点控制操作、多点控制操作等操作类型), 并根据预先设定的程式驱动相应的连接装置。
可选的,触控面板182可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测 装置检测用户的触摸方位、姿势,并检测输入操作带来的信号,将信号传送给触摸控制器; 触摸控制器从触摸检测装置上接收触摸信息,并将它转换成处理器能够处理的信息,再送 给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容 式、红外线以及表面声波等多种类型实现触控面板182,也可以采用未来发展的任何技术实 现触控面板182。进一步的,触控面板182可覆盖显示面板181,用户可以根据显示面板181 显示的内容(该显示内容包括但不限于,软键盘、虚拟鼠标、虚拟按键、图标等等),在显示 面板181上覆盖的触控面板182上或者附近进行操作,触控面板182检测到在其上或附近的操作后,传送给处理器110以确定用户输入,随后处理器110根据用户输入在显示面板181上提供相应的视觉输出。
例如,在本申请实施例中,触控面板182中的触摸检测装置检测到针对用户界面中的 通知栏的触摸操作后,将检测到的触摸操作对应的信号实时发送的触摸控制器,触摸控制 器将信号转换成触点坐标发送给处理器110,处理器110根据接收到的触点坐标确定该触摸 操作具体为滑动操作,然后响应用户输入的滑动操作,在显示面板181中显示推送消息的 具体信息。
手机100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接 口170D,以及应用处理器等实现音频功能。
在一种可能的实施例中,手机100接收到推送消息之后,处理器110启动扬声器,播放该推送消息对应的语音信息。
在一些实施例中,手机100可以包括1个或N个显示屏180,1个或N个显示屏180 可以折叠连接,也可以柔性连接,多个显示屏180折叠时便于电子设备便携,多个显示屏 180展开连接时,便于用户使用大屏幕观看提高用户体验,其中,N为大于1的正整数。
手机100接收到推送消息的时,显示屏180可以在用户界面的通知栏显示该推送消息 对应的标识信息(例如图18中(a)所示的视频应用的推送消息、新浪微博的推送消息),显示屏180还可以切换至显示该推送消息对应的用户界面(例如图18中(b)所示的用户 界面)。
传感器模块190可以包括触摸传感器190A。当然,在具体实施时,还可以有其它传感 器,比如陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,骨传导传感器等,本申请实施例不做限制。
其中,触摸传感器190A,也称“触控面板”。触摸传感器190A可以设置于显示屏180,由触摸传感器190A与显示屏180组成触摸屏,也称“触控屏”。触摸传感器190A用于检测 作用于其上或附近的触摸操作,比如用户在显示屏上输入的滑动操作。触摸传感器可以将 检测到的触摸操作传递给应用处理器110,以确定触摸事件类型。通过显示屏180提供与触 摸操作相关的视觉输出。在另一些实施例中,触摸传感器190A也可以设置于手机100的表 面,与显示屏180所处的位置不同。
应理解的是,本申请实施例示意的结构并不构成对手机100的具体限定。在本申请另 一些实施例中,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
以上介绍了电子设备的硬件结构,下面介绍电子设备的软件架构。
具体的,以手机100为例,手机100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的安卓(android)系统为例,示例性说明手机100的软件结构。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。
请参见图6B,在一些可能的实施例中,将Android系统分为四层,从上至下分别为应 用程序(Applications)层(本文中简称“应用层”),应用程序框架(ApplicationFramework) 层(本文中简称“框架层”),安卓运行时(Android runtime)和系统库层(本文中简称“系统运 行库层”),以及内核层。
其中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的 窗口(Window)程序、系统设置程序、联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开发的应用程序,比如即时通信程序、相片美化程序、游戏程序等。当然,在具体实施时,应用程序层中的应用程序包不限于以上举例,实际还可以包括 其它应用程序包,本申请实施例对此不做限制。
框架层为应用程序层的应用程序提供应用编程接口(application programminginterface, API)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处 理中心,这个中心决定让应用层中的应用程序做出动作。
如图6B所示,本申请实施例中应用程序框架层包括活动管理(activity managerservice) 模块和窗口管理(window manager service)模块。
其中,活动管理模块用于:管理各个应用程序的生命周期以及通常的导航回退功能, 比如控制应用程序的运行状态,确定该应用程序是在前台运行还是后台运行等。
窗口管理模块用于管理所有的窗口程序,比如获取显示屏大小,判断是否有状态栏, 锁定屏幕,截取屏幕,控制推送消息的显示(例如,将推送消息显示于用户界面的通知栏 中)等。
当然,在具体实施时框架层还可以包括功能服务,比如内容提供,电话管理,资源管 理,通知管理等,本申请实施例对此不做限制。
系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系 统运行库层中包含的C/C++库以实现框架层要实现的功能。
在本申请的实施例中,当手机100接入某一局域网时,安卓操作系统会运行系统运行 库层中的推送核心服务,以实现同一局域网内中心设备的决策,以及推送消息的接收或转 发。
内核层是硬件和软件之间的层。如图3所示,内核层至少包含显示驱动和传感器驱动 (如指纹传感器,温度传感器,触摸传感器、压力传感器等)。当然,在具体实施时内核层还可以包括其他驱动,如摄像头驱动,音频驱动等,本申请实施例对此不做限制。
应理解,图6B中的软件架构对应的软件程序和/或模块存储在图6A所示的手机100中 的内部存储器121中。
下面结合图7对本申请实施例提供的技术方案进行详细介绍。
图7示出了本申请实施例提供的一种推送消息的方法的流程示意图,该方法具体包括 以下步骤:
S701、第一设备接收来自推送服务器的第一信息。
第一设备可以是前述的中心设备,是一个局域网内用于和推送服务器建立长连接,并 通过长连接接收来自推送服务器的推送消息,以及将推送消息通过与局域网内的其他设备 之间建立的短连接分发到该局域网内的其他设备的设备。其中,该局域网可以是一个家庭 的局域网,也可以是一个公司的局域网,本申请实施例不作具体的限定。第一信息即前文 所述的推送消息。以图4为例,中心设备可以是设备405。
其中,同一局域网内的不同设备协商中心设备的预设策略有多种实现方式,包括但不 限于以下3种方式:
方式1,对于同一局域网内的不同电子设备不区分系统账号标识、应用账号标识,局域 网内的任一设备将该局域网内供电来源为非电池供电的设备(例如,路由器、冰箱)确定 为中心设备;或者,将该局域网中持续工作时间最长的设备确定为中心设备。
示例性的,请参见图8,设备401、设备402、设备403、设备404、设备405均处于一 个局域网之中,设备401、设备402、设备403、设备404、设备405上均运行推送核心服 务,该核心推送服务可以实现同一局域网内的设备401、设备402、设备403、设备404、 设备405之间的设备信息(例如,工作时长、供电情况等)共享,每个设备均通过核心推 送服务上报各自的设备信息,其中的任一设备确定设备405是供电来源为非电池供电的设 备,则将设备405确定为中心设备,仅由设备405和推送服务器建立长连接。设备405分 别与设备401、设备402、设备403、设备404之间建立短连接。设备405可以代理设备401、 设备402、设备403、设备404向推送服务器获取注册令牌,以及通过短连接向401、设备 402、设备403、设备404转发相应的推送消息。
在该实施方式中,在同一局域网内,推送服务器仅仅与决策出的中心设备405建立长 连接,以减少电子设备与推送服务器之间的长连接数量,进而有效缓解推送服务器的负载 压力。
方式2,局域网内的任一设备从该局域网内关联同一系统账号标识的不同设备中选出一 个设备作为中心设备,若该局域网内存在关联多个系统账号标识的不同设备,则在该局域 网内选择多个中心设备,每一个中心设备对应一个系统账号标识。可选的,将同一个系统 账号标识的多个设备中供电来源为非电池供电的设备(例如,路由器、冰箱)确定为中心 设备;或者,将该多个设备中持续工作时间最长的设备确定为中心设备。
示例性的,请参见图9,在图9中所示的实施例中,同一局域网内的任一设备可以根据 每个设备的系统账号标识在同一局域网内选择多个设备作为中心设备。具体的,在图9中 该任一设备(例如,设备901)根据系统账号标识将同一局域网内的设备分为了两组,即将 关联系统账号标识1的设备901、设备902、设备905划为第一组,将关联系统账号标识2的设备903、设备904、设备906划为第二组;将第一组中供电来源为非电池供电的设备905确定为第一组中的中心设备,将第二组中长时间工作的设备906确定为第二组中的中心设备,由设备905和设备906分别与推送服务器建立长连接1、长连接2。
设备905与设备901和设备902分别建立短连接,设备905可以代理设备901和设备902向推送服务器获取某个应用的注册令牌,以及将通过长连接1接收的来自推送服务器的推送消息,通过与设备901和设备902之间的短连接转发至设备901、设备902。设备906 与设备903和设备904分别建立短连接,设备906可以代理设备903和设备904向推送服 务器获取某个应用的注册令牌,以及将通过长连接2接收的来自推送服务器的推送消息, 通过与设备903和设备904之间的短连接转发至设备903、设备904。
在图9所示的实施例中,在同一局域网内针对每一个系统账号标识选取一个设备来作 为中心设备,也可以有效减少同一局域网内多个设备与推送服务器之间的长连接数量。
方式3,每个设备运行的推送核心服务获取到每个电子设备的第三方应用账号的登录授 权信息时,可以局域网内的任一设备从该局域网内关联同一应用账号标识的不同设备中选 出一个设备作为中心设备,若该局域网内存在关联多个应用账号标识的不同设备,则在该 局域网内选择多个中心设备,每一个中心设备对应一个应用账号标识。可选的,将同一个 应用账号标识的设备中供电来源为非电池供电的设备(例如,路由器、冰箱)确定为中心 设备;或者,将该多个设备中持续工作时间最长的设备确定为中心设备。
请参见图10,请参见图10,在图10中所示的实施例中,同一局域网内的任一设备可以根据每个设备的应用账号标识(例如微信登录账号)在同一局域网内选择多个设备作为中心设备。具体的,在图10中该任一设备(例如,设备1001)根据应用账号标识将同一局 域网内的设备分为了两组,即关联应用账号标识1的设备1001、设备1002、设备1005划 为第一组,关联应用账号标识2的设备1003、设备1004、设备1006划为第二组;其中, 第一组中的任一设备将非电池供电的设备1005确定为中心设备,第二组中的任一设备将持 续工作时间最长的设备1006确定为中心设备,由设备1005和设备1006分别与推送服务器 建立长连接1、长连接2。设备1005分别与设备1001和设备1002之间建立短连接,设备 1006分别和设备1003和设备1004之间建立短连接。
设备1005可以代理设备1001和设备1002向推送服务器获取该应用标识对应的应用的 注册令牌,以及通过长连接1接收来自推送服务器针对该应用的推送消息,设备1005还可 以决策是将该推送消息转发至设备1001还是设备1002。设备1006可以代理设备1003和设 备1004向推送服务器获取该应用标识对应的应用的注册令牌,以及通过长连接2接收来自 推送服务器针对该应用的推送消息,设备1006还可以决策将该推送消息转发至设备1003 或设备1004。
在图10所示的实施例中,在同一局域网内针对每一个应用账号标识选取一个设备来作 为中心设备,也可以有效减少同一局域网内设备与推送服务器之间的长连接数量。具体的, 第一设备(即中心设备)在接收该第一信息之前,需要和该推送服务器建立长连接,并在 建立该长连接之后,通过该长连接接收该第一信息。
S702、第一设备将第一信息转发至同一局域网内的其他设备。
应理解,第一设备与其处于同一局域网内的其他设备之间通过局域网网络进行通信, 具体的,第一设备和其他设备之间可以通过建立长连接或短连接,来进行数据通信,本申 请实施例不作具体的限定。
以图4为例,其它设备可以是设备401、设备402、设备403、设备404中的一个或多个。其中,设备405和设备401、设备402、设备403、设备404可以通过与设备405之间 的长连接或短连接来接收设备405转发的推送消息。
在本申请实施例中同一局域网内的所有设备均运行推送核心服务,每个设备通过推送 核心服务向中心设备上报自己的系统账号标识、设备标识以及应用账号标识等信息,中心 设备基于上述信息生成一个或多个映射表;中心设备可以根据该映射表来转发第一信息。
其中,映射表具体可以是系统账号标识和设备标识之间的映射关系;或者,应用账号 标识和设备标识之间的映射关系;或者,应用账号标识和系统账号标识之间的映射关系; 或者,系统账号标识、应用账号标识、设备标识之间的映射关系,本申请的实施例不作具 体的限定。
其中,系统账号标识可以是操作系统的登录账号,例如,IOS账号、华为账号等;应用 账号标识可以是应用的登录账号,例如,微信应用的登录账号、视频应用的登录账号等;设备标识可以是介质访问控制(media access control,MAC)地址,用户识别卡(subscriber identity module,SIM)卡号,国际移动用户识别码(international mobilesubscriber identity,IMSI) 等。
下面中心设备以图4的设备405为例,其它设备以设备401、设备402、设备403、设备404为例,介绍中心设备向同一局域网内的其他设备转发推送消息的过程。
在第一种可能的实施方式中,第一信息中包括第一系统账号标识;中心设备可以根据 系统账号标识与设备标识之间的映射关系,确定该局域网内关联第一账号系统标识的目标 设备,中心设备将该第一信息发转发到局域网内的目标设备。如此,可以使得目标设备同 步接收第一信息,改善同一局域网内不同设备重复接收和一致性差的问题。
进一步的,当该局域网内的任一设备检测到用户对该第一信息进行了处理,则该任一 设备可以将该第一信息的处理情况更新给其它设备。例如,第一信息具体为视频通话请求, 中心设备(如设备405)将第一信息转发给其它设备(如设备402和设备403)之后,每个 接收到该第一信息的设备均会显示视频通话请求界面(可选的,还可以播放视频通话请求 对应的铃声),当用户在设备402上拒绝该视频通话请求后,设备402会停止显示视频通话 请求界面,并将拒绝信息发送给设备405,并由设备405同步给设备403,使得设备403停止显示视频通话请求界面。如此,对于接收到相同推送消息的设备,可以自动同步第一信息的处理状态,进而用户不需要重复处理相同的消息,可以提高用户体验。
在第二种可能的实施方式中,第一信息中包括第一应用账号标识;中心设备根据应用 账号标识与设备标识之间的映射关系,在该局域网内确定第一应用账号标识对应的至少一 个候选设备,并确定该至少一个候选设备中正在前台运行第一应用账号标识对应的应用的 至少一个目标设备,并将第一信息发送到该至少一个目标设备。如此,结合不同候选设备 运行第一应用账号标识对应的应用的情况为用户推送消息,可以提高用户处理推送消息的 效率,进而有效提高用户的活跃度。
如果至少一个候选设备中正在前台运行第一应用账号标识对应的应用的设备有多个, 例如第二设备和第三设备,则中心设备可以将第一信息同时发送给第二设备和第三设备, 也可以按照预设的优先级关系将第一信息先推送给第二设备和第三设备中的一个设备。
当中心设备将第一信息同时发送给第二设备和第三设备时,如果任一设备(中心设备、 第二设备或第三设备)检测到用户对该第一信息进行了处理,则该任一设备可以将该第一 信息的处理情况更新给其它接收到该第一信息的设备。
当中心设备第一信息先推送给其中一个设备时,例如中心设备先将第一信息发送到第 二设备,则第二设备可以在设定时长(例如接收信息后的第10s、15s或30s等)向中心设 备反馈第一信息的处理情况;中心设备接收第二设备反馈的第一信息的处理情况之后,若 第一信息已被用户处理,则中心设备不再将第一信息转发至第三设备;当然也可以由中心 设备将第一信息转发至该第三设备并同时将该处理情况更新到至少一个候选设备中除第二 设备以外的设备。相反的,若第一信息未被用户处理,则中心设备继续将第一信息转发至 第三设备。
或者,当中心设备将第一信息先推送给第二设备和第三设备中的一个设备时,例如, 中心设备先将第一信息发送到第二设备,如果第二设备在设定时长之前检测到用户对第一 信息进行了处理,则第二设备会在该设定时长内向中心设备反馈第一信息的处理情况(已 处理),中心设备如果在该设定时长接收到第二设备反馈的处理情况,则中心设备不再将第 一信息转发至第三设备,否则中心设备会继续将第一信息转发至第三设备。如此,中心设 备不需要将第一信息的处理情况同步到至少一个候选设备中的每个设备,可有效节约通信 资源。
如果至少一个候选设备中正在前台运行第一应用账号标识对应的应用的设备只有一个 (如第二设备),则中心设备将第一信息发送到该第二设备之后,还可以接收第二设备反馈 的第一信息的处理情况,若第一信息已被用户处理,即使设定时长内中心设备检测到关联 第一应用账号标识的第三设备在前台运行该应用,也不会将第一信息转发至第三设备;若 第一信息未被用户处理,中心设备若在设定时长内检测到关联第一应用账号标识的另一个 设备如第三设备在前台也运行该应用时,将第一信息继续转发至该第三设备。例如,假设 第一信息是针对第一应用账号标识的视频推送消息,设定时长为5分钟,中心设备以设备 405为例,设备402和设备403均关联第一应用账号标识,设备405在12:00检测到只有设 备403在前台运行视频APP,设备405仅仅将该视频推送消息转发至设备403,并接收设备 403反馈的用户未对该视频推送消息的处理情况;设备405根据该反馈情况确定用户未处理 该信息,且在12:03检测到设备402在前台运行该视频APP时,则将该推送消息转发至设 备402。如此,结合不同设备的运行第一应用的情况为用户推送消息,可以有效提高用户处 理推送消息的效率,进而有效提高用户的活跃度。
在第三种可能的实施方式中,第一信息中包括第一系统账号标识、第一应用账号标识; 中心设备可以根据系统账号标识、应用账号标识、设备标识之间的映射关系,确定第一系 统账号标识以及第一应用账号标识对应的至少一个第一候选设备;若中心设备确定该至少 一个候选设备中不存在正在前台运行第一应用账号标识对应的应用的设备,则确定同一局 域网中除该至少一个第一候选设备以外的且与第一系统账号标识对应的至少一个第二候选 设备,并将该第一信息转发给至少一个第二候选设备中正在前台运行第二应用的设备。
例如,假设第一信息是针对第一应用账号标识的视频推送消息,中心设备以设备405 为例,设备402和设备403、设备404均关联同一华为账号,设备402和设备403均安装了视频APP,且关联第一应用账号标识;中心设备405检测到设备402和设备403均未在前 台运行该视频APP,但检测到设备404正在前台运行微信应用,则将该视频推送消息转发 至设备404。如此,即使用户当前所使用的设备未安装视频应用,中心设备也可以将视频推 送消息推送到用户当前所使用的设备,以提醒用户处理推送消息,避免了推送消息的遗漏, 进而有效提高用户的活跃度。
上述S701的具体实施方式中,中心设备与推送服务器建立长连接的具体实施方式有多 种,包括但不限于以下三种:
方式1,至少两个设备同时接入同一局域网,每个设备均运行推送核心服务,由至少两 个设备中的任一设备根据预设策略从至少两个设备中确定出中心设备,仅有中心设备与推 送服务器建立长连接,其他设备均不与推送服务器建立长连接。
示例性的,以图4的场景为例,请继续参见图8,设备401、设备402、设备403、设 备404、设备405同时加入同一局域网;此时,设备401、设备402、设备403、设备404、 设备405均运行推送核心服务,在其中的任一设备根据预设策略确定出设备405为中心设 备时,仅有设备405与推送服务器建立长连接,其他设备均不与推送服务器建立长连接。 设备405分别与设备401、设备402、设备403、设备404之间建立短连接,设备405可以 通过短连接向401、设备402、设备403、设备404转发相应的推送消息。
方式2,至少两个设备同时接入同一局域网,每个设备均运行推送核心服务,每个设备 均与推送服务器建立长连接;在至少两个设备中的任一设备根据预设策略从至少两个设备 中确定出第一设备为中心设备之后,保持第一设备与推送服务器之间的长连接,断开该局 域网内除第一设备以外的设备与推送服务器之间的长连接,或者断开所有设备的长连接, 并重新建立中心设备即第一设备与推送服务器之间的长连接。
示例性的,请参见图11,在图11中,设备1101、设备1102、设备1103均同时接入同一局域网;设备1101、设备1102、设备1103均运行推送核心服务,且均与推送服务器建立 长连接,在其中的任一设备根据预设策略确定设备1101为中心设备时,仅保持设备1101 与推送服务器之间的长连接3,断开设备1102与推送服务器之间的长连接1以及设备1103 与推送服务器之间的长连接2。设备1101分别与设备1102、设备1103建立短连接,进而使 得设备1101可以通过短连接向设备1102、设备1103转发相应的推送消息。
方式3,在第一设备接入局域网之前,至少两个设备中的第二设备已接入该局域网,并 与推送服务器建立有长连接;在第一设备接入该局域网时,第一设备和第二设备均运行推 送核心服务,第一设备和第二设备中的任一设备决策出第一设备为中心设备时,断开第二 设备和推送服务器之间的长连接,第一设备和推送服务器建立长连接。
应理解,方式3中的“第二设备”可以是一个或多个设备,这里不作具体的限定。
示例性的,请参见图12,在图12中,第一设备以设备1201为例,第二设备以设备1202、 设备1203为例,设备1202与推送服务器建立有长连接1、设备1203与推送服务器建立有 长连接2;在设备1201接入该局域网时,设备1201、设备1202、设备1203均运行推送核 心服务,在任一设备决策出设备1201为中心设备时,断开设备1202与推送服务器之间的 长连接1以及设备1203与推送服务器之间的长连接2;设备1201与推送服务器建立长连接 3。设备1201分别与设备1202、设备1203建立短连接,进而使得设备1201可以通过短连 接向1202、设备1203转发相应的推送消息。
可选的,同一局域网内任一设备确定出中心设备,以及中心设备与推送服务器建立长 连接之后,若该局域网内的某个设备退出该局域网时,或者,有新的设备加入该局域网时, 均需要重新决策新的中心设备,新的中心设备和推送服务器建立长连接以及转发推送消息 到相应的设备。
示例性的,请继续参见图8,设备405退出该局域网时,设备401、设备402、设备403、设备404中的任一设备会根据预设策略重新决策中心设备,例如,将设备404确定为新的 中心设备,则设备404和推送服务器建立长连接,以及和设备401、设备402、设备403分 别和设备404建立短连接,设备404可以通过该短连接将来自推送服务器的推送消息转发 到设备401、设备402、设备403。
下面,结合具体的附图介绍推送服务器向电子设备推送消息的具体过程。
为了便于理解,首先以手机100是中心设备为例,介绍推送服务器向电子设备推送消 息的具体过程。
请参见图13,在图13中,手机100作为中心设备,且与推送服务器保持有长连接,手机100代理与其处于同一局域网内的其他设备(例如智能手表3)向推送服务器获取令牌,具体过程如下:
S1301、手机100接收来自其他设备的APP注册推送通知服务请求。
示例性的,手机100和智能手表3建立短连接,手机100通过该短连接接收来自智能手表3的APP注册推送通知服务请求,将APP注册推送通知服务请求中携带的应用标识 (APPID)和应用账号标识(Account ID)(例如,微信应用标识和微信应用账号标识)、设备标 识封装成令牌(token)请求信息。
S1302、手机100通过与推送服务器之间的长连接向推送服务器发送令牌请求,推送服 务器接收该令牌请求。
应理解,这里的推送服务器可以是APNs,也可以是HPNs,或者其他厂商的推送服务器,这里不作具体的限定。
S1303、推送服务器对令牌请求中携带的设备标识、APP ID进行鉴权,鉴权通过后生成 令牌。
S1304、推送服务器向手机100发送令牌,手机100接收该令牌。
具体的,该令牌中可以携带安全套接层(secure socket layer,SSL)证书、私钥等信息。
S1305、手机100代理其他设备将该令牌发送至第三方应用服务器,第三方应用服务器 接收该令牌。
示例性的,假设该APP是微信,第三方应用服务器是微信的应用服务器,该令牌是微 信的令牌,手机100接收到微信的令牌之后,代理其他设备向微信的应用服务器发送该令 牌。
S1306、第三方应用服务器向推送服务器发送推送消息,推送服务器根据推送消息中携 带的令牌和设备路由信息向手机100发送推送消息,手机100接收该推送消息。
具体的,推送服务器与手机100之间建立有长连接,手机100可以通过该长连接接收 推送消息,以及决策是否将该推送消息转发到同一局域网内的其他设备(例如智能手表3)。
在图13所示的实施例中,中心设备(手机100)可以代理同一局域网内的其他设备向 推送服务器获取某个应用的推送消息服务的令牌,有效提高不同设备获取令牌的效率。
下面以推送服务器是APNs为例,介绍手机100获得令牌的具体过程。
请参见图14,具体包括:
S1401、手机100向APNs发送设备令牌请求,APNs接收该令牌请求。
S1402、APNs生成令牌数据包。
S1403、APNs基于APP标识、设备标识生成设备的SSL证书。
具体的,APN生成设备的SSL证书之后,APNs将SSL证书写入令牌数据包。
S1404、APNs根据令牌密钥对令牌数据包进行加密,得到加密后的令牌。
S1405、APNs向手机100发送令牌,手机100接收该令牌,该令牌中携带SSL证书和密钥。
S1406、手机100代理其他设备将该令牌发送至第三方应用服务器,第三方应用服务器 接收该令牌。
在图14所示的实施例中,中心设备(手机100)可以代理同一局域网内的其他设备将 令牌上传至对应的第三方应用服务器,有效提升其他设备注册推送消息服务的效率。
以上是从设备的角度对手机100代理同一局域网内的其他设备获取令牌的过程进行介 绍,下面以手机100的软件服务模块为例,介绍手机100代理同一局域网内的其他设备获 取令牌的过程。
请参见图15,具体包括以下步骤:
S1501、手机100运行APP集成华为移动服务软件工具包(huawei mobile servicesoftware development kit,HMS SDK),调用获取令牌的应用程序接口,向华为移动服务(huawei mobile service,HMS)发起令牌请求。
其中,HMS是华为云服务的合集,包含华为帐号、应用内支付、华为推送服务、华为云盘服务、华为广告服务、消息服务、付费下载服务、快应用等服务,本申请实施例主要 涉及华为推送服务(即前文所述的推送核心服务)。HMS SDK是华为开发者联盟为开发人 员调用HMS提供的一个虚拟的程序包,手机100运行HMS SDK,即可以调用相应的软件 功能(例如,前述获取令牌的应用程序接口)。
具体的,手机100在接收到同一局域网内的其他设备发送的注册推送通知服务请求, 或者,手机100检测到该其他设备运行HMS SDK时,手机100执行S1501。
应理解,这里的HMS也可以理解为前文所述的推送核心服务。
S1502、HMS启动推送代理(push agent)进程。
具体的,推送代理进程即图15中所示的Hwid:push sevice进程。
S1503、HMS以超文本传输协议(hyper text transfer protocol,HTTP)方式向HPNS获 取令牌。
S1504、HPNS向HMS返回令牌,HMS接收该令牌。
S1505、HMS向HMS SDK返回令牌,HMS SDK接收该令牌。
S1506、HMS SDK发送应用内广播。
S1507、HMS SDK应用内广播回调。
应理解,HMS SDK接收该令牌之后,向应用内的其他线程广播,以使该应用启动其他 的线程。
示例性的,HMS SDK接收到微信应用注册推送消息服务的令牌之后,可以向同一局域 网内的其他设备的微信应用的其他线程进行广播,以启动微信应用接收推送消息的线程。
下面结合具体的示例,以这里HMS以推送核心服务(push core)为例,介绍手机100上运行的APP向推送服务器获取令牌,以及手机100接收来自第三方应用服务器的推送消息的具体的过程。
请参见图16,具体包括以下步骤:
S1601、视频APP调用HMS SDK,以启动手机100上的推送核心服务。
应理解,视频APP和推送核心服务(Push core)均是运行在手机100的。
S1602、推送核心服务向推送服务器发送令牌请求,推送服务器接收该令牌请求。
具体的,在推送核心服务向推送服务器发送令牌请求之前,推送核心服务与推送服务 器需要建立长连接。
S1603、推送服务器通过推送核心服务向视频APP返回令牌,视频APP接收该令牌。
S1604、视频APP将该令牌发送至视频服务器,视频服务器接收该令牌。
S1605、视频服务器向推送服务器发送推送消息,推送服务器接收该推送消息。
具体的,请参见图17,视频服务器可以以安全版超文本传输协议(hyper texttransfer protocol over secure socket layer,HTTPS)的方式向推送服务器发送推送消息。
S1606、推送服务器向推送核心服务发送该推送消息,推送核心服务接收该推送消息。
应理解,推送服务器向推送核心服务发送推送消息,实质上是向运行推送核心服务的 手机100发送推送消息。
S1607、推送核心服务启动Push NC。
可选的,请继续参见图17,推送服务器和手机100之间建立有长连接之后,可以对该 长连接进行安全加密得到一条安全加密通道,推送服务器可以通过该安全加密通道将该推 送消息发送至手机100中运行的推送核心服务;推送核心服务接收该推送消息之后,启动 手机100中的Push NC,对该推送消息进行解析,并进行明文广播即在该手机100的通知栏 显示出视频APP的通知消息。如此,可以保证推送消息的安全传输,避免用户的隐私泄露。
其中,手机100的通知栏显示界面,请参见图18,在图18中,当手机100运行的推送核心服务接收到推送服务器发送的推送消息之后,将这些推送消息显示在手机100的通知栏(如图18中的(a)所示);若手机100检测到针对通知栏的下拉操作,显示如图18中的 (b)所示的消息列表:“《我们相爱吧》第五期已更新”、“您关注的博主又发布新动态了, 快来看吧!!!”,手机100检测到用户针对消息列表的点击操作,就可以跳转到对应APP的 应用界面。
以上以手机100是中心设备为例,介绍了推送服务器向电子设备推送消息的具体过程, 下面结合图19介绍手机100不作为某一局域网内的中心设备时,手机100接收推送消息的 过程。
在图19所示的实施例中,推送服务器以HPNs为例,第三方应用服务器以APP1服务器、APPN服务器、即时通讯(intent message,IM)应用服务器为例。其中,APP1服务器、 APPN服务器可以是对即时性要求不是很高的APP的服务器,(例如,爱奇艺服务器、新浪 微博服务器等),IM应用服务器则是对消息即时性要求较高的APP的服务器,(例如,微信 服务器)。
在图19中,路由器500和手机100处于同一局域网,路由器500和手机100均运行推送核心服务,以及通过该推送核心服务上报自己的设备信息(工作情况、供电情况),路由器500和手机100决策出持续工作时间最长的路由器500作为中心设备,由路由器500与HPNs建立长连接,路由器500和手机100建立短连接。
路由器500与HPNs建立长连接之后,路由器500代理手机100向HPNs获取注册令牌以及向手机100发送推送消息的具体过程如下:
①手机100上运行的应用发起令牌注册,以使中心设备代理手机100注册令牌。
②路由器500向HPNs发起令牌请求,HPNs接收该令牌请求。
具体的,HPNs响应于该令牌请求,为该应用分配令牌。具体的实施过程参见图14的描述,这里不再赘述。
③HPNs向路由器500返回令牌,路由器500通过推送核心服务向手机100返回令牌。
④手机100的核心推送服务将该令牌上传至对应的应用服务器。
⑤IM应用服务器直接向手机100推送在线消息,手机100接收该在线消息。
⑥APPN应用服务器向HPNs发送离线消息,HPNs向路由器500发送离线消息,路由器500接收该离线消息。
⑦若路由器500的核心推送服务确定该离线消息是分发给路由器500的,启动本地的 Push NC,将该离线消息展示出来。
⑧若路由器500的核心推送服务确定该离线消息是分发给手机100的,将该离线消息 分发给手机100的核心推送服务。
在一种可能的设计中,该离线消息是透传信息,则路由器500将该离线信息转发至手 机100,但手机100不将该离线消息显示在手机100的通知栏。应理解,透传信息可以理解为客户端App自己来处理的特定消息,不需要用户感知的信息。
示例性的,若新浪微博的应用服务器检测到新浪微博的APP软件程序包修复信息更新, 新浪微博的应用服务器向HPNs发送该APP软件程序包修复信息,HPNs再向路由器500发送该APP软件程序包修复信息,路由器500再向手机100发送该软件程序包修复信息, 以使手机100在后台运行该软件程序包,自动修复新浪微博的客户端APP,但不在手机100 的通知栏进行显示。
在另一种可能的设计中,该离线信息是通知栏信息,路由器500将该离线信息转发至 手机100,手机100执行步骤⑨。
⑨手机100收到该离线消息之后,手机100的核心推送服务启动手机100的PushNC,
将该离线消息展示在手机100的通知栏,以实现分布式通知。
应理解,手机100和路由器500所处的局域网内还可以包括更多的设备。
示例性的,若手机100和路由器500所处的局域网内还存在平板2,且手机100和平板 2都关联应用登录账号A,路由器500仍然作为中心设备;路由器500收到针对应用登录账号A的推送消息,可以将该推送消息转发至手机100,并根据手机100反馈的该推送消息 的处理情况决策是否将该推送消息转发给平板2,或者,路由器500可以同时将该推送消息 转发至手机100、平板2,并在确定手机100对该推送消息处理之后,将该推送消息的处理 情况更新给平板2。
在图19所示的实施例中,同一局域网内的任一设备选择中心设备与推送服务器建立长 连接,有效减少推送服务器和电子设备之间的长连接数量,又实现了推送消息的协同转发, 用户无需重复处理相同的推送消息,进而有效提升用户体验。
基于同一技术构思,本申请实施例还提供一种消息推送装置2000,该装置2000具备实 现上述中第一设备(例如路由器500)的功能,第一设备和至少一个第二设备处于同一局域 网内,且第一设备与推送服务器之间具有长连接,至少一个第二设备与推送服务器之间不 具有长连接。所述功能或单元或手段可以通过软件实现,或者通过硬件实现,也可以通过 硬件执行相应的软件实现。
示例性的,请参见图20,装置2000可以包括:接收模块2001,用于基于长连接接收来自推送服务器的第一推送信息;发送模块2002,用于将第一推送信息转发给至少一个第二设备。
应理解,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的 功能描述,在此不再赘述。
基于同一技术构思,本申请实施例还提供一种消息接收装置2100,请参见图21,该装 置2100具备实现上述中至少一个设备中的任一第二设备的功能,第一设备和至少一个第二 设备处于同一局域网内,且第一设备与推送服务器之间具有长连接,至少一个第二设备与 推送服务器之间不具有长连接。所述功能或单元或手段可以通过软件实现,或者通过硬件 实现,也可以通过硬件执行相应的软件实现。
示例性的,装置2100可以包括接收模块2101,用于接收来自第一设备的第一推送信息, 其中,第一推送信息是推送服务器通过长连接转发给第一设备的。当然,装置2100还可以 包括处理器等其他部件,具体参照图5或图6A所示。
应理解,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的 功能描述,在此不再赘述。
基于同一技术构思,本申请实施例还提供一种第一电子设备2200,用于实现上述实施 例中的方法。
如图22所示,第一电子设备2200可以包括一个或多个处理器2201、一个或多个存储 器2202;处理器2201用于执行存储器2202存储的程序或指令,当存储器2202存储的程序或指令被执行时,所述处理器用于执行上述实施例中的方法。
可选的,第一电子设备2200还可以包括通信接口2203。附图22用虚线表示通信接口 2203对于第一电子设备2200是可选的。
其中,处理器2201、存储器2202和通信接口2203的个数并不构成对本申请实施例的 限定,具体实施时,可以根据业务需求任意配置。
可选的,所述存储器2202位于所述第一电子设备2200之外。
可选的,所述第一电子设备2200包括所述存储器2202,所述存储器2202与所述一个 或多个处理器2201相连,所述存储器2202存储有可被所述至少一个处理器2201执行的指 令。附图22用虚线表示存储器2202对于第一电子设备2200是可选的。
其中,所述处理器2201和所述存储器2202可以通过接口电路耦合,也可以集成在一 起,这里不做限制。
本申请实施例中不限定上述处理器2201、存储器2202以及通信接口2203之间的具体 连接介质。本申请实施例在图22中以处理器2201、存储器2202以及通信接口2203之间通过总线2204连接,总线在图22中以粗线表示,其它部件之间的连接方式,仅是进行示意 性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表 示,图22中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
基于同一技术构思,本申请实施例还提供一种第二电子设备2300,用于实现上述实施 例中的方法。
如图23所示,第二电子设备2300可以包括一个或多个处理器2301、一个或多个存储 器2302;处理器2301用于执行存储器2302存储的程序或指令,当存储器2302存储的程序或指令被执行时,所述处理器用于执行上述实施例中的方法。
可选的,第二电子设备2300还可以包括通信接口2303。附图23用虚线表示通信接口 2303对于第二电子设备2300是可选的。
其中,处理器2301、存储器2302和通信接口2303的个数并不构成对本申请实施例的 限定,具体实施时,可以根据业务需求任意配置。
可选的,所述存储器2302位于所述第二电子设备2300之外。
可选的,所述第二电子设备2300包括所述存储器2302,所述存储器2302与所述一个 或多个处理器2301相连,所述存储器2302存储有可被所述至少一个处理器2301执行的指 令。附图23用虚线表示存储器2302对于电子设备2300是可选的。
其中,所述处理器2301和所述存储器2302可以通过接口电路耦合,也可以集成在一 起,这里不做限制。
本申请实施例中不限定上述处理器2301、存储器2302以及通信接口2303之间的具体 连接介质。本申请实施例在图23中以处理器2301、存储器2302以及通信接口2303之间通过总线2304连接,总线在图23中以粗线表示,其它部件之间的连接方式,仅是进行示意 性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表 示,图23中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,本申请实施例中提及的处理器可以通过硬件实现也可以通过软件实现。当通 过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可 以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
示例性的,处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其 他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可 以是微处理器或者该处理器也可以是任何常规的处理器等。
应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可 包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读 存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM), 其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随 机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同 步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取 存储器(DoubleData Eate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器 (Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM, SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、 分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)可以集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
基于同一技术构思,本申请实施例还提供一种计算机可读存储介质,包括程序或指令, 当所述程序或指令在计算机上运行时,使得图22所示实施例中第一电子设备所执行的方法 被执行,或者,使得图23所示实施例中第二电子设备所执行的方法被执行。
基于同一技术构思,本申请实施例还提供一种芯片,所述芯片与存储器耦合,用于读 取并执行所述存储器中存储的程序指令,使得图22所示实施例中第一电子设备所执行的方 法被执行,或者,使得图23所示实施例中第二电子设备所执行的方法被执行。
上述各实施例可以相互结合以实现不同的技术效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产 品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程 序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和 /或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程 和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程 序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以 产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于 实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式 工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置 的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方 框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机 或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他 可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方 框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实 施例的范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技 术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (23)
1.一种推送消息的方法,其特征在于,应用于第一设备,所述第一设备和至少一个第二设备处于同一局域网内,且所述第一设备与推送服务器之间具有长连接,所述至少一个第二设备与所述推送服务器之间不具有长连接;所述方法包括:
所述第一设备基于所述长连接接收来自所述推送服务器的第一推送信息;
所述第一设备将所述第一推送信息转发给所述至少一个第二设备。
2.如权利要求1所述的方法,其特征在于,所述第一设备和所述至少一个第二设备关联第一系统账号,所述第一推送信息为所述推送服务器推送给所述第一系统账号的信息。
3.如权利要求1所述的方法,其特征在于,所述第一设备和所述至少一个第二设备中的每个第二设备均安装有第一应用,且所述第一设备和所述每个第二设备上的所述第一应用的登录账号均为第一应用账号,所述第一推送信息为所述推送服务器推送给所述第一应用账号的信息。
4.如权利要求1所述的方法,其特征在于,所述第一推送信息为通知类信息,所述第一设备基于所述长连接接收来自所述推送服务器的第一推送信息之后,将所述第一推送信息转发给所述至少一个第二设备之前,还包括:
所述第一设备在后台运行推送核心服务程序,对所述第一推送信息进行封装处理。
5.如权利要求1-4任一项所述的方法,其特征在于,所述第一设备为所述第一设备和所述至少一个第二设备中通过外部电源供电的设备,或者,将所述至少一个第二设备中持续工作时间最长的设备。
6.如权利要求1-5任一项所述的方法,其特征在于,所述第一推送信息包括目标系统账号标识;所述将所述第一推送信息转发给所述至少一个第二设备之前,还包括:
所述第一设备根据预设的系统账号标识和设备标识之间的第一映射关系,确定在所述局域网内与所述目标系统账号标识对应的至少一个设备标识,将所述至少一个设备标识分别对应的设备确定为所述至少一个第二设备。
7.如权利要求1-5任一项所述的方法,其特征在于,所述第一推送信息包括目标应用账号标识;
所述将所述第一推送信息转发给所述至少一个第二设备之前,还包括:
所述第一设备根据预设的应用账号标识和设备标识之间的第二映射关系,确定在所述局域网内与所述目标应用账号标识对应的至少一个设备标识,将所述至少一个设备标识分别对应的设备确定为所述至少一个第二设备;
所述将所述第一推送信息转发给所述至少一个第二设备,包括:所述第一设备确定所述至少一个第二设备中正在前台运行所述目标应用账号标识对应的第二应用的至少一个第三设备,并将所述第一推送信息发送到所述至少一个第三设备。
8.如权利要求1-5任一项所述的方法,其特征在于,所述第一推送信息包括目标应用账号标识、目标系统账号标识;
所述将所述第一推送信息转发给所述至少一个第二设备之前,还包括:
所述第一设备根据预设的系统账号标识、应用账号标识与设备标识之间的第三映射关系,确定在所述局域网内与所述目标应用账号标识、所述目标系统账号标识对应的至少一个设备标识,将所述至少一个设备标识分别对应的设备确定为所述至少一个第二设备;
所述将所述第一推送信息转发给所述至少一个第二设备,包括:
所述第一设备确定所述至少一个第二设备均未在前台运行所述目标应用账号标识对应的第二应用,则确定所述至少一个第二设备中正在前台运行第三应用的至少一个第三设备;所述第一设备将所述第一推送信息转发至所述至少一个第三设备。
9.如权利要求1-6任一项所述的方法,其特征在于,所述将所述第一推送信息转发给所述至少一个第二设备之后,还包括:
所述第一设备获取所述至少一个第二设备中任一第二设备对所述第一推送信息的处理情况;
所述第一设备将所述处理情况发送给所述至少一个第二设备中除所述任一第二设备以外的其他设备。
10.如权利要求1-9任一项所述的方法,其特征在于,所述方法还包括:
所述第一设备向所述推送服务器获取所述至少一个第二设备中任一第二设备的应用令牌,并将所述应用令牌发送给所述任一第二设备。
11.如权利要求1-10任一项所述的方法,其特征在于,在所述第一设备基于所述长连接接收来自所述推送服务器的第一推送信息之前,所述方法还包括:
所述第一设备确定自身为所述局域网中的中心设备;
所述第一设备与所述推送服务器建立所述长连接,或者保持与所述推送服务器之间的所述长连接。
12.如权利要求11所述的方法,其特征在于,在所述第一设备确定自身为所述第一局域网中的中心设备之前,所述方法还包括:
所述第一设备确定所述局域网中的设备数量发生变化。
13.一种推送消息的方法,其特征在于,应用于至少一个第二设备中的任一第二设备,所述至少一个第二设备和第一设备处于同一局域网内,且所述第一设备与推送服务器之间具有长连接,所述至少一个第二设备与所述推送服务器之间不具有长连接;
所述方法包括:
所述任一第二设备接收来自所述第一设备的第一推送信息,所述第一推送信息是所述推送服务器通过所述长连接转发给所述第一设备的。
14.如权利要求13所述的方法,其特征在于,所述第一设备和所述至少一个第二设备关联第一系统账号,所述第一推送信息为所述推送服务器推送给所述第一系统账号的信息。
15.如权利要求13所述的方法,其特征在于,所述第一设备和所述至少一个第二设备中的每个第二设备均安装有第一应用,且所述第一设备和所述每个第二设备上的所述第一应用的登录账号均为第一应用账号,所述第一推送信息为所述推送服务器推送给所述第一应用账号的信息。
16.如权利要求13-15任一项所述的方法,其特征在于,所述第一推送信息包括目标系统账号标识;所述目标系统账号标识用于所述第一设备根据预设的系统账号标识和设备标识之间的第一映射关系在所述局域网内确定所述任一第二设备。
17.如权利要求13-15任一项所述的方法,其特征在于,所述第一推送信息包括目标应用账号标识;所述目标应用账号标识用于所述第一设备根据预设的应用账号标识和设备标识之间的第二映射关系在所述局域网内确定所述至少一个第二设备,所述任一第二设备是所述至少一个第二设备中正在前台运行所述目标应用账号标识对应的第二应用的设备。
18.如权利要求13-15任一项所述的方法,其特征在于,所述第一推送信息包括目标应用账号标识、目标系统账号标识;所述目标系统账号标识和所述目标应用账号标识用于所述第一设备根据预设的系统账号标识、应用账号标识与设备标识之间的第三映射关系在所述局域网内确定所述至少一个第二设备,所述任一第二设备是所述至少一个第二设备中正在前台运行第三应用的设备。
19.如权利要求13-18任一项所述的方法,其特征在于,所述方法还包括:
所述任一第二设备从所述第一设备接收应用令牌,所述应用令牌是所述第一设备从所述推送服务器获取的。
20.一种第一电子设备,其特征在于,包括:
一个或多个处理器;
一个或多个存储器;
其中,所述一个或多个存储器存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得所述第一电子设备执行如权利要求1-12任一项所述的方法。
21.一种第二电子设备,其特征在于,包括:
一个或多个处理器;
一个或多个存储器;
其中,所述一个或多个存储器存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得所述第二电子设备执行如权利要求13-19任一项所述的方法。
22.一种消息推送系统,其特征在于,包括推送服务器、第一设备和至少一个第二设备;所述第一设备和至少一个第二设备处于同一局域网内,且所述第一设备与推送服务器之间具有长连接,所述至少一个第二设备与所述推送服务器之间不具有长连接;
所述推送服务器,用于基于所述长连接向所述第一设备发送第一推送信息;
所述第一设备,用于基于所述长连接接收所述第一推送信息,并将所述第一推送信息转发给所述至少一个第二设备;
所述至少一个第二设备,用于从所述第一设备接收所述第一推送信息。
23.一种计算机可读存储介质,其特征在于,包括程序或指令,当所述程序或指令在计算机上运行时,使得如权利要求1-12中任一项所述的方法被执行,或,使得权利要求13-19中任一项所述的方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011365694.0A CN114584613B (zh) | 2020-11-28 | 2020-11-28 | 一种推送消息的方法、消息推送系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011365694.0A CN114584613B (zh) | 2020-11-28 | 2020-11-28 | 一种推送消息的方法、消息推送系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114584613A true CN114584613A (zh) | 2022-06-03 |
CN114584613B CN114584613B (zh) | 2024-05-14 |
Family
ID=81767460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011365694.0A Active CN114584613B (zh) | 2020-11-28 | 2020-11-28 | 一种推送消息的方法、消息推送系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114584613B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116095224A (zh) * | 2022-08-31 | 2023-05-09 | 荣耀终端有限公司 | 通知显示方法和终端设备 |
WO2024040992A1 (zh) * | 2022-08-22 | 2024-02-29 | 荣耀终端有限公司 | 一种处理消息的方法、装置和电子设备 |
WO2024060925A1 (zh) * | 2022-09-23 | 2024-03-28 | 荣耀终端有限公司 | 一种通知消息处理系统、方法和装置 |
WO2024067004A1 (zh) * | 2022-09-28 | 2024-04-04 | 华为技术有限公司 | 推广方法、电子设备及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103916442A (zh) * | 2013-01-07 | 2014-07-09 | 阿里巴巴集团控股有限公司 | 消息推送实现方法、移动终端及消息推送系统 |
CN107332880A (zh) * | 2017-06-05 | 2017-11-07 | 深圳市酷开网络科技有限公司 | 信息推送的方法、装置及计算机可读存储介质 |
CN107645517A (zh) * | 2016-07-20 | 2018-01-30 | 腾讯科技(深圳)有限公司 | 数据推送方法及装置 |
CN108011937A (zh) * | 2017-11-29 | 2018-05-08 | 努比亚技术有限公司 | 消息推送方法、服务器、智能终端及计算机可读存储介质 |
CN108040116A (zh) * | 2017-12-22 | 2018-05-15 | 努比亚技术有限公司 | 消息推送方法、路由器及计算机可读存储介质 |
CN108512743A (zh) * | 2018-03-06 | 2018-09-07 | 北京奇艺世纪科技有限公司 | 局域网即时通信服务方法、装置以及电子设备 |
US20190253509A1 (en) * | 2018-02-13 | 2019-08-15 | Oracle International Corporation | Increasing reliability of push notification-based authentication or authorization |
WO2020015571A1 (zh) * | 2018-07-17 | 2020-01-23 | 奇酷互联网络科技(深圳)有限公司 | 移动终端和应用程序后台运行的方法、装置 |
CN111917811A (zh) * | 2019-05-10 | 2020-11-10 | 北京车和家信息技术有限公司 | 一种消息推送方法及系统 |
-
2020
- 2020-11-28 CN CN202011365694.0A patent/CN114584613B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103916442A (zh) * | 2013-01-07 | 2014-07-09 | 阿里巴巴集团控股有限公司 | 消息推送实现方法、移动终端及消息推送系统 |
CN107645517A (zh) * | 2016-07-20 | 2018-01-30 | 腾讯科技(深圳)有限公司 | 数据推送方法及装置 |
CN107332880A (zh) * | 2017-06-05 | 2017-11-07 | 深圳市酷开网络科技有限公司 | 信息推送的方法、装置及计算机可读存储介质 |
CN108011937A (zh) * | 2017-11-29 | 2018-05-08 | 努比亚技术有限公司 | 消息推送方法、服务器、智能终端及计算机可读存储介质 |
CN108040116A (zh) * | 2017-12-22 | 2018-05-15 | 努比亚技术有限公司 | 消息推送方法、路由器及计算机可读存储介质 |
US20190253509A1 (en) * | 2018-02-13 | 2019-08-15 | Oracle International Corporation | Increasing reliability of push notification-based authentication or authorization |
CN108512743A (zh) * | 2018-03-06 | 2018-09-07 | 北京奇艺世纪科技有限公司 | 局域网即时通信服务方法、装置以及电子设备 |
WO2020015571A1 (zh) * | 2018-07-17 | 2020-01-23 | 奇酷互联网络科技(深圳)有限公司 | 移动终端和应用程序后台运行的方法、装置 |
CN111917811A (zh) * | 2019-05-10 | 2020-11-10 | 北京车和家信息技术有限公司 | 一种消息推送方法及系统 |
Non-Patent Citations (1)
Title |
---|
姜翔;: "消息推送技术研究与未来展望", 电信网技术, no. 04, 15 April 2018 (2018-04-15) * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024040992A1 (zh) * | 2022-08-22 | 2024-02-29 | 荣耀终端有限公司 | 一种处理消息的方法、装置和电子设备 |
CN116095224A (zh) * | 2022-08-31 | 2023-05-09 | 荣耀终端有限公司 | 通知显示方法和终端设备 |
CN116095224B (zh) * | 2022-08-31 | 2023-10-31 | 荣耀终端有限公司 | 通知显示方法和终端设备 |
WO2024060925A1 (zh) * | 2022-09-23 | 2024-03-28 | 荣耀终端有限公司 | 一种通知消息处理系统、方法和装置 |
WO2024067004A1 (zh) * | 2022-09-28 | 2024-04-04 | 华为技术有限公司 | 推广方法、电子设备及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114584613B (zh) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111656754B (zh) | 用于边缘计算服务的方法及其电子装置 | |
CN114584613B (zh) | 一种推送消息的方法、消息推送系统及电子设备 | |
WO2021036809A1 (zh) | 一种sim模块的管理方法及电子设备 | |
EP3979571A1 (en) | Method for controlling device and terminal | |
US10516988B2 (en) | Profile processing method, profile processing apparatus, user terminal, and eUICC | |
US10764074B2 (en) | Method, apparatus, and system for providing specified communications service, and terminal | |
EP3135022B1 (en) | Answering a call with client through a host | |
WO2023000969A1 (zh) | 蜂窝通信功能的使用方法、相关装置及系统 | |
JP6404486B2 (ja) | 接続確立方法、装置、プログラム、及び記録媒体 | |
CN113647074B (zh) | 用于边缘计算服务的方法及其电子装置 | |
WO2021017894A1 (zh) | 一种使用远程sim模块的方法及电子设备 | |
KR20200115359A (ko) | 엣지 컴퓨팅 서비스를 위한 방법 및 그의 전자 장치 | |
JP2023511914A (ja) | オーディオ出力方法および端末デバイス | |
CN114741008B (zh) | 分布式跨设备协同方法、电子设备及通信系统 | |
JP2017531974A (ja) | ネットワーク接続方法、機器、システム、プログラム及び記録媒体 | |
KR102036686B1 (ko) | 무선 통신 시스템에서 채널을 선택하기 위한 방법 및 장치 | |
WO2022052731A1 (zh) | 传输数据的方法和电子设备 | |
CN114205805A (zh) | 一种迁移配置文件的方法及装置 | |
EP4287048A1 (en) | Login authentication method and electronic device | |
CN107820300A (zh) | 网络搜索方法及装置 | |
WO2024016503A1 (zh) | 一种通信方法及电子设备 | |
JP7153474B2 (ja) | メッセンジャーでのファイル送信時に機器間の通信技術を活用する方法及びシステム | |
WO2023005898A1 (zh) | 多终端联合会话管理方法、网络侧设备及终端 | |
KR102457007B1 (ko) | 리치 통신 스위트 서비스를 통한 비디오 공유 제어 방법 및 전자 장치 | |
EP3340712B1 (en) | Communication method and device |
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 |