一种多终端时业务消息处理方法、系统和装置的制作方法

文档序号:7757615阅读:89来源:国知局
专利名称:一种多终端时业务消息处理方法、系统和装置的制作方法
技术领域
本发明涉及移动通信技术领域,特别是涉及一种多终端时业务消息处理方法、系 统和装置。
背景技术
Push技术是一种基于客户服务器机制,由服务器主动将信息发往客户端的技术, Push技术应用于移动增值业务,能够方便地实现相关内容的及时传送和用户的快捷获取。 Push是一个内容分发的机制,采用客户/服务器模式的工作方式,要求服务器不需要客户 端发出具体请求就将所需要的内容进行分发。如图1所示,为现有技术Push业务的示意图, 它由服务器发起,允许Push消息产生者(PI)向Push代理网关(PPG)推送信息和传输指令 进一步传输Push内容到用户的技术。结构由三部分组成Push代理网关(PPG)、Push发起 者(PI)、终端。PPG采用PAP协议从Push服务器上获取消息,再通过Push-OTA协议将内容 发送给WAP用户。Push发起者(PI)发送push内容和传递命令给push代理网关(PPG),然 后PPG根据传递命令把push内容给终端。如图2所示,为现有技术中SIP Push业务的示意图,SIP(Session Initiation Protocol,会话初始协议)Push 业务就是 OMAPush OTA over SIP,即通过将 PUSH OTA(Over The Air,空中协议)内容封装在SIP消息当中,利用现有的SIP/IP核心网络进行传送。SIP 是用来在两个或多个参与者间建立多媒体会话的应用层协议。Push发送代理(PPG)和接收 代理(Client)作为SIP/IP核心网的接口点。在SIP Push工作中SIP能提供的功能有用 户的可到达性,用户的可用性,用户的能力,会话建立和会话管理。SIP/IP核心网提供了丰富的端到端的媒体会话,及客户端与服务器的会话。它包 含有SIP网关和注册服务器,可以提供为SIP客户端和业务的鉴权和授权接入业务,也可提 供SIP注册和路由功能。Push发送代理和Push接收代理功能上是向SIP/IP Core的接口
点ο基于SIP的事件订阅(SUBSCRIBE)机制或SIP事件框架,定义了允许在订阅过程 中异步事件的通知。在初始注册后,Push接收代理应发送一个SUBSCRIBE请求到Push发送 代理,如果Push接收代理需要为一个特定的Push业务订阅Push事件,例如传递客户能力 信息或订阅特定事件。Push发送代理和Push接收代理应支持SUBSCRIBE和NOTIFY方法。 特别是Push接收代理为一些特定的Push内容应支持订阅功能,并且应支持Push内容的接 收。Push发送代理应支持通知功能来接收从Push接收代理订阅请求和发送Push信息到接 收代理。用户标识(User ID)为公共用户身份。为了使用网络,一个用户被分配到一个或 多个公共用户身份。当用户请求与其他用户通信时,用户将使用公共用户身份。一个用户 可以有不同的外形,每一个都包含了不同的公共用户身份。公共用户身份的格式采用的通 过一等级化的SIP统一资源标识(URI)来标识。它通过诸如用户电话号码或主机名等元素 来构造(例如:SIP :usericompany. com) 因为它与EMAIL地址的相似性,SIP URLs容易于用户的EMAIL地址关联。然而当一个用户有多个终端时,例如电脑,2G终端,3G终端等,每个终端将被分配 到一个设备识别(Device ID),是由归属网络分配,这个身份用来确定每个终端在一个网络 中的唯一性。举例来说,设备识别被用来鉴定、授权、管理。Push接受代理可以通过发送Subscribe请求来建立一个内容更新订阅和宣布可 用的应用和版本,通过使用“appid”参数。Push接收代理只订阅一个应用app 1为多媒体彩信(MMS)业务时,SUBSCRIBE sip :user-aoriexample. com SIP/2.0Event :ua-profile :profile-type = oma-app ;appid = "+g. oma. iari. push, mms. ua,,;如Push接收代理订阅多个应用appl,app2,app3SUBSCRIBE sip :user-aoriexample. com SIP/2. 0Event :ua-prof ile ;prof ile-type = oma-app ;appid = “ app 1, app2, app3";如果Push接收代理订阅了多个应用appl,app2, app3,但是Push发送代理只支 持appl和app2,那么Push发送代理返回的通知NOTIFY请求将只包含appl和app2两个参 数,指示只有这两个业务被订阅成功。SUB SCRIBEEvent :ua-prof ile ;prof ile-type = oma-app ;appid = “ app 1, app 2, app 3";NOTIFYEvent :ua-profile ;profile-type = oma-app ;appid = “app1, app2";多媒体彩信通知业务为用户可以订阅多媒体彩信业务,当Push发送代理有发送 到该终端的多媒体彩信业务时,将向终端发送彩信通知,通知用户有一条彩信,可以去Push 发送代理取回该条彩信。多媒体彩信的取回,可以通过用户设置由终端进行自动取回,存储 在终端,待用户方便时查看;也可以由用户接到彩信通知后,在方便的时候自己取回。目前SIP Push业务中同一个用户可以同时有多个终端,例如,用户同时有2G手 机,3G手机,台式电脑,笔记本等终端,在Push发送代理上存放有该用户的公共身份识别, 来标识该用户,也会有各个终端的设备地址,用来识别每个终端来发送到达各个设备的呼 叫或消息。也将有每个终端订阅了何种业务,当有该终端的订阅的业务到来时,所有终端都 可以收到订阅的业务。订阅的业务可以有多媒体彩信业务,短消息业务,邮件通知,设备管 理等。那么会有这样一个场景,当Push发送代理通过SIP/IP核心网发送一个多媒体彩信消 息给用户时,用户的每个订阅了多媒体彩信的终端将都收到这条多媒体彩信消息的通知。如图3所示,为现有技术中用户存在多个终端时的多媒体彩信通信流程图,当一 个用户同时有第一终端,第二终端,第三终端三个设备,MMSC为多媒体彩信中心(PI),Push 发送代理为PPG。包括以下步骤步骤S301,MMSC有发向该用户的多媒体彩信通知,则向Push发送代理发送多媒体 彩信通知。Push发送代理接收到该彩信通知后,发现该用户有三个终端,分别向三个终端转 发此通知。步骤S302,用户设置自动获取通知的彩信,则三个终端分别向MMSCPush发送代理 发出HTTP GET请求,请求取回该多媒体彩信。
步骤S303,当Push发送代理接收到第一终端发出的请求后,发送HTTP2000K响应,
携带多媒体彩信,发送给第一终端。步骤S304,MMSC Push发送代理对于已经取回的多媒体彩信,进行删除,不再保留, 则第二终端和第三终端接收到MMSC返回的HTTP 4xx错误响应。其中,多媒体彩信的通知 也可以由SIP/IP核心网完成转发给三个终端的过程。在实现本发明实施例过程中,发明人发现现有技术中至少存在如下问题用户的 每个终端都收到同样的彩信通知,首先会造成资源浪费,增加网络传输的负载;同时,用户 反复的接收相同的信息,也会对用户造成困扰。更重要的是对于多媒体彩信服务中心来说, 不知道用户当前有多少终端,发出一份通知后,会由Push发送代理或SIP/IP核心网处转发 给每一个该用户的终端。如果用户设置为自动到Push发送代理提取多媒体彩信,那么只有 一个终端可以成功将多媒体彩信取回,而其他终端的取回请求将失败,或由多媒体彩信服 务中心提示所要取回的消息不存在,或返回已取回等消息,因此也会影响到用户的体验度。

