推送会话的建立方法、推送系统和相关设备

申请号 CN200810187915.2 申请日 2008-12-23 公开(公告)号 CN101764828A 公开(公告)日 2010-06-30
申请人 华为终端有限公司; 发明人 范姝男; 王雷; 杨健; 董挺;
摘要 本 发明 提供推送会话的建立方法、推送系统和相关设备,应用于通信技术领域。本发明推送会话的建立方法是 服务器 将客户端的设备标识信息添加到会话初始 请求 消息中发送到客户端;或者服务器将会话初始请求消息发给标识客户端的公共用户身份标识对应的所有客户端,由客户端来判断是否需要和服务器建立基于会话初始协议的推送会话连接,这样对于同一个公共用户身份标识绑定的多个客户端来说,只有需要接收推送请求消息的客户端和服务器建立基于会话初始协议的推送会话连接,和 现有技术 相比,节省了网络资源,从而防止了现有技术中客户端会连续收到推送会话请求消息的不良体验。
权利要求

1.一种推送会话的建立方法,其特征在于,包括:
获得客户端的设备标识信息;
将所述客户端的设备标识信息添加到会话初始请求消息SIR中;
根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接。
2.如权利要求1所述的方法,其特征在于,所述将所述客户端的设备标识信息添加到会话初始请求消息包括:
将所述客户端的设备标识信息添加到所述会话初始请求消息的头域和/或值域和/或消息体中。
3.如权利要求1所述的方法,其特征在于,所述将所述客户端的设备标识信息添加到会话初始请求消息中之后还包括:
用超文本传输协议HTTP消息,或SIP消息,或短信息SMS消息,或无线上网协议WSP消息,或电路域消息,或分组域消息封装所述会话初始请求消息。
4.如权利要求1所述的方法,其特征在于,所述获得所述客户端的设备标识信息之前还包括:判断绑定所述客户端的公共用户身份标识是否还绑定除所述客户端之外的其它客户端,若是,则执行获得所述客户端的设备标识信息的步骤。
5.如权利要求1至4任一项所述的方法,其特征在于,所述会话初始请求消息中还包括:指示所述客户端激活相应应用的应用信息,和/或指示所述客户端根据所述会话初始请求消息返回相应信息或发送相应消息的信息。
6.如权利要求5所述的方法,其特征在于,所述指示所述客户端根据所述会话初始请求消息返回相应信息为:指示所述客户端返回设备能信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息。
7.如权利要求1至4任一项所述的方法,其特征在于,还包括:将标识所述客户端的公共用户身份标识添加到所述会话初始请求消息中;
则所述方法还包括:
将所述会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接;
或根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接。
8.一种推送会话的建立方法,其特征在于,包括:
接收会话初始请求消息;
若所述会话初始请求消息中包含用户公共身份标识,根据所述会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接,若是,和所述服务器建立基于会话初始协议的推送会话连接。
9.如权利要求8所述的方法,其特征在于,若所述会话初始请求消息中包括设备标识信息,所述根据会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接包括:将所述设备标识信息和自身的信息进行匹配,如果所述自身的信息与所述设备标识信息相符合,则判断为需要和服务器建立基于会话初始协议的推送会话连接。
10.如权利要求9所述的方法,其特征在于,所述自身的信息为安全信息,和/或设置的偏好信息,和/或能力信息,和/或用户判断。
11.如权利要求8至10任一项权利要求所述的方法,其特征在于,若所述会话初始请求消息中还包含指示客户端根据所述会话初始请求消息返回相应信息或发送相应消息的信息,所述与所述服务器建立基于会话初始协议的推送会话连接之后还相应的包括:根据所述会话初始请求消息中的指示信息向所述服务器返回相应信息,或向服务器发送相应消息。
12.如权利要求11所述的方法,其特征在于,所述相应信息包括:客户端的设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息。
13.如权利要求8至10任一项权利要求所述的方法,其特征在于,若所述会话初始请求消息中包含应用信息,还包括:激活所述应用信息对应的应用,来获得向所述服务器返回的相应信息或向客户端进行注册。
14.一种推送系统,其特征在于,包括:
服务器,用于获得客户端的设备标识信息,将所述客户端的设备标识信息添加到会话初始请求消息SIR中,根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接;
客户端,用于接收到所述服务器发送的会话初始协议消息,和所述服务器建立基于会话初始协议的推送会话连接。
15.一种推送系统,其特征在于,包括:
服务器,用于添加客户端的公共身份标识到会话初始请求消息中,将所述会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要向服务器建立基于会话初始协议的推送会话连接;
客户端,用于接收所述服务器发送的包含用户公共身份标识的会话初始请求消息,当根据所述会话初始请求消息与自身的信息确定需要和服务器建立基于会话初始协议的推送会话连接时,和所述服务器建立基于会话初始协议的推送会话连接。
16.如权利要求15所述的推送系统,其特征在于,若所述服务器发送的会话初始请求消息中还包括设备标识信息,则所述客户端将所述设备标识信息与自身的信息进行匹配,若相符合,则确定为需要和所述服务器建立基于会话初始协议的推送会话连接。
17.一种服务器,其特征在于,包括:
信息获得单元,用于获得客户端的设备标识信息;
消息添加单元,用于将所述信息获得单元获得的客户端的设备标识信息添加到会话初始请求消息中;
请求发送单元,用于根据所述客户端的设备标识信息将所述消息添加单元添加的会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接。
18.如权要求17所述的服务器,其特征在于,还包括:消息封装单元,用于用超文本传输协议HTTP消息,或SIP消息,或短信息协议SMS消息,或无线上网协议WSP消息,或电路域消息,或分组域消息封装所述消息添加单元添加的会话初始请求消息。
19.如权要求17或18所述的服务器,其特征在于,还包括:标识判断单元,用于判断绑定所述客户端的公共用户身份标识是否还绑定除所述客户端之外的其它客户端,若是,则通知所述信息获得单元获得所述客户端的设备标识信息。
20.如权要求17或18所述的服务器,其特征在于,还包括:标识添加单元,用于将标识所述客户端的公共用户身份标识添加到所述会话初始请求消息中;
所述请求发送单元,还用于将所述标识添加单元添加的会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要根据所述会话初始请求消息向服务器建立基于会话初始协议的推送会话连接。
21.一种客户端,其特征在于,包括:
请求接收单元,用于接收会话初始请求消息;
判断连接单元,用于若所述请求接收单元接收的会话初始请求消息中包含用户公共身份标识,根据所述会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接,若是,和所述服务器建立基于会话初始协议的推送会话连接。
22.如权利要求21所述的客户端,其特征在于,所述判断连接单元包括:
匹配单元,用于当所述请求接收单元接收的会话初始请求消息中包含设备标识信息,将所述设备标识信息和自身的信息进行匹配;
连接单元,用于当所述匹配单元匹配的结果为所述自身的信息与所述设备标识信息相符合,则和所述服务器建立基于会话初始协议的推送会话连接。
23.如权利要求21或22所述的客户端,其特征在于,还包括:回应单元,用于当所述请求接收单元接收的会话初始请求消息中包含指示客户端根据所述会话初始请求消息返回相应信息或发送相应消息的信息,根据所述会话初始请求消息中的指示信息向所述服务器返回相应信息,或向服务器发送相应消息。
24.如权利要求21或22所述的客户端,其特征在于,还包括:应用激活单元,用于当所述请求接收单元接收的会话初始请求消息中包含应用信息,激活所述应用信息对应的应用,来获得向所述服务器返回的相应信息或向客户端进行注册。

