CN105450514A - 基于xmpp的消息推送方法及*** - Google Patents

基于xmpp的消息推送方法及*** Download PDF

Info

Publication number
CN105450514A
CN105450514A CN201511034536.6A CN201511034536A CN105450514A CN 105450514 A CN105450514 A CN 105450514A CN 201511034536 A CN201511034536 A CN 201511034536A CN 105450514 A CN105450514 A CN 105450514A
Authority
CN
China
Prior art keywords
server
user terminal
message
xmpp
push
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
Application number
CN201511034536.6A
Other languages
English (en)
Other versions
CN105450514B (zh
Inventor
李兆祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhanjiang Xiaozhi Technology Co ltd
Original Assignee
Huizhou TCL Mobile Communication Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huizhou TCL Mobile Communication Co Ltd filed Critical Huizhou TCL Mobile Communication Co Ltd
Priority to CN201511034536.6A priority Critical patent/CN105450514B/zh
Publication of CN105450514A publication Critical patent/CN105450514A/zh
Application granted granted Critical
Publication of CN105450514B publication Critical patent/CN105450514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/4061Push-to services, e.g. push-to-talk or push-to-video

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种基于XMPP的消息推送方法及***,包括:用户终端向第一服务器发送注册请求消息,所述注册请求消息包括用户终端的ID账户;第一服务器记录用户终端的ID账户并完成注册;第二服务器将推送消息发送给第一服务器;第一服务器基于XMPP将推送消息推送给ID账户对应的用户终端。本发明能够提高消息推送服务的***兼容性,例如兼容STE手表***,为用户提供更加便利的信息获取途径。

Description

基于XMPP的消息推送方法及***
技术领域
本发明涉及通讯技术领域,具体涉及一种基于XMPP(ExtensibleMessagingandPresenceProtocol,可扩展通讯和存在协议)的消息推送方法以及基于该方法的消息推送***。
背景技术
当前,移动通信已从模拟通信发展到了数字移动通信阶段,未来移动通信的目标是能在任何时间和地点向任何人提供快速可靠的通信服务,因此如何实现即时和离线消息的推送受到越来越多的关注,这导致XMPP在消息推送领域的地位变得更加重要。
XMPP作为目前最灵活、最受欢迎的通信协议,广泛应用于消息推送领域,但受制于***限制,现有的消息推送服务的***兼容性差,例如GCM(GoogleCloudMessagingservice,谷歌云推送消息服务)仅支持Android***、APN(Applepushnotificationservice,苹果消息推送服务)仅支持iOS***,这大大限制了用户获取信息的途径。
发明内容
鉴于此,本发明提供一种消息推送方法及***,能够提高消息推送服务的***兼容性,为用户提供更加便利的信息获取途径。
本发明提供的一种消息推送方法,包括:用户终端向第一服务器发送请求消息,以向第一服务器发起注册申请,所述请求消息包括用户终端的ID账户;第一服务器记录用户终端的ID账户以完成注册;第二服务器基于XMPP将需要推送的推送消息发送给第一服务器;第一服务器将推送消息推送给ID账户对应的用户终端。
可选地,完成注册的用户终端安装有支持XMPP的SDK,并且在开启SDK后,ID账户对应的用户终端接收推送消息。
可选地,用户终端包括可穿戴设备,SDK包括基于C语言编程的应用包,第一服务器包括ApacheVysper服务器。
可选地,第一服务器基于XMPP将推送消息推送给ID账户对应的用户终端的步骤包括:第一服务器判断同一ID账户是否对应至少两个用户终端;若是,则第一服务器基于XMPP将推送消息推送给ID账户对应的至少一个用户终端。
可选地,第一服务器记录用户终端的ID账户以完成注册的步骤包括:第一服务器向用户终端发送基于XMPP的XML数据流,XML数据流包括XMPP的通信规范;用户终端向第一服务器反馈应答消息,以告知第一服务器用户终端已接收XMPP的通信规范。
本发明提供的一种消息推送***,包括:第一服务器,用于接收用户终端向第一服务器发起注册申请的请求消息,所述请求消息包括用户终端的ID账户;第一服务器,还用于记录用户终端的ID账户以完成注册;第二服务器,用于基于XMPP将需要推送的推送消息发送给第一服务器;第一服务器,进一步用于将推送消息推送给ID账户对应的用户终端。
可选地,完成注册的用户终端安装有支持XMPP的SDK,并且在开启SDK后,ID账户对应的用户终端接收推送消息。
可选地,用户终端包括可穿戴设备,SDK包括基于C语言编程的应用包,第一服务器包括ApacheVysper服务器。
可选地,第一服务器还用于判断同一ID账户是否对应至少两个用户终端,若是,则第一服务器基于XMPP将推送消息推送给ID账户对应的至少一个用户终端。
可选地,第一服务器用于向用户终端发送基于XMPP的XML数据流,XML数据流包括XMPP的通信规范;以及接收用户终端反馈的应答消息,所述应答消息用于指示用户终端已接收XMPP的通信规范,从而完成注册。
区别于现有技术,本发明的消息推送方法及***,设计一个单独的第一服务器记录用户终端的ID账户以及转发推送信息,用户终端无需直接和原本用于消息推送的第二服务器基于XMPP进行通信,而是改由第一服务器中转,从而降低对用户终端的***限制,提高消息推送服务的***兼容性,为用户提供更加便利的信息获取途径。
附图说明
图1是本发明一实施例的消息推送方法的流程示意图;
图2是本发明一实施例的消息推送***的结构示意图;
图3是本发明另一实施例的消息推送方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明所提供的示例性的实施例的技术方案进行清楚、完整地描述。
图1是本发明一实施例的消息推送方法的流程示意图,该方法基于图2所示的消息推送***20,区别于现有技术,本发明实施例新增一个服务器以记录用户终端的ID账户和转发推送信息,用户终端无需直接和原本用于消息推送的服务器基于XMPP进行通信,而是改由该新增加的服务器进行中转,从而降低对用户终端的***限制,能够提高消息推送服务的***兼容性。如图2所示,消息推送***20包括第一服务器21和第二服务器22,该第一服务器21为所述新增加的服务器,第二服务器22为原本用于消息推送的服务器,第一服务器21和第二服务器22之间基于XMPP进行通信以传递推送消息。
在实际场景的结构设计中,第二服务器22可视为XMPP业务处理服务器,第一服务器21可视为消息分发服务器。基于此,第一服务器21可以设置于第二服务器22中,作为一个子功能服务器,此时两者的接口包括但不限于I2C(Inter-IntegratedCircuit,两线式串行总线)接口、UART(UniversalAsynchronousReceiver/Transmitter,通用异步收发传输)串口;第一服务器21也可以单独设置于第二服务器22之外,作为一个独立的设备。但两者必须基于XMPP进行通信。
另外,本发明实施例还可以预先编程软件以作为第一服务器21,即第一服务器21为虚拟服务器,并将该编程软件存储于包括但不限于PC(PersonalComputer,个人计算机或电脑)机的服务器(包括第二服务器22)中,通过该编程软件自动监测当前进程,并在当前进程完成后根据预设的程序指令触发执行下一进程,实现其对应功能。进一步地,本发明实施例可以预先将编程软件的虚拟服务器—第一服务器21存储于预先构建的云数据中心的虚拟机中,以防止数据丢失。
本发明实施例适用的通信终端23可以为手机、PDA(PersonalDigitalAssistant,个人数字助理或平板电脑)、便携式通信装置等任何具有显示功能的终端,还可以为智能手环、智能眼镜等可穿戴设备以及嵌入于衣服、首饰等服饰配件中的显示设备。为区别于现有技术并更好的契合较高***兼容性的发明目的,本发明实施例以安装有STE(ST-Ericsson,意法-爱立信)***的智能手表为例进行描述。
结合图1和图2所示,本实施例的消息推送方法包括:
S11:用户终端向第一服务器发送请求消息,以向第一服务器发起注册申请,所述请求消息包括用户终端的ID账户;
用户终端23的ID账户包括用户终端23所安装的操作***OS(OperatingSystem,OS)的登录ID,该ID默认为一直登录状态,即与用户终端23是否开机无关。本发明实施例的用户终端23
S12:第一服务器记录用户终端的ID账户以完成注册;
优选第一服务器21以列表形式记录各用户终端23的ID账户,所谓完成注册表示用户终端23可以与第一服务器21进行主动通信或者被动通信。所述主动通信包括:第一服务器21为每一ID账户的用户终端23创建一登录账户,用户终端23可凭借该登录账户主动登录获取第一服务器21从第二服务器22接收并缓存的信息,即本发明实施例的消息推送服务支持离线消息推送。所述被动通信包括:第一服务器21一旦从第二服务器22接收到推送消息,即转发给ID账户对应的用户终端23,即本发明实施例的消息推送服务支持即时消息推送。
S13:第二服务器基于XMPP将需要推送的推送消息发送给第一服务器;
S14:第一服务器将推送消息推送给ID账户对应的用户终端。
若将第二服务器22的开发视为软件编程的第一次开发,则第一服务器21可视为软件编程的第二次开发,该二次开发可基于XMPP的ApacheVysper服务器,即第一服务器21为ApacheVysper服务器。
参照第一服务器21和第二服务器22之间基于XMPP进行通信,本发明实施例的用户终端23和第一服务器21也可以基于XMPP进行推送消息的转发。具体地,完成注册的用户终端23安装有支持XMPP的SDK(SoftwareDevelopmentKit,软件开发工具包),并且在开启SDK后,ID账户对应的用户终端23接收第一服务器21转发的推送消息。区别于安装Android***的用户终端23采用Java语言编程SDK、安装iOS***的用户终端23采用Object-c语言编程SDK,对于安装STE***的智能手表,该SDK优选采用C语言编程。
图3是本发明另一实施例的消息推送方法的流程示意图。与图1所示实施例的不同之处在于,本实施例适用于多个用户终端23登录同一个ID账户的应用场景。如图3所示,本实施例的方法包括:
S31:多个用户终端向第一服务器发送请求消息,以向第一服务器发起注册申请,所述请求消息包括各个用户终端的ID账户;
S32:第一服务器向各个用户终端发送基于XMPP的XML数据流,XML数据流包括XMPP的通信规范;
S33:各个用户终端向第一服务器反馈应答消息,以告知第一服务器自身已接收XMPP的通信规范;
该步骤S32和S33可知,在本实施例中,第一服务器21基于XMPP将推送消息转发给用户终端23。
S34:第一服务器记录各个用户终端的ID账户以完成注册;
S35:第二服务器基于XMPP将需要推送的推送消息发送给第一服务器;
S36:第一服务器判断同一ID账户是否对应至少两个用户终端,若是,则第一服务器基于XMPP将推送消息推送给ID账户对应的至少一个用户终端。
其中,第一服务器21可以按照预先设定将推送消息转发给ID账户对应的至少一个用户终端23,该预先设定包括例如开机频率、用户终端的开机时间长短、推送消息所对应的APP的使用时间长短中的至少一个,第一服务器21将推送消息转发给同一ID账户下频率最高和/或前述使用时间最长的一个。以预先设定为是否在线进行转发为例,具体而言:第一服务器21判断各用户终端23是否在线;若用户终端23不在线,则第一服务器21存储推送消息直至用户终端23在线再推送;若用户终端23在线,则第一服务器21将推送消息推送给在线的用户终端23。
综上所述,本发明实施例的消息推送方法及消息推送***,设计一个单独的第一服务器21记录用户终端23的ID账户以及转发推送信息,用户终端23无需直接和原本用于消息推送的第二服务器22基于XMPP进行通信,而是改由第一服务器21中转,从而降低对用户终端23的***限制,提高消息推送服务的***兼容性,为用户提供更加便利的信息获取途径。
基于此,以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,例如各实施例之间技术特征的相互结合,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于XMPP的消息推送方法,其特征在于,所述消息推送方法包括:
用户终端向第一服务器发送请求消息,以向所述第一服务器发起注册申请,其中所述请求消息包括所述用户终端的ID账户;
所述第一服务器记录所述用户终端的ID账户以完成注册;
第二服务器基于可扩展通讯和存在协议XMPP将需要推送的推送消息发送给所述第一服务器;
所述第一服务器将所述推送消息推送给持有ID账户的用户终端。
2.根据权利要求1所述的消息推送方法,其特征在于,完成注册的用户终端安装有支持XMPP的软件开发工具包SDK,并且在开启所述SDK后,所述ID账户对应的用户终端接收所述推送消息。
3.根据权利要求2所述的消息推送方法,其特征在于,所述用户终端包括可穿戴设备,所述SDK包括基于C语言编程的应用包,所述第一服务器包括ApacheVysper服务器。
4.根据权利要求1所述的消息推送方法,其特征在于,
所述第一服务器基于XMPP将所述推送消息推送给所述ID账户对应的用户终端的步骤包括:
所述第一服务器判断同一ID账户是否对应至少两个用户终端;
若是,则所述第一服务器基于XMPP将所述推送消息推送给所述ID账户对应的至少一个所述用户终端。
5.根据权利要求1所述的消息推送方法,其特征在于,所述第一服务器记录所述用户终端的ID账户以完成注册的步骤包括:
所述第一服务器向所述用户终端发送基于XMPP的XML数据流,所述XML数据流包括所述XMPP的通信规范;
所述用户终端向所述第一服务器反馈应答消息,以告知所述第一服务器所述用户终端已接收所述XMPP的通信规范。
6.一种基于XMPP的消息推送***,其特征在于,所述消息推送***包括:
第一服务器,用于接收所述用户终端向所述第一服务器发起注册申请的请求消息,所述请求消息包括所述用户终端的ID账户;
所述第一服务器,还用于记录所述用户终端的ID账户以完成注册;
第二服务器,用于基于可扩展通讯和存在协议XMPP将需要推送的推送消息发送给所述第一服务器;
所述第一服务器,进一步用于将所述推送消息推送给持有所述ID账户的用户终端。
7.根据权利要求6所述的消息推送***,其特征在于,完成注册的用户终端安装有支持XMPP的软件开发工具包SDK,并且在开启所述SDK后,所述ID账户对应的用户终端接收所述推送消息。
8.根据权利要求7所述的消息推送***,其特征在于,所述用户终端包括可穿戴设备,所述SDK包括基于C语言编程的应用包,所述第一服务器包括ApacheVysper服务器。
9.根据权利要求6所述的消息推送***,其特征在于,
所述第一服务器还用于判断同一所述ID账户是否对应至少两个用户终端,若是,则所述第一服务器基于所述XMPP将所述推送消息推送给所述ID账户对应的至少一个所述用户终端。
10.根据权利要求6所述的消息推送***,其特征在于,
所述第一服务器用于向所述用户终端发送基于XMPP的XML数据流,所述XML数据流包括所述XMPP的通信规范;以及
接收所述用户终端反馈的应答消息,所述应答消息用于指示所述用户终端已接收所述XMPP的通信规范,从而完成注册。
CN201511034536.6A 2015-12-31 2015-12-31 基于xmpp的消息推送方法及*** Active CN105450514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511034536.6A CN105450514B (zh) 2015-12-31 2015-12-31 基于xmpp的消息推送方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511034536.6A CN105450514B (zh) 2015-12-31 2015-12-31 基于xmpp的消息推送方法及***

Publications (2)

Publication Number Publication Date
CN105450514A true CN105450514A (zh) 2016-03-30
CN105450514B CN105450514B (zh) 2020-05-15

Family

ID=55560316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511034536.6A Active CN105450514B (zh) 2015-12-31 2015-12-31 基于xmpp的消息推送方法及***

Country Status (1)

Country Link
CN (1) CN105450514B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113973131A (zh) * 2021-10-18 2022-01-25 珠海格力电器股份有限公司 消息推送方法、消息接收方法、装置、存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731802A (zh) * 2012-10-12 2014-04-16 上海宝信软件股份有限公司 基于Android移动终端的设备管理方法
CN104219296A (zh) * 2014-08-25 2014-12-17 华中科技大学 一种Android云推送方法及***
CN104243271A (zh) * 2013-06-09 2014-12-24 深圳中兴网信科技有限公司 一种通过xmpp实现离线消息推送的方法及***
CN104539510A (zh) * 2014-12-02 2015-04-22 百纳(武汉)信息技术有限公司 一种基于多协议的信息推送***及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731802A (zh) * 2012-10-12 2014-04-16 上海宝信软件股份有限公司 基于Android移动终端的设备管理方法
CN104243271A (zh) * 2013-06-09 2014-12-24 深圳中兴网信科技有限公司 一种通过xmpp实现离线消息推送的方法及***
CN104219296A (zh) * 2014-08-25 2014-12-17 华中科技大学 一种Android云推送方法及***
CN104539510A (zh) * 2014-12-02 2015-04-22 百纳(武汉)信息技术有限公司 一种基于多协议的信息推送***及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113973131A (zh) * 2021-10-18 2022-01-25 珠海格力电器股份有限公司 消息推送方法、消息接收方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN105450514B (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
CN102255887B (zh) 对应多移动装置的线上服务的提供方法与***
CN103428287B (zh) 一种连接建立的方法及装置
CN103597805B (zh) 用于促进附件与多个设备之间的交互操作的技术
US20150077231A1 (en) Method, apparatus, and system for intelligently controlling device, and plug-and-play device
KR101233263B1 (ko) 피드백 메시지를 이용한 푸시 서비스 제공 시스템 및 방법
CN106462424A (zh) 一种终端***的升级方法、终端及***
US10038754B2 (en) Method of establishing communication session using active connection of mobile terminal to relay server
CN102387482A (zh) 手机服务信息获取方法、***及手机
CN104836848A (zh) 智能家电设备远程升级的方法
CN109309967B (zh) 传输文件的方法、设备及计算机可读存储介质
CN102567061B (zh) 电视机与遥控器双向升级的方法和***
CN103902339A (zh) 一种应用程序的安装方法、终端及服务器
CN102904959A (zh) 网络加速方法和网关
WO2015000379A1 (zh) 空调器的远程控制方法和空调器的远程控制***
CN105100021A (zh) 一种设备管理会话的触发方法、设备及***
EP2922267A1 (en) Method for achieving communication based on mbim interface and device therefor
EP2905938B1 (en) Method for acquiring locating information, terminal and mobile broadband interface model (mbim) device
CN105450748A (zh) 一种基于Openstack的物理机远程桌面的方法
CN107479911B (zh) 下载应用程序的方法、用户设备和应用服务器
CN106302093B (zh) 一种通信方法、***及服务器
EP2515601B1 (en) Dial-up connection method and device of mobile data terminal
EP3015990B1 (en) Information processing device, and destination information updating method and program
CN105450514A (zh) 基于xmpp的消息推送方法及***
CN104301419A (zh) 非本机远程下载控制***及方法
CN102880508A (zh) 一种实现PC操控Android终端的方法及***

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right

Effective date of registration: 20230717

Address after: 524000 room 513, incubator building, No. 70, middle Renmin Avenue, Zhanjiang Economic and Technological Development Zone, Zhanjiang City, Guangdong Province

Patentee after: Zhanjiang Xiaozhi Technology Co.,Ltd.

Address before: 516006 Zhongkai hi tech Zone, Huizhou, Guangdong, 86 Chang seven Road West

Patentee before: HUIZHOU TCL MOBILE COMMUNICATION Co.,Ltd.

TR01 Transfer of patent right