发明内容
本发明实施例要解决的问题是提供一种多终端时业务消息处理方法、系统和装 置,解决现有技术中Push发送代理给每个用户标识相同的终端都发送业务消息,而造成资 源浪费,增加网络传输的负载及影响用户体验度的缺陷。为达到上述目的,本发明实施例一方面提出一种多终端时业务消息处理方法,包 括以下步骤接收终端发送的请求消息,所述请求消息携带有所述终端的请求信息;根据 所述请求信息向所述终端发送业务消息。另一方面,本发明实施例还提供了一种多终端时业务消息处理系统,包括Push发 送代理和至少两个具有相同用户标识的终端,所述终端,用于向所述Push发送代理发送请 求消息,所述请求消息携带有所述终端的请求信息;所述Push发送代理,用于接收所述终 端发送的请求消息,并根据所述请求信息向所述终端发送业务消息。再一方面,本发明实施例还提供了一种Push发送代理,包括订阅请求接收模块和 处理模块,所述订阅请求接收模块,用于接收终端发送订阅请求,所述订阅请求携带有所述 终端的请求信息;所述处理模块,用于在业务到来时,根据所述请求信息向所述终端发送业 务消息。本发明实施例的技术方案具有以下优点,因为采用Push发送代理根据终端发送 的请求信息选择只向一个终端发送相应的业务消息,而不是向所有终端都发送业务消息, 从而避免同一用户的多个终端反复接收到相同的业务消息,避免资源浪费。