说明书全文

技术领域

发明涉及通信技术领域,特别涉及推送会话的建立方法、推送系统和相关设备。

背景技术

推送(Push)是一个内容分发的机制,采用客户端/服务器模式的工作方式,要求服务器不需要客户端对推送的内容请求就可以将所需要的内容进行分发。服务器对推送内容的分发具体为:将推送请求消息封装成空中协议(OTA)消息,如无线会话的空中协议(OTA-WSP)和超文本传输的空中协议(OTA-HTTP)等消息,并将封装后的推送请求消息发送给客户端。
现有技术中服务器发送推送请求消息给客户端前,需要判断是否已经与所述客户端建立连接,如果还未建立连接,则需要在所述客户端和服务器之间建立连接,请求客户端向网络建立连接来接收相应的推送消息。现有技术中客户端和服务器建立基于会话初始协议(SIP)的连接具体通过如下步骤实现:服务器将所述用户识别标识(User ID)添加到会话初始请求消息(SIR)中,并发送给所述客户端,请求所述客户端与服务器建立连接,在SIR消息中可以包含信息指示所述客户端返回一定信息,如指示客户端返回偏好信息、能信息等;客户端在接收到SIR消息,与服务器建立连接,之后可以根据SIR消息中的信息向服务器返回在所述SIR消息中请求的信息。
在对上述现有技术实践和研究的过程中,本发明的发明人发现:
现有的推送会话的建立方法是通过在SIR消息中添加用户识别标识(User ID)来请求所述用户识别标识对应的客户端与服务器建立连接,而用户识别标识为公共用户身份标识,其格式采用SIP统一资源标识(URI),它通过诸如用户电话号码或主机名等元素来构造(例如:SIP:user@company.com),可以绑定多个客户端如台式电脑、笔记本、第二代移动通讯技术(2G)手机等,这时SIR消息将会发送给所述用户识别标识对应的所有客户端,所有客户端向服务器建立连接后,都接收一条推送请求消息,或所述所有客户端都向服务器返回在SIR消息中请求的信息,造成网络资源的浪费;且有的客户端可能并不希望接收服务器发送的推送请求消息,这样造成不好的用户体验。

发明内容

本发明实施例提供推送会话的建立方法、推送系统和相关设备,节省了网络资源,防止不良的用户体验。
本发明实施例提供的一种推送会话的建立方法,包括:
获得客户端的设备标识信息;
将所述客户端的设备标识信息添加到会话初始请求消息SIR中;
根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接。
本发明实施例提供的一种推送会话的建立方法,包括:
接收会话初始请求消息;
若所述会话初始请求消息中包含用户公共身份标识,根据所述会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接,若是,和所述服务器建立基于会话初始协议的推送会话连接
本发明实施例提供的一种推送系统,包括:
服务器,用于获得客户端的设备标识信息,将所述客户端的设备标识信息添加到会话初始请求消息SIR中,根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接;
客户端,用于接收到所述服务器发送的会话初始协议消息,和所述服务器建立基于会话初始协议的推送会话连接。
本发明还提供了一种推送系统,包括:
服务器,用于添加客户端的公共身份标识到会话初始请求消息中,将所述会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要向服务器建立基于会话初始协议的推送会话连接;
客户端,用于接收所述服务器发送的包含用户公共身份标识的会话初始请求消息,当根据所述会话初始请求消息与自身的信息确定需要和服务器建立基于会话初始协议的推送会话连接时,和所述服务器建立基于会话初始协议的推送会话连接。
本发明提供的一种服务器,包括:
信息获得单元,用于获得客户端的设备标识信息;
消息添加单元,用于将所述信息获得单元获得的客户端的设备标识信息添加到会话初始请求消息中;
请求发送单元,用于根据所述客户端的设备标识信息将所述消息添加单元添加的会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议SIP的推送会话连接。
本发明实施例提供的一种客户端,包括:
请求接收单元,用于接收会话初始请求消息;
判断连接单元,用于若所述请求接收单元接收的会话初始请求消息中包含用户公共身份标识,根据所述会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接,若是,和所述服务器建立基于会话初始协议的推送会话连接。
可见,如果用来标识客户端的公共用户身份标识绑定了一个以上的客户端,且需要服务器与其中特定客户端建立基于会话初始协议的推送会话连接时,本发明实施例的方法是服务器将客户端的设备标识信息添加到会话初始请求消息中发送到客户端;或者服务器将会话初始请求消息发给标识客户端的公共用户身份标识对应的所有客户端,由所有客户端来判断是否需要和服务器建立基于会话初始协议的推送会话连接,这样对于同一个公共用户身份标识绑定的多个客户端来说,只有需要接收推送请求消息的客户端和服务器建立基于会话初始协议的推送会话连接,和现有技术相比,节省了网络资源,从而防止了现有技术中客户端会连续收到推送会话请求消息的不良体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种推送会话的建立方法的流程图
图2是本发明实施例二提供的一种推送会话的建立方法的信令流程图;
图3是本发明实施例三提供的一种推送会话的建立方法的信令流程图;
图4是本发明实施例四提供的一种推送会话的建立方法的信令流程图;
图5是本发明系统实施例一提供的一种推送系统的结构示意图;
图6是本发明设备实施例一提供的一种服务器的结构示意图;
图7是本发明设备实施例二提供的一种服务器的结构示意图;
图8是本发明设备实施例三提供的一种客户端的结构示意图;
图9是本发明设备实施例四提供的一种客户端的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一、一种推送会话的建立方法,本实施例中推送系统包括服务器和客户端,信令流程图如图1所示,包括:
步骤101、服务器获得客户端的设备标识信息;
可以理解,本流程是服务器在发送会话初始请求消息给客户端前,如果服务器和所述客户端没有连接,由服务器发起的基于SIP协议的推送会话建立流程。且本实施例的方法是针对标识客户端的公共用户身份标识绑定了多个客户端,当服务器要发送推送请求消息(即Push消息)给其中特定的客户端前的推送会话建立方法。因此就需要服务器查询客户端当前与服务器连接的情况,客户端对业务的签约信息、偏好信息,以及如果客户端与服务器没有连接,需要激活的客户端的标识及激活方法等信息。
这里,客户端的设备标识信息是指能路由到客户端的标识信息,如用户代理统一资源标识符(GRUU),全局唯一标识符(UUID),国际移动设备身份码(IMEI),通用资源标识(URI),唯一标识符(URN),(无线)射频识别(RFID),电子序列编码(ESN),介质访问控制地址(MAC),指纹等标识。
获得客户端设备标识信息时,服务器可以查询存储用户信息的服务器,如在线(Presence)服务器中存储有每个公共身份标识绑定的客户端的信息(如状态、通信信息等信息);也可以查询自身存储的客户端的签约信息,或所述客户端接收相应业务的策略信息;这里还可以有其它的获得方式,并不构成对本发明的限制。
步骤102、服务器将所述客户端的设备标识信息添加到会话初始请求消息中;
这里的客户端的设备标识信息可以添加到所述会话初始请求消息的头域和/或值域和/或消息体中。
可以理解,在所述会话初始请求消息中,还可以在会话初始请求消息的头域和/或值域或和/消息体中包括以下信息的一种或几种:指示客户端激活相应应用的应用(Application)信息,如应用标识和应用名称;指示客户端根据所述会话初始请求消息返回相应信息,如指示客户端返回设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息;指示客户端根据所述会话初始请求消息发送相应消息的信息,如注册发送消息或能力发送消息等。
步骤103、服务器根据所述客户端的设备标识信息将所述会话初始请求消息发送给所述客户端,请求所述客户端向服务器建立基于SIP协议的推送会话连接;
本实施例中,发送给客户端的会话初始请求消息可以为短信消息(SMS),超文本传输协议(HTTP)消息,无线上网协议(WSP)消息,电路域消息,分组域消息,非结构化补充数据业务消息(USSD),信令消息,业务消息等消息类型。
步骤104、所述客户端接收到会话初始请求消息后,向服务器建立基于SIP协议的推送会话连接;
可以理解,客户端可以判断接收到的会话初始协议消息是否安全,如果安全即与服务器建立基于SIP协议的推送会话连接。
如果在会话初始协议消息中还包括指示客户端根据所述会话初始请求消息返回相应信息,客户端可以在步骤104后进一步执行步骤105,向服务器返回会话初始请求消息中请求的设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息等信息,这里返回相应信息可以通过会话初始协议消息的信令消息,业务消息,短信消息,推送请求消息、非结构化补充数据业务消息等消息返回。
如果在会话初始协议消息中包括应用信息,客户端则可以执行步骤106,激活应用信息对应的应用,由应用向客户端发送会话初始请求消息中请求的相应信息,或向客户端进行注册。例如,当客户端接收到包含有应用标识为动态业务分发(DCD)应用标识时,可以激活DCD应用向客户端注册,或返回相应的信息。值得说明的是步骤106与步骤104没有绝对的顺序关系,即客户端可以在建立推送会话前激活应用,也可以在之后。
如果会话初始协议消息中包括指示客户端根据所述会话初始请求消息发送相应消息的信息,客户端可以在步骤104后进一步执行步骤107,将会话初始协议消息中请求的能力发送消息或注册发送消息等消息发送给服务器。
可见,如果用来标识客户端的公共用户身份标识绑定了一个以上的客户端,且需要服务器与其中特定客户端建立基于SIP协议的推送会话连接时,本实施例主要通过服务器将查询到的所述特定客户端的设备标识信息添加到SIR消息中路由到特定客户端,这样只有需要激活的客户端接收SIR消息,并与服务器建立基于SIP协议的推送会话连接,接收服务器的推送请求消息。和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,本实施例只有希望接收推送请求消息的客户端才和服务器建立基于SIP协议的推送会话连接,节省了网络资源,也可以避免多个客户端反复接收相同消息,从而避免因接收多条相同的消息而影响其他业务的正常接收。
实施例二、一种推送会话的建立方法,本实施例中推送系统包括推送发起者(PI)、推送代理网关(PPG)及用同一公共用户身份标识绑定的三个客户端,例如可以是移动终端、个人电脑和个人数字助理(PDA)等,各个客户端有不同的能力信息及偏好信息。系统中PI和PPG的组合相当于实施例一的服务器,假设需要给第一、第二客户端发送推送请求消息,信令流程图如图2所示,包括:
步骤201、PI生成推送请求消息,将所述推送请求消息及用公共用户身份标识一并发送给PPG。
步骤202、PPG查询需要接收推送请求消息的客户端当前与PPG连接的情况、偏好信息、对业务的签约信息以及如果客户端与PPG没有连接,所述客户端的设备标识信息及激活方法等信息,本实施例中第一、第二客户端用同一个公共用户身份标识绑定,则查找第一、第二客户端的相关信息。
根据查询的信息和接收到的推送请求消息确认需要发送推送请求消息给第一、第二客户端,且两个客户端都没有和PPG连接,需要先进行基于SIP协议的推送会话连接的建立过程。
步骤203、PPG根据查询的信息判断绑定所述第一、第二客户端的公共用户身份标识是否还绑定除所述第一、第二客户端之外的其它客户端,如果是,执行步骤204。这里假设第一客户端和第二客户端被同一个公共用户身份标识绑定,而所述公共用户身份标识还绑定了第三客户端。
步骤204、PPG将步骤202中查询到的第一客户端的设备标识信息添加到SIR消息中,并根据所述第一客户端的设备标识信息发送给第一客户端,方法如实施例一所述,在此不再赘述。
可以理解,本步骤中在SIR消息中还可以加入其他信息如公共用户身份标识,而本步骤中是通过客户端的设备标识信息来路由到第一客户端的。
步骤205、第一客户端可以判断是否向PPG建立基于SIP协议的推送会话连接,例如可以根据接收到的SIR消息是否是安全,建立连接的PPG地址是否是第一客户端签约需要的服务器地址等信息进行判断;也可以不进行判断,直接与PPG建立连接。这样即可接收PPG发送的推送请求消息,和/或发送消息到给出的PPG地址,和/或发送PPG请求的信息到给出的PPG地址。
这里SIR消息给出的PPG地址信息可以是发送此SIR消息的PPG地址,也可以是其它PPG地址信息,用来通知客户端向给出的PPG地址建立连接,和/或发送消息和/或发送PPG请求的信息到给出的PPG地址。
步骤206、PPG将步骤202中查询到的第二客户端的设备标识信息添加到SIR消息,并根据所述第二客户端的设备标识信息发送给第二客户端。
步骤207、第二客户端接收到所述SIR消息,与PPG建立基于SIP协议的推送会话连接,和/或发送消息到给出的PPG地址,和/或发送PPG请求的信息到给出的PPG地址,如步骤205中第一客户端的操作方法。
上述步骤204和步骤206中将SIR消息发送给特定的客户端时,可以用HTTP消息,或SIP消息,或SMS消息,或WSP消息,或电路域消息,或分组域消息等协议消息封装所述会话初始请求消息,再发送。
以上流程为实现该方法的简单描述流程,每条消息可以有相应的响应消息,这里不再累述。且上述步骤之间没有绝对的顺序关系,如步骤204到207,只需要在建立推送会话之前,客户端接收到SIR消息即可,至于哪个先接收到,并不是本发明的重点。
本实施例中如果用来标识客户端的公共用户身份标识绑定了一个以上的客户端,且需要服务器与其中特定客户端建立基于SIP协议的推送会话连接时,本实施例主要通过服务器将查询到的所述特定客户端的设备标识信息添加到SIR消息中路由到特定客户端,这样只有需要激活的客户端接收SIR消息,并与服务器建立基于SIP协议的推送会话连接,接收服务器的推送消息。和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,只有希望接收推送消息的客户端才和服务器建立推送会话的连接,节省了网络资源。
实施例三、一种推送会话的建立方法,本实施例中推送系统包括推送发起者(PI)、推送代理网关(PPG)及用同一公共用户身份标识绑定的三个客户端,例如可以是移动终端、个人电脑和个人数字助理(PDA)等,各个客户端有不同的能力信息及偏好信息。系统中PI和PPG的组合相当于实施例一的服务器,假设需要给第一客户端发送推送请求消息,信令流程图如图3所示,包括:
步骤301、PI生成推送请求消息,将所述推送请求消息及接收该消息的客户端对应的用公共用户身份标识一并发送给PPG。
步骤302、PPG查询到需要接收推送请求消息的第一客户端没有与PPG连接,将标识第一客户端的公共用户身份标识添加到SIR消息中,根据其中包含的公共用户身份标识路由到该公共用户身份标识绑定的所有客户端。
步骤303、第一客户端接收到SIR消息,根据自己的信息和策略与SIR消息判断是否需要和PPG建立基于SIP协议的推送会话连接,如果是,则执行步骤304。
这里自身的信息为安全信息,和/或设置的偏好信息,和/或能力信息,和/或用户判断等,如根据第一客户端的偏好设置信息、与PPG的连接信息和业务签约信息等判断,这个过程可以是由第一客户端自动完成,也可以是由用户触发的行为。
步骤304、第一客户端向PPG建立基于SIP协议的推送会话连接,接收PPG发送的推送请求消息。
可以理解,第一客户端在与PPG建立连接后,可以向PPG发送请求的消息或信息,如注册发送消息,和/或第一客户端的设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息等。这些信息可以从应用获得。
如果SIR消息中包含应用信息,第一客户端可以激活所述应用信息对应的应用,来获得向所述服务器返回的相应信息或向客户端进行注册。
步骤305、第二客户端接收到SIR消息,如步骤303中,如果判断为不需要和PPG建立基于SIP协议的推送会话连接,则不进行连接PPG的步骤。
步骤306、第三客户端接收到SIR消息,如步骤303中,如果判断为不需要和PPG建立基于SIP协议的推送会话连接,则不进行连接PPG的步骤。
上述步骤302中将SIR消息发送给所有的客户端时,可以用HTTP消息,或SIP消息,或SMS消息,或WSP消息,或电路域消息,或分组域消息等协议消息封装所述会话初始请求消息,再发送。
且上述步骤之间没有绝对的顺序关系,如步骤303到306,只需要在建立基于SIP协议的推送会话连接之前,特定的客户端接收到SIR消息即可,至于哪个先接收到,并不是本发明的重点。
以上流程为实现该方法的简单描述流程,每条消息可以有相应的响应消息,这里不再累述。
本实施例中服务器将SIR消息发送给公共用户身份标识绑定的所有客户端,由客户端来判断是否需要和服务器建立基于SIP协议的推送会话连接,能达到与实施例二一样的技术效果,且不需要对服务器作任何改变,而对于客户端来说实现起来也比较简单。
实施例四、一种推送会话的建立方法,本实施例中推送系统包括推送发起者(PI)、推送代理网关(PPG)及用同一公共用户身份标识绑定的三个客户端,例如可以是移动终端、个人电脑和个人数字助理(PDA)等,各个客户端有不同的能力信息及偏好信息。系统中PI和PPG的组合相当于实施例一的服务器,假设需要给第一、第三客户端发送推送请求消息,信令流程图如图4所示,包括:
步骤401、PI生成推送请求消息,将所述推送请求消息及接收该消息的客户端对应的用公共用户身份标识一并发送给PPG。
步骤402、PPG查询接收推送请求消息的客户端当前与PPG连接的情况、偏好信息、对业务的签约信息以及如果客户端与PPG没有连接,所述客户端的设备标识信息及激活方法等信息,本实施例中需要查询第一和第三客户端的相关信息。
根据查询的信息和接收到的推送请求消息确认发送推送请求消息给第一和第三客户端,而第一客户端没有和PPG连接,需要先进行基于SIP协议的推送会话的建立过程,需要执行步骤403,第三客户端已经和PPG建立连接,可以直接接收推送请求消息。
步骤403、PPG将公共用户身份标识和步骤402中查询到的第一客户端的设备标识信息添加到SIR消息。
本步骤中的设备标识信息是用来唯一标识第一客户端的信息,可以添加到SIR消息的消息头域或消息体,而不用来路由该SIP消息。表1和表2分别是将第一客户端的设备标识信息添加到SIR消息的头域和消息体中,并封装成的SIP消息。
  参数   值  客户端地址(Client  Address)   sip:+43-8323546@mobilkom.  gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6  (设备标识信息)  服务器地址(Server Address)  推送标识(Push Headers)   X-Wap-Application-Id:x-wap-application:push.sia  Content-Type:application/vnd.wap.sia  内容(SIA Content)