图1为现有技术Push业务的示意图;图2为现有技术中SIP Push业务的示意图;图3为现有技术中用户存在多个终端时的多媒体彩信通信流程图;图4为本发明实施例一发送业务订阅请求的流程图;图5为本发明实施例一用户发送SUBSCRIBE订阅请求数据示意图;图6为本发明实施例一的2000K消息示意图7为本发明实施例一的订阅激活指示示意图;图8为本发明实施例一的第二终端的请求示意图;图9为本发明实施例一的可选步骤的流程图;图10为本发明实施例二在SUBSCRIBE消息中只订阅一个业务时命令传输的流程 图;图11为本发明实施例二用户发送SUBSCRIBE订阅请求消息示意图;图12为本发明实施例中对匪S业务的订阅进行激活示意图;图13为本发明实施例第二终端进行订阅示意图;图14为本发明实施例二的订阅激活业务示意图;图15为本发明实施例三当在SUBSCIBE消息中指定订阅多个业务时的流程图;图16为本发明实施例三第一终端向Push发送代理发送SUBSCRIBE订阅请求示意 图;图17为本发明实施例三的激活指示示意图;图18为本发明实施例三第二终端进行订阅示意图;图19为本发明实施例三第二终端业务订阅激活示意图;图20为本发明实施例四的Push发送代理选择优先级设备接受业务的流程图;图21为本发明实施例四用户发送SUBSCRIBE订阅请求消息示意图;图22为本发明实施例四的2000K消息示意图;图23为本发明实施例四的业务订阅激活示意图;图24为本发明实施例五的终端以HTTP方式发送给Push发送代理业务请求的流 程图;图25为本发明实施例多终端时业务消息处理系统结构图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述本发明实施例主要解决Push中多终端消息的接收问题,针对该问题本发明实施 例提出了多种解决方法。如SIP Push需要支持在订阅过程中,对某些特定的业务只有一个 终端可以进行订阅或订阅时对特定业务设置优先级。这样,当Push发送代理有发送给该用 户的特定业务时,只有一个终端将接收到该消息,而不是所有设备。这样既可以避免网络资 源的浪费,也可以避免用户的多个终端反复接收到相同消息的到来,特别可以避免因相同 消息的到来影响其他业务的正常接收。对于某些特定业务,其具体实现方法可以为以下几 种方式1.在订阅过程中,同一用户的所有终端中,只有一个终端可以对某项业务进行订 阅。即当前终端订阅了某项业务后,该用户的其他终端发起同样业务的订阅时,Push发送 代理将通知该终端此业务已经订阅,不能再次进行订阅。2.当第一终端订阅某业务成功后,向其他终端发送该业务已经被订阅的通知,避 免重复订阅来达到只有一个终端可以订阅某项业务的目的。3.所有终端都可以对某项业务进行订阅,但在订阅过程中,终端完成优先级设置, 优先级的策略设置在Push发送代理上进行存储,由Push发送代理进行消息分发的控制。所以当有此业务到来时,只有一个终端首先接收到业务的消息,其他终端不会同时接收。4.所有终端都可以对某项业务进行订阅,由Push发送代理选择优先级设置根据 网络侧情况,选择某一个终端,发送业务消息,其他终端不会同时接收。5.用户、终端或订阅的业务信心可以分别通过注册或/和订阅请求发送到Push发 送代理。下面就针对上述方式对本发明实施例以订阅消息进行详细描述。如图4所示,为本发明实施例一发送业务订阅请求的流程图,第一终端,第二终 端,分别为同一用户的两个不同设备,在本实施例中只有一个终端可以对某项业务进行订 阅。即当前终端订阅了某项业务后,该用户的其他终端发起同样的业务请求的订阅时, Push发送代理将通知该终端已经订阅,不能在进行订阅。用来区分用户不同终端的可以是 IMSI,私有用户标识Private User Identity,全局可路由用户代理GRUU,或多个联系地址 Multiple contact information、IP地址、电话号码或设备号等。具体步骤为步骤S401,本实施例中以用户 john. doeihomel. net 为例,用户 john. doeihomel. net的第一终端向Push发送代理发送SUBSCRIBE订阅请求,并携带其用户标识、Device ID 和应用标识,订阅了 MMS业务。如图5所示,为本发明实施例一用户发送SUBSCRIBE订阅请求数据示意图,其中, 首先Push发送代理进行对用户的用户标识,Device ID,应用标识进行识别,在识别通过后, 第一终端向Push发送代理发动订阅MMS业务请求,请求通过后,将Device ID写入数据库, 此Device ID可以用于区分不同的终端。步骤S402,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理完 成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户从它 的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供由 “Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。该步骤2000K示意图如 图6所示。步骤S403,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主体, 其中指示业务订阅已经激活。如图7所示,为本发明实施例一的订阅激活指示示意图。要 使用户终端订阅的MMS业务生效,须在此步骤中对MMS业务的订阅激活。步骤S404,Push接收代理响应2000K。当Push发送代理接受到业务消息到来时,Push发送代理向刚才发送过来业务请 求的终端以发送一个SIP NOTIFY请求的方式来提交一个Push内容。步骤S405,用户的第二终端以.john. doeihomel. net的公共用户身份,但不同的 Device ID向Push发送代理发送订阅MMS业务请求。如图8所示,为本发明实施例一的第 二终端的请求示意图,本步骤与步骤S401区别在于使用的设备不同,既Device ID不同,通 过Device ID就可以区分并识别出发送的设备。步骤S406,Push发送代理发现用户的公共用户身份也为john. doeihomel. net,订 阅的业务也为匪S,此用户已经使用其它设备订阅过匪S业务,返回4XX响应,提示用户改业 务已经订阅成功,不可以再次订阅。由于此用户的第一终端设备已经向此Push发送代理订阅过匪S业务,故PUSH发 送代理判断出该用户已经订阅过了匪S业务,于是给用户的第二终端返回4XX的信息。
在本发明实施例中,可以有一个可选的步骤,即在第一终端订阅成功后,Push发送 代理向注册的所有终端发送NOTIFY消息,提示此业务已经被订阅成功,不需要再次订阅。 其他终端的地址信息可以在每个终端注册时,在Push发送代理或SIP/IP核心网中有存储 和与该用户进行绑定,可以实现将消息通知给该用户的所有终端。如图9所示为本发明实施例一的可选步骤的流程图。具体步骤如下步骤S901,用户(john. doeihomel. net)的第一终端向Push发送代理发送 SUBSCRIBE订阅请求,并携带其用户标识,Device ID,和应用标识,订阅了 MMS业务。步骤S902,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理完 成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户从它 的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供由 “Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。步骤S903,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主体, 其中指示业务订阅已经激活。步骤S904,Push接收代理响应2000K。步骤S905,Push发送代理向其他终端发送NOTIFY消息,在NOTIFY消息头域或体 中携带消息,通知该用户的其它终端匪S业务已经有第一终端订阅成功,提示其他终端不 要进行再次订阅。步骤S906,其他终端返回2000K消息,提示接受请求。在本发明实施例中,由于SIP Push在订阅过程中,某些特定的业务只能有一个终 端进行订阅,同本实施例解决了这个问题,这样可以当Push发送代理有发送给该用户特定 业务的时,只有这个终端才能接收到这个消息,并不时所有的设备,避免了网络的浪费。实施例二如图10所示,为本发明实施例二在SUNSCRIBE消息中只订阅一个业务时命令传输 的流程图。本实施例给出用户第一终端,第二终端,分别为同一用户的两个不同设备。当第 一终端在发送业务的订阅请求到Push发送代理时,用公共用户标识身份和私有用户身份 识别,同时携带一个优先级参数Qvalue,指示Push发送代理对于订阅的业务,优先向优先 级高的发送,如果成功发送,则不向第二终端发送,如果失败,继续向下一优先级终端发送。业务的实现是由终端在发送SUBSCRIBE消息时,主动向Push发送代理提交一个优 先级的名单,通过这种设置后,将只有用户希望的一个终端优先收到业务消息。Qvalue参数 值越高,表明所给位置的相对重要性越高,取值范围可以在0至1之间。用来区分用户不同终端的可以是IMSI,私有用户标识Private用户标识entity, 全局可路由用户代理GRUU,或多个联系地址Multiple contact information、IP地址、电 话号码或设备号等。本实施例一共有两种方案,当在SUBSCRIBE消息中指订阅一个业务,即 只有一个应用标识时具体步骤为步骤S1001,用户(john.doe@homel.net)的第一终端向Push发送代理发送 SUBSCRIBE订阅请求,并携带其用户标识,Device ID, Qvalue参数,以及一个应用标识,订 阅匪S业务。消息中告知Push发送代理该用户的此终端为希望接收到匪S业务的最高优 先级终端,则当有业务到来时,优先发给此终端。如图11所示,为本发明实施例二用户发 送SUBSCRIBE订阅请求消息示意图。首先进行用户的识别,然后进行订阅MMS业务,最后在CONTACT 处设置了优先级,本实施例中设置的优先级为0. 7(Contact:<sip: [5555: :aaa:b bbccc:ddd]: 1357 ;comp = sigcomp> ;q = 0. 7)通过此优先级设置可进行选择性的发送。步骤S1002,在图10中的“ua_profile”事件包的SIP订阅请求接收到以后,Push 发送代理完成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允 许用户从它的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对 话,提供由“Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。步骤S1003,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主 体,其中指示业务订阅已经激活。也可以在Contact头域中,通知该终端其它终端的优先级 信息。如图12所示,为本发明实施例二对MMS业务的订阅进行激活示意图。步骤S1004,Push接收代理响应2000K。这样当Push发送代理有发向业务消息到来时,可以在订阅对话中,Push发送代理 通过向Push接收代理发送一个SIP NOTIFY请求的方式提交一个Push内容。步骤S1005,第二终端也可对MMS业务进行订阅,向Push发送代理发送SUBSCRIBE 订阅请求,并携带其用户标识,Device ID, Qvalue参数,以及一个应用标识,订阅MMS业务。 消息中告知Push发送代理该用户的此终端为希望接收到MMS业务的次高优先级终端。则当 有业务到来时,如果第一终端不能正常接收,第二优先级发给此终端。如图13所示,为本发 明实施例第二终端进行订阅示意图,在第二终端中也设置了优先权,(Contact:<sip: [5555 aaa:bbb: ccc ddd] 1357 ; comp = sigcomp〉;q = 0. 6),本实施例中设置的优先权为 0. 6, 由于第二终端的优先权低于第一终端,故当第一终端不能正常接收时,则选择第二优先级 终端发送信息。步骤S1006,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理 完成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户从 它的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供由 “Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。步骤S1007,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主 体,其中指示业务订阅已经激活。如图14所示,为本发明实施例二的订阅激活业务示意图, 步骤将MMS业务的订阅激活,也在可以在Contact头域中,通知该终端其他终端的优先级信 肩、ο步骤S1008,Push接收代理响应2000K。如图15所示,为本发明实施例三当在SUBSCIBE消息中指定订阅多个业务时的流 程图,且在该实施例中存在多个应用标识,其中以用户john. doeOhomel. net举例进行说 明,具体步骤为步骤S1501,用户john. doeihomel. net的第一终端向Push发送代理发送 SUBSCRIBE订阅请求,并携带其用户标识,Device ID,Qvalue参数,以及多个应用标识,订阅 多个业务。消息中告知Push发送代理该用户的此终端为希望接收到Appl业务的最高优先 级终端,则当有业务到来时,优先发给此终端。App2为此终端第二优先级接收的业务,App3 为此终端第三优先级希望接收的业务。如图16所示,为本发明实施例三第一终端向Push发 送代理发送SUBSCRIBE订阅请求示意图,在APP字节段存在了 3个不同的优先级值,appid ="appl ;q = 0. 7,app2 ;q = 0. 6,app3 ;q = 0. 5,优先级由高到低排列,Push发送代理会通过优先级知道该终端最想接收那种业务,Push发送代理就会将优先级高的业务给该终端 发送,待高优先级业务发送完毕后,在进行较低优先级业务的发送。步骤S1502,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理 完成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户从 它的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供由 “Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。步骤S1503,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主 体,其中指示业务订阅已经激活。如图17所示,为本发明实施例三激活指示示意图,在消息 中可以通知第一终端每种业务的订阅是否已经激活。步骤S1504,Push接收代理响应2000K。当Push发送代理接到到业务消息时,可 以在订阅的对话中,Push发送代理通过Push接受代理发送一个SIP NOTIFY请求的方式来 提交一个PUSH内容。步骤S1505,第二终端向Push发送代理发送SUBSCRIBE订阅请求,并携带其用户 标识,Device ID, Qvalue参数,以及多个应用标识,订阅多个业务。消息中告知Push发送 代理该用户的此终端为希望接收到app2业务的最高优先级终端,则当有业务到来时,优先 发给此终端。Appl为此终端第二优先级接收的业务,app3为此终端第三优先级希望接收的 业务。如图18所示,为本发明实施例三第二终端进行订阅示意图,首先进行用户的识别在 用户ID,Device ID, Qvalue参数通过后,把需要订阅的业务分别写入优先级,本实施例中 APP2的优先级最高为0. 7,最后写入设备的ID,该步骤中设备终端为第二终端。步骤S1506,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理 完成必要的关于第二终端的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户 从它的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供 由“Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。步骤S1507,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主 体,其中指示业务订阅已经激活。也可以在Contact头域中,通知该终端其它终端的优先级 信息。如图19所示,为本发明实施例三第二终端业务订阅激活示意图。如果需要通知第二 终端其他终端的优先级信息的话,可以在Contact前部加入其他终端优先级的信息。步骤S1508,Push接收代理响应2000K。在本实施例中,通过设置了优先级,当对某项业务订阅时,高优先级的终端如果不 能接受,则可以转到低优先级的终端进行接受,不会出现同时接受的情况,可以避免用户的 多个终端反复接收到相同的消息,特别可以避免因相同消息的到来影响其他业务的正常接 收。如图20所示,为本发明实施例四的Push发送代理选择优先级设备接受业务的流 程图,本实施例给出用户的所有终端都可以进行相同业务的订阅。由Push发送代理选择 优先级设置根据网络侧情况,选择某一个终端,发送业务消息,其他终端不会同时接收。用 户的所有终端可以通过发送业务的订阅请求到Push发送代理时,用公共用户标识身份, 同时携带私有用户身份识别,可以为Contact地址。Push发送代理将返回响应,指示为 用户的所有终端开通订阅的业务。用来区分用户不同终端的可以是IMSI,私有用户标识 Private Userldentity,全局可路由用户代理GRUU,或多个联系地址Multiple contactinformation IP地址、电话号码或设备号等。本实施例具体步骤如下步骤S2001,本实施例以用户 john. doeihomel. net 为例,john. doeihomel. net 的 第一终端向Push发送代理发送SUBSCRIBE订阅请求,并携带其用户标识、Device ID和应 用标识,订阅了匪S业务。如图21所示,为本发明实施例四用户发送SUBSCRIBE订阅请求 消息示意图。首先进行用户的识别,用户标识认证正确后进行MMS业务的订阅,最后加上终 端Device ID,代表此终端已经订阅过此业务。步骤S2002,在“ua_pr0file”事件包的SIP订阅请求接收到以后,Push发送代理 完成必要的关于发起者的身份鉴权检查,根据本地规则判定是否有允许订阅(允许用户从 它的当前设备订阅)。如果鉴权成功,它创建一个“im_pr0file”事件包的订阅对话,提供 由“Event”头域参数识别数据变化的方法,然后返回2000K到订阅者。如图22所示,为本 发明实施例四的2000K示意图。步骤S2003,Push发送代理产生和发送一个初始的SIP NOTIFY包含一个空的主 体,其中指示业务订阅已经激活。如图23所示,为本发明实施例四的业务订阅激活示意图。步骤S2004,这样当Push发送代理有发向业务消息到来时,可以在订阅对话中, Push发送代理通过向Push接收代理发送一个SIP NOTIFY请求的方式提交一个Push内容。步骤S2005-S2008,为第二终端向Push发送代理订阅MMS业务的过程,首先进行用 户的ID检测,在进行匪S业务的订阅,然后写入设备的ID,最后对匪S业务的订阅进行激 活。步骤S2009,当有发往该用户的MMS消息时,Push发送代理根据设定的判断情况进 行判断,选择该用户的最佳的终端向其发送业务消息。假设最佳终端为第一终端。由于Push发送代理可以自动判断终端设备的优越性,判断的条件为设备的优先 级,该优先级一般由网络质量来判断,Push发送代理可以选择网络质量较好的终端设备给 用户提供较好的业务信息服务。本实施例中以第一终端做为较优终端给用户提供业务信息 服务。步骤S2010,通过NOTIFY消息,向第一终端发送业务消息。步骤S2011,第一终端返回200ok消息,指示消息接受成功。如图24所示,为本发明实施例五的终端以HTTP方式发送给Push发送代理业务请 求的流程图。如果终端通过向Push发送代理发送请求,告知Push发送代理接受某些业务 所希望使用的终端,在本实施例方案二中这个终端以HTTP的方式向Push发送代理发送终 端设置的接受业务的优先级列表。具体步骤如下S2401,用户使用第一终端设置一个接收业务的优先级列表。该优先级列表可以指示该终端首先希望接收各种业务,在实施例三的方案二中以 MMS业务为例,既第一终端希望接受MMS业务。S2402, Push发送代理返回2000K消息,提示终端接收到策略列表。S2403,用户使用第二终端设置一个接收业务的优先级列表,在本实施例中与第一终端一样,第二终端可以指示该终端首先希望接收邮件通知 业务。S2404, Push发送代理返回2000K消息,提示终端接收到策略列表。本实施例通过设置设备终端的优先级或是HTTP方式的接受业务优先级列表,通过服务来根据网络情况选择优先级设置较高的终端来给客户提供较优先的业务信息服务, 并且发送业务时,其他终端不会同时接收,从而提高了服务的质量,减少了不比要的数据传输。如图25所示,为本发明实施例多终端时业务消息处理系统结构图,该系统包括 Push发送代理1和至少两个具有相同用户标识的终端2,终端2用于向Push发送代理1发 送订阅请求,其中该订阅请求携带有终端2的请求信息;Push发送代理1用于接收终端2 发送的订阅请求,并根据请求信息向终端2发送业务消息。其中,请求信息包括用户标识、 Device ID和应用标识。其中,Push发送代理1包括消息请求接收模块11和处理模块12,消息请求接收模 块11用于接收终端2发送订阅请求,订阅请求携带有终端2的请求信息;处理模块12用于 在业务到来时,根据请求信息向终端2发送业务消息。其中,处理模块12包括判断子模块121、订阅指示发送子模块122和业务消息发 送子模块123,判断子模块121用于根据所述请求信息用户标识和应用标识判断终端2申 请的业务是否已有相同用户标识的终端申请;订阅指示发送子模块122用于在判断子模块 121判断没有相同用户标识的终端申请时,向终端2发送业务订阅激活指示;业务消息发送 子模块123用于在业务到来时,向终端2发送业务消息。其中,处理模块12还包括提示响应返回子模块124用于在判断子模块122判断有 相同用户标识的终端申请时,向终端2返回提示响应,提示终端2所述业务已经被订阅。其中,处理模块12还包括提示消息发送子模块125,用于在订阅指示发送子模块 123向终端2发送业务订阅激活指示之后,向与终端2有相同用户标识其他终端发送提示 NOTIFY消息,提示其他终端不要进行再次订阅。其中,处理模块12包括优先级判断子模块126,用于根据终端2上报的相应的业 务优先级判断是否向终端2发送所述业务消息,如果判断发送则通知业务消息发送子模块 124向终端2发送业务消息。其中,处理模块12包括网络侧配置保存子模块127和最佳终端判断子模块128, 网络侧配置保存子模块127用于保存网络侧配置;最佳终端判断子模块128用于根据网络 侧配置保存子模块127保存的网络侧配置和终端2的Device ID判断终端2是否为最佳终 端,在判断终端2为最佳终端时通知所述业务消息发送子模块124向终端2发送业务消息。其中,处理模块12包括策略列表接收子模块129和策略判断子模块130,策略列表 接收子模块129用于接收终端2发送的HTTP Post策略列表,HTTPPost策略列表为终端2 接收业务的优先级列表;策略判断子模块130,用于在业务到来时,根据所述HTTP Post策 略列表选择优先级最高的终端发送业务消息。其中,用户标识可以为任何识别用户的标识,例如SIP URI或TEL URI。例如,SIP URI 可以为 sip :aiexample. com.,或 sip :1234567890iexample. com.。TEL URI 可以为 tel 1-123-456-7890。例如,私有用户标识可以为 usernameOexample. com。通过上述本发明实施例能够解决Push中多终端消息的接收问题,当同一个用户 存在多个终端时,会根据终端上报的订阅请求,及订阅请求携带的终端请求信息选择一个 终端,在业务到来时只向该选择的终端发送业务消息,从而避免向用户的所有终端都发送 业务消息,这样既能够避免网络资源的浪费和用户的多个终端反复接收到相同消息的到来,还能够避免因相同消息的到来影响终端其他业务的正常接收。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助 软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更 佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的 部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发 明各个实施例所述的方法。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应 视为本发明的保护范围。
权利要求
一种多终端时业务消息处理方法,所述多终端为至少两个具有相同用户标识的终端,其特征在于,包括以下步骤接收终端发送的请求消息,所述请求消息携带有所述终端的用户标识、Device ID和应用标识;根据所述用户标识和应用标识判断所述终端申请的业务是否已有相同用户标识的终端申请;如果没有相同用户标识的终端申请,则向所述终端发送业务订阅激活指示,并在业务到来时向所述终端发送业务消息;或向所述终端发送业务订阅激活指示;在业务到来时,根据所述终端的Device ID及网络侧配置判断所述终端是否为最佳终端,只向所述最佳终端发送所述业务消息。
2.如权利要求1所述多终端时业务消息处理方法,其特征在于,所述的请求消息包括 订阅请求消息和/或注册请求消息。
3.如权利要求1所述多终端时业务消息处理方法,其特征在于,还包括如果有相同用户标识的终端申请,则向所述终端发送提示消息,提示所述终端所述业 务已经被订阅。
4.如权利要求1所述多终端时业务消息处理方法,其特征在于,在所述向终端发送业 务订阅激活指示之后,还包括向与所述终端有相同用户标识其他终端发送提示消息,提示其他终端。
5.如权利要求1所述多终端时业务消息处理方法,其特征在于,所述请求消息还携带 有优先级,所述根据所述终端的Device ID及网络侧配置判断所述终端是否为最佳终端,具 体为根据所述终端上报的相应的优先级判断所述终端是否为最佳终端。
6.如权利要求5所述多终端时业务消息处理方法,其特征在于,所述只向所述最佳终 端发送所述业务消息,具体为优先向上报的所述业务优先级最高的终端发送所述业务消息。
7.如权利要求1所述多终端时业务消息处理方法,其特征在于,所述DeviceID为国际 移动用户标识IMSI、私有用户标识Private User Identity、全局可路由用户代理GRUU、多 个联系地址Multiple contact information、IP地址、电话号码或设备号。
8.—种Push发送代理,其特征在于,包括消息请求接收模块和处理模块,所述消息请求接收模块,用于接收终端发送请求消息,所述请求消息携带有所述终端 的用户标识、Device ID和应用标识;所述处理模块,用于在业务到来时,根据所述用户标识、Device ID和应用标识向所述 终端发送业务消息;所述处理模块包括判断子模块、订阅指示发送子模块和业务消息发送子模块, 所述判断子模块,用于根据所述用户标识和应用标识判断所述终端申请的业务是否已 有相同用户标识的终端申请;所述订阅指示发送子模块,用于在所述判断子模块判断没有相同用户标识的终端申请 时,向所述终端发送业务订阅激活指示;所述业务消息发送子模块,用于在业务到来时,向所述终端发送业务消息;或 所述处理模块包括网络侧配置保存子模块、最佳终端判断子模块和业务消息发送子模块,所述网络侧配置保存子模块,用于保存网络侧配置;所述最佳终端判断子模块,用于根据所述网络侧配置保存子模块保存的网络侧配置和 所述终端的Device ID判断所述终端是否为最佳终端,在判断所述终端为最佳终端时通知 所述业务消息发送子模块向所述终端发送业务消息。
全文摘要
本发明公开了一种多终端时业务消息处理方法,包括以下步骤接收终端发送的请求消息,所述请求消息携带有所述终端的请求信息;根据所述请求信息向所述终端发送业务消息。当同一个用户存在多个终端时,Push发送代理会根据终端上报的订阅请求及订阅请求携带的终端请求信息选择一个终端,在业务到来时只向该选择的终端发送业务消息,从而避免向用户的所有终端都发送业务消息。
文档编号H04W4/02GK101924993SQ201010259948
公开日2010年12月22日 申请日期2007年11月13日 优先权日2007年11月13日
发明者张惠萍, 杨健, 王浩, 王雷, 范姝男, 董挺, 陈国乔 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1