表1在SIR消息的头域添加设备标识信息
  参数   值   Client Address   sip:+43-8323546@mobilkom.   Server Address   Push Headers   X-Wap-Application-Id:x-wap-application:push.sia  Content-Type:application/vnd.wap.sia   SIA Content   gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6(设备  标识信息)
表2在SIR消息的消息体添加设备标识信息
步骤404、PPG根据所述公共用户身份标识将SIP消息发送给所述公共用户身份标识对应的所有客户端。
步骤405、第一客户端接收到所述SIR消息,解析SIR消息得到设备标识信息,将所述设备标识信息和第一客户端自身的信息进行匹配,如果第一客户端的信息与所述设备标识信息相符合,则判断为需要和PPG建立基于SIP协议的推送会话连接,执行步骤406。
步骤406、第一客户端向PPG建立基于SIP协议的推送会话,接收PPG发送的推送请求消息。
可以理解,第一客户端在与PPG建立连接后,可以向PPG发送请求的消息或信息,如注册发送消息,和/或第一客户端的设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息等。这些信息可以从应用获得。
如果SIR消息中包含应用信息,第一客户端可以激活所述应用信息对应的应用,来获得向所述服务器返回的相应信息或向客户端进行注册。
步骤407、第二终端接收到该SIR消息后,如步骤405中将所述设备标识信息与第二客户端的信息进行匹配,发现与自己的设备标识不相符合,则不向PPG发送建立连接的请求。
步骤408、第三终端接收到该SIR消息后,发现已经与PPG连接,则不向PPG发送建立连接的请求。
上述步骤404中将SIR消息发送给所有的客户端时,可以用HTTP消息,或SIP消息,或SMS消息,或WSP消息,或电路域消息,或分组域消息等协议消息封装所述会话初始请求消息,再发送。
且上述步骤之间没有绝对的顺序关系,如步骤405到408,只需要在建立基于SIP协议的推送会话连接之前,特定的客户端接收到SIR消息即可,至于哪个先接收到,并不是本发明的重点。
以上流程为实现该方法的简单描述流程,每条消息可以有相应的响应消息,这里不再累述。
值得说明的是,上述步骤402中PPG可以将推送请求消息转发给SIP/IP网络侧设备,由SIP/IP网络侧设备来执行如上述步骤402到步骤404的流程,在此不再赘述。
本实施例和实施例三的区别在于服务器发送给公共用户身份标识绑定的所有客户端的SIR消息中包含需要和服务器建立推送会话连接的客户端的设备标识信息,这样客户端判断是否需要和服务器建立基于SIP协议的推送会话连接时,只需要判断自己的信息与所述设备标识信息是否相符合,能达到与实施例三一样的技术效果,且客户端进行判断的范围比较小。
系统实施例一、一种推送系统,结构示意图如图5所示,包括:
服务器100,用于获得客户端200的设备标识信息,将所述客户端200的设备标识信息添加到会话初始请求消息中,根据所述客户端200的设备标识信息将所述会话初始请求消息发送给所述客户端200,请求所述客户端200根据所述会话初始请求消息向服务器100建立基于会话初始协议的推送会话连接;
服务器100发送客户端的会话初始请求消息可以用HTTP消息,或SIP消息,或SMS消息,或WSP消息,或电路域消息,或分组域消息等消息封装。
客户端200,用于接收到所述服务器100发送的会话初始协议消息,和所述服务器建立基于会话初始协议的推送会话连接。
采用本实施例的推送系统,通过服务器100将客户端200的设备标识信息添加到会话初始请求消息中,发送给客户端200,由客户端200向服务器100建立基于会话初始协议的推送会话连接,接收推送请求消息,和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,本发明节省了网络资源。
系统实施例二、一种推送系统,包括:
服务器,用于添加客户端的公共身份标识到会话初始请求消息中,将所述会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要向服务器建立基于会话初始协议的推送会话连接;
客户端,用于接收所述服务器发送的包含用户公共身份标识的会话初始请求消息,当根据所述会话初始请求消息与自身的信息确定需要和服务器建立基于会话初始协议的推送会话连接时,和所述服务器建立基于会话初始协议的推送会话连接。
可以理解,在本实施例中若所述服务器发送的会话初始请求消息中还包括设备标识信息,则所述客户端将所述设备标识信息与自身的信息进行匹配,若相符合,则确定为需要和所述服务器建立基于会话初始协议的推送会话连接。
采用本实施例的推送系统,通过服务器将客户端的公共用户身份标识添加到会话初始请求消息中,发送给所述公共用户身份标识绑定的所有客户端,由所述所有客户端根据会话初始请求消息判断是否向服务器建立基于会话初始协议的推送会话连接,并接收推送请求消息,和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,本发明只有需要接收推送消息的客户端和服务器建立连接,节省了网络资源。
设备实施例一、一种服务器,结构示意图6所示,包括:信息获得单元10、消息添加单元11和请求发送单元12,其中:
信息获得单元10,用于获得客户端的设备标识信息;
消息添加单元11,用于将所述信息获得单元10获得的客户端的设备标识信息添加到会话初始请求消息中;
可以将客户端的设备标识信息添加到会话初始请求消息的头域和/或值域和/或消息体中。也可以在会话初始请求消息中添加其它的应用信息,指示所述客户端返回设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息等信息。
请求发送单元12,用于根据所述客户端的设备标识信息将所述消息添加单元11添加的会话初始请求消息发送给所述客户端,请求所述客户端根据所述会话初始请求消息向服务器建立基于会话初始协议的推送会话连接。
采用本实施例的服务器,通过消息添加单元11将客户端的标识信息添加到推送会话请求消息中,由请求发送单元12将所述会话初始协议消息发送给客户端,这样只有所述标识信息对应的客户端向服务器建立基于会话初始协议的推送会话连接,接收推送请求消息,和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,本发明节省了网络资源。
设备实施例二、一种服务器,结构示意图如图7所示,本实施和设备实施例一相比增加了标识判断单元13和消息封装单元14,其中:
标识判断单元13,用于判断绑定所述客户端的公共用户身份标识是否还绑定除所述客户端之外的其它客户端,若是,则通知所述信息获得单元10获得所述客户端的设备标识信息;
消息封装单元14,用于用超文本传输协议HTTP消息,或SIP消息,或短信息协议SMS消息,或无线上网协议WSP消息,或电路域消息,或分组域消息封装所述消息添加单元11添加的会话初始请求消息。
可选地,本实施例中服务器还可以包括标识添加单元15,用于将标识所述客户端的公共用户身份标识添加到所述会话初始请求消息中。
可以理解,上述标识判断单元13在判断为客户端的公共用户身份标识绑定多个客户端时,通知信息获得单元10获得特定客户端的设备标识信息,并通过消息添加单元11将所述设备标识信息添加到会话初始请求消息中,由消息封装单元14将所述会话初始请求消息封装好,最后通过请求发送单元12发送给特定的客户端。
由于本实施例中服务器还包括标识添加单元15,则服务器可以通过标识添加单元15和消息添加单元11将客户端的公共用户身份标识和设备标识信息都添加到会话初始请求消息中,通过消息封装到那元14封装后,有请求发送单元12将所述会话初始请求消息发送给所述公共用户身份标识对应的所有客户端,请求所述所有客户端根据所述设备标识信息来确定是否需要根据所述会话初始请求消息向服务器建立基于会话初始协议的推送会话连接。
本实施例的服务器和设备实施例一的服务器相比,通过标识判断单元13进行判断公共用户身份标识是否绑定了多个客户端,这样在公共用户身份标识只标识了一个客户端时,可以不需要获得客户端的设备标识信息,简化了推送建立中的信息处理。
设备实施例三、一种客户端,结构示意图8所示,包括:请求接收单元21、和判断连接单元22,其中:
请求接收单元21,用于接收会话初始请求消息;
判断连接单元22,用于若所述请求接收单元21接收的会话初始请求消息中包含用户公共身份标识,根据所述会话初始请求消息与自身的信息判断是否需要和服务器建立基于会话初始协议的推送会话连接,若是,和所述服务器建立基于会话初始协议的推送会话连接
这里自身的信息可以为安全信息,和/或设置的偏好信息,和/或能力信息,和/或用户判断等。
采用本实施例的客户端,通过判断连接单元22根据会话初始请求消息判断是否需要和服务器建立基于会话初始协议的推送会话连接,只有在判断为是的时候,才向服务器建立基于会话初始协议的推送会话连接,接收推送请求消息,和现有技术中公共用户身份标识绑定的所有客户端都与服务器建立连接,接收同一条推送消息相比,本发明只有需要接收推送消息的客户端和服务器建立连接,节省了网络资源。
设备实施例四、一种客户端,结构示意图9所示,本实施例的客户端和设备实施例三的客户端比,细化了判断连接单元22,并增加了回应单元23和应用激活单元24,其中:
所述判断连接单元22包括匹配单元220和连接单元221。比较单元220,用于当所述请求接收单元21接收的会话初始请求消息中包含设备标识信息,将所述设备标识信息和自身的信息进行匹配;连接单元221,用于当所述匹配单元220匹配的结果为所述自身的信息与所述设备标识信息相符合,则和所述服务器建立基于会话初始协议的推送会话连接。
会话初始请求消息中相应消息可以设备能力信息,和/或偏好信息,和/或安全信息,和/或签约信息,和/或拒绝建立连接的信息等信息。
所述回应单元23,用于当所述请求接收单元21接收的会话初始请求消息中包含指示客户端根据所述会话初始请求消息返回相应信息或发送相应消息的信息,根据所述会话初始请求消息中的指示信息向所述服务器返回相应信息,或向服务器发送相应消息。
应用激活单元24,用于当所述请求接收单元21接收的会话初始请求消息中包含应用信息,激活所述应用信息对应的应用,来获得向所述服务器返回的相应信息或向客户端进行注册。
可以理解上述的回应单元23是在所述判断连接单元22与服务器建立基于会话初始协议的推送会话连接后,才向服务器进行返回信息或发送消息;而应用激活单元24可以在与服务器建立连接的任何时刻进行激活。但是在与服务器建立连接之后应用激活单元24才激活应用,会减少通信息设备之间的信息交互。
本实施例的客户端和设备实施例三的客户端相比,本实施例中通过比较单元220通过比较推送会话请求消息中包含的设备标识信息和客户端的信息来判断是否要和服务器建立连接,简单易于实现,且判断的范围比较小。
可见,如果用来标识客户端的公共用户身份标识绑定了一个以上的客户端,且需要服务器与其中特定客户端建立基于会话初始协议的推送会话连接时,本发明的方法是服务器将客户端的设备标识信息添加到会话初始请求消息中,路由到客户端;或者服务器将会话初始请求消息发给标识客户端的公共用户身份标识对应的所有客户端,由客户端来判断是否需要和服务器建立基于会话初始协议的推送会话连接,这样对于同一个公共用户身份标识绑定的多个客户端来说,只有需要接收推送请求消息的客户端和服务器建立基于会话初始协议的推送会话连接,和现有技术相比,节省了网络资源,从而防止了现有技术中客户端会连续收到推送会话请求消息的不良体验。
以上对本发明实施例所提供的推送会话的建立方法、推送系统和相关设备进行了详细介绍,本文中应用了具体的实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
QQ群二维码
意见反馈