一种为用户提供业务的方法、系统和装置的制作方法

文档序号:7617985阅读:163来源:国知局
专利名称:一种为用户提供业务的方法、系统和装置的制作方法
技术领域
本发明实施例涉及通信技术领域,特别涉及一种为用户提供业务的方法、系统和
直O
背景技术
随着通信领域的技术发展,IMS(IP Multimedia Subsystem, IP,多媒体子系统)将 成为下一代固定和移动的核心网络,将出现接入技术和业务提供多样化,承载IP化,核心 网络统一到IMS的发展趋势和网络演进过程。用户在IMS网络中会得到更佳的业务体验。目前IMS网络中使用的用户身份主要有IMPI(IP Multimedia Private User Identity, IP 多媒体私有用户身份)和 IMPU(IP Multimedia Public User Identity, IP多媒体公有用户身份),这些用户身份通过签约的方式保存在HSSOtome Subscriber krver,归属用户签约服务器)中,当用户进行相关业务操作时,网络中的相关实体 如 I-CSCFanterrogating Call Session Control Function,协商呼叫会话控制功 能)、S-CSCF (Serving Call Session Control Function,服务呼叫会话控制功能)、 AS (Application Server,应用服务器)等通过用户身份到HSS来获取相关用户的签约数 据。IMS中用户身份之间及用户身份和签约数据之间的关系比较复杂,其中一个IMS Subscription (签约)包含了一个签约用户可能在Cx接口上传递的所 有签约信息,其下可以包含多个IMPI,但一个IMPI只能属于一个IMSSubscription ;一个IMPI可以包含多个IMPU,一个IMPU可以被多个IMPI共享;也就是说,IMS Subscription和IMPI是一对多的关系,IMPI和IMPU是多对多的 关系。在IMS网络中,UE(User Equipment,用户设备)在网络中注册后即可使用IMS网 络提供的各种业务。同时,UE可以选择签约未注册业务,当UE没有在网络中注册时网络仍 然可以为用户提供未注册业务如来话前转、来话记录等。目前网络限定了一个IMS Subscription下的所有用户身份将由同一个S-CSCF为 其提供服务,因此在下列应用场景中将会出现如下问题(1)当用户同时有未注册终发请求或AS代替用户发起的未注册始发请求和注册 请求时,I-CSCF如果先后为用户选择了不同的S-CSCF提供服务,未注册请求业务将会失 败;(2)当用户同时有两个或多个未注册终发请求或AS代替用户发起的未注册始发 请求时,I-CSCF如果先后为用户选择了不同的S-CSCF提供服务,第二个S-CSCF请求用户 未注册业务数据时将会收到HSS的失败响应无法为用户提供未注册业务;(3)当用户的多个终端同时注册时,I-CSCF如果先后为用户选择了不同的S-CSCF 提供服务。在第一个终端注册流程中选择的S-CSCFl向HSS发送了 MAR(Multimedia Authenticate Request,多媒体认证请求)请求鉴权数据时HSS保存了 S-CSCF1的名字。在第一个终端的第二个注册消息到达I-CSCF之前,如果第二个终端注册流程中选择的 S-CSCF2向HSS发送MAR请求鉴权数据,HSS会保存S-CSCF2名字,而将S-CSCFl名字覆盖 掉。第一个终端的后续注册消息将路由到S-CSCF2,这时由于S-CSCF2没有用户信息,因此 将导致第一个终端注册失败。

发明内容
本发明实施例提供一种为用户提供业务的方法、系统和装置,以实现当用户的多 个身份同时发生未注册业务,或发生未注册业务的同时发生注册请求,或同时发生注册请 求时,网络能够正常为用户提供业务。为达到上述目的,本发明实施例一方面提供一种为用户提供业务的方法,包括协商呼叫会话控制功能I-CSCF为用户选择第一服务呼叫会话控制功能S-CSCF并 将业务请求转给所述第一 S-CSCF ;所述第一 S-CSCF向归属用户签约服务器HSS发送请求用户的签约数据的请求;当所述HSS判断已存的分配给所述用户的S-CSCF的名字与所述第一 S-CSCF不 同后,所述第一 S-CSCF接收所述HSS返回的失败指示信息,根据所述失败指示信息向所述 I-CSCF返回失败响应;所述I-CSCF获取第二 S-CSCF的信息,将用户的业务请求转发给所述第二 S-CSCF, 其中所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF。另一方面,本发明实施例还提供一种为用户提供业务的装置,所述装置包括响应接收模块,用于为用户选择第一 S-CSCF并将业务请求转给所述第一 S-CSCF 之后,接收所述第一 S-CSCF返回的失败响应,其中,所述失败响应是所述第一 S-CSCF向归 属用户签约服务器HSS发送请求用户的签约数据的请求后,根据接收到的所述HSS在确定 所述第一 S-CSCF的名字与已存的分配给所述用户的S-CSCF不同后返回的失败指示信息所 返回的;第二 S-CSCF获取模块,用于接收所述第一 S-CSCF返回的失败响应之后,获取第二 S-CSCF的信息,其中所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF ;请求转发模块,用于在获取第二 S-CSCF的信息之后,将用户的业务请求转发给所 述第二 S-CSCF。再一方面,本发明实施例还提供一种为用户提供业务的系统,包括协商呼叫会话 控制功能I-CSCF和第一服务呼叫会话控制功能S-CSCF,所述I-CSCF,用于为用户选择第一服务呼叫会话控制功能S-CSCF并将业务请求 转给所述第一 S-CSCF ;所述第一 S-CSCF,用于向归属用户签约服务器HSS发送请求用户的签约数据的请 求;当所述HSS判断已存的分配给所述用户的S-CSCF的名字与所述第一 S-CSCF不同 后,所述第一 S-CSCF,还用于接收所述HSS返回的失败指示信息,根据所述失败指示信息向 所述I-CSCF返回失败响应;所述I-CSCF,还用于获取第二 S-CSCF的信息,将用户的业务请求转发给所述第二 S-CSCF,其中所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF。
通过本发明实施例,当用户的多个身份同时发生未注册业务,或发生未注册业 务的同时发生注册请求,或同时发生注册请求时,I-CSCF将用户的业务请求转到正确的 S-CSCF进行处理,从而实现了在上述三种情形下,网络均能正常为用户提供业务。


图1为本发明实施例为用户提供业务的方法的流程图;图2为本发明为用户提供业务的方法实施例一的流程图;图3为本发明为用户提供业务的方法实施例二的流程图;图4为本发明为用户提供业务的方法实施例三的流程图;图5为本发明实施例为用户提供业务的装置实施例一的结构图;图6为本发明实施例为用户提供业务的装置实施例二的结构图;图7为本发明为用户提供业务的方法实施例四的流程图;图8为本发明为用户提供业务的方法实施例五的流程图;图9为本发明实施例为用户提供业务的装置实施例三的结构图。
具体实施例方式本发明实施例提供一种为用户提供业务的方法,通过本发明实施例,当S-CSCF请 求用户签约数据时,在收到HSS指示已为用户分配了不同的S-CSCF的错误码后,返回失败 码给I-CSCF,I-CSCF向HSS再次请求S-CSCF的名字,并将业务请求转给已分配给用户的 S-CSCF,从而可以为用户提供正常业务。如图1所示,为本发明实施例为用户提供业务的方法的流程图,具体包括以下步 骤步骤S101,根据HSS返回的服务呼叫会话控制功能S-CSCF的能力集为用户选择第 一 S-CSCF并将业务请求转给所述第一 S-CSCF后,接收所述第一 S-CSCF返回的失败响应。在第一 S-CSCF向I-CSCF返回失败响应之前,第一 S-CSCF接收I-CSCF转发的用 户的业务请求,并向HSS请求该用户的签约数据,该第一 S-CSCF是I-CSCF根据HSS返回的 S-CSCF的能力集选择的。在第一 S-CSCF向HSS请求该用户的签约数据时,如果HSS发现该第一 S-CSCF的名 字与已存的分配给该用户的S-CSCF的名字不符,则向第一 S-CSCF返回失败指示信息,该失 败指示信息指示已有不同于第一 S-CSCF的另一 S-CSCF分配给了该用户,然后第一 S-CSCF 可以根据该HSS返回的失败指示信息向I-CSCF发送失败响应。步骤S102,所述I-CSCF获取第二 S-CSCF的信息,I-CSCF通过再次向HSS请求 S-CSCF的名字或能力集获取第二 S-CSCF的信息。在I-CSCF接收到失败响应之后,I-CSCF 再次向HSS请求S-CSCF的名字或能力集。I-CSCF可以在失败响应携带已有不同于第一 S-CSCF的另一 S-CSCF分配给了该用 户的指示信息时,再次向HSS请求S-CSCF的名字或能力集。步骤S103,I-CSCF将用户的业务请求转发给第二 S-CSCF。在I-CSCF将用户的业 务请求转发给第二 S-CSCF之后,第二 S-CSCF会向HSS请求用户的签约数据,然后根据HSS 返回的该用户的签约数据,正常处理该用户的业务请求。
另外,当用户的多个身份同时发生未注册业务,或发生未注册业务的同时发生注 册请求,或同时发生注册时,在向I-CSCF返回S-CSCF的能力集之后,HSS可以设置一个正 在进行S-CSCF选择的标记,同时还可以设置并启动一个定时器。在HSS接收到I-CSCF为 用户选择的S-CSCF的请求消息,例如SAR或MAR消息,并保存了该S-CSCF的名字或定时 器超时之后,HSS清除该正在进行S-CSCF选择的标记和定时器。如果在HSS设置了正在进 行S-CSCF选择的标记之后,HSS又收到I-CSCF或不同于该I-CSCF的其它I-CSCF发送的 针对同一个用户的请求S-CSCF能力集或名字的请求消息,如果这时正在进行S-CSCF选择 的标记存在,HSS将不立即向I-CSCF返回S-CSCF的能力集,而是在保存了 S-CSCF的名字 或定时器超时之后,再将S-CSCF的名字返回给I-CSCF。如果在HSS设置了正在进行S-CSCF选择的标记之后,HSS又收到了该I-CSCF或 不同于该I-CSCF的其它I-CSCF发送的针对同一个用户的请求S-CSCF能力集或名字的请 求消息,则HSS可以向该I-CSCF或不同于该I-CSCF的其它I-CSCF返回错误响应消息,以 通知该I-CSCF或不同于该I-CSCF的其它I-CSCF该HSS正在进行S-CSCF选择;或者,该I-CSCF或不同于该I-CSCF的其它I-CSCF等待预定的时间后再次向HSS发送 请求S-CSCF能力集或名字的请求消息;或者,该I-CSCF或不同于该I-CSCF的其它I-CSCF指示始发业务请求者等待预定的时 间后再次发起业务请求。如图2所示,为本发明为用户提供业务的方法实施例一的流程图,实施例一中,用 户未在网络中注册并且HSS中没有存储为用户提供服务的S-CSCF的名字。当用户同时有 未注册终发请求或AS代替用户发起的未注册始发请求和注册请求时,在I-CSCF收到被选 的为用户提供未注册业务的S-CSCF的失败响应时,再次向HSS请求S-CSCF的名字,从而能 够为用户提供未注册业务,避免呼损。具体包括以下步骤步骤S201,I-CSCF收到该用户的终发请求或AS代替用户发起的始发业务请求;步骤S202,I-CSCF 通过 LIR(Location Information Request,位置信息请求)向 HSS请求S-CSCF的名字或能力集;步骤S203,如果该用户存在未注册状态的业务或指示了是始发请求,HSS通过 LIA (Location Information Answer,位置信息应答)返回 S-CSCF 的能力集给 I-CSCF ;步骤S204,I-CSCF为用户选择了 S-CSCF1提供服务,并将业务请求转给S-CSCF1 ;步骤S205,在 HSS 处理 S-CSCF1 的 SAR(Server Assignment Request,服务器分配 请求)业务数据请求之前,用户发起注册请求。其中,该SAR业务数据请求会使HSS存储 S-CSCFl的名字,该用户可以是同一个IMSSubscription下的另一个用户身份;步骤S206,I-CSCF收到了该用户终端的注册消息;步骤S207,I-CSCF通过UAR(UserAuthorization Request,用户授权请求)向 HSS 请求S-CSCF的能力集;步骤S208,HSS 通过 UAA(User Authorization Answer,用户授权应答)返回 S-CSCF的能力集给I-CSCF ;步骤S209,I-CSCF为用户选择了 S-CSCF2提供服务,并将注册请求转给S-CSCF2 ;步骤S210,S-CSCF2发送MAR消息向HSS请求鉴权数据;
步骤S211,如果S-CSCFl还未发送SAR业务数据请求向HSS请求用户数据,HSS尚 未保存S-CSCFl的名字,HSS会存储S-CSCF2的名字,并通过MAA(Multimedia Authenticate Answer,多媒体认证应答)消息返回用户鉴权数据给S-CSCF2 ;或者,如果S-CSCFl已经发送SAR业务数据请求向HSS请求了用户数据并且HSS已经保 存了 S-CSCFl的名字,S-CSCFl的名字将会被重写为S-CSCF2,并且HSS可以向S-CSCFl发 起网络注销请求将S-CSCFl建立的会话释放。步骤S212,S-CSCFl发送SAR业务数据请求向HSS请求用户数据;步骤S213,HSS 发现已经保存了 S-CSCF2,将会在 SAA (Server Assignment Answer,服务器分配应答)中返回失败指示信息DIAMETER_ERROR_IDENTITY_ALREADY_ REGISTERED 给 S-CSCFl ;步骤S214,S-CSCFl回复失败响应给I-CSCF,表示无法为用户提供未注册业务;步骤S215,I-CSCF收到S-CSCF1的失败响应,再次向HSS发送IJR请求S-CSCF的 名字或能力集;其中,I-CSCF可以选择在S-CSCFl返回的失败响应明确指示已经有另一个S-CSCF 分配给了用户时才再次向HSS发送LIR。步骤S216,HSS在LIA中携带S-CSCF2的名字;步骤S217,I-CSCF将业务请求转到S-CSCF2进行处理;步骤S218,S-CSCF2发送SAR业务数据请求向HSS请求用户签约数据;步骤S219,HSS返回SAA携带用户签约数据给S-CSCF2 ;步骤S220,S-CSCF2正常处理业务。如图3所示,为本发明为用户提供业务的方法实施例二的流程图,实施例二中,用 户未在网络中注册并且HSS中没有存储为用户提供服务的S-CSCF的名字。当用户同时有 两个或多个未注册终发请求或AS代替用户发起的未注册始发请求时,在I-CSCF收到其中 一个S-CSCF的失败响应时,再次向HSS请求S-CSCF的名字,从而能够为用户正常提供未注 册业务,避免呼损。步骤S301,I-CSCF收到该用户的终发或AS代替用户发起的始发业务请求;步骤S302,I-CSCF向HSS请求S-CSCF的名字或能力集;步骤S303,如果该用户存在未注册状态的业务或指示了是始发请求,HSS返回 S-CSCF的能力集给I-CSCF ;步骤S304,I-CSCF为用户选择了 S-CSCFl提供服务,并将请求转给S-CSCFl ;步骤S305,在HSS处理S-CSCF1的SAR业务数据请求之前,I-CSCF又收到了该用 户的终发请求或AS代替用户发起的始发业务请求。其中,该SAR业务数据请求会使HSS存 储S-CSCFl的名字,该用户可以是同一个IMS Subscription下的另一个用户身份;步骤S306,I-CSCF向HSS请求S-CSCF的名字或能力集;步骤S307,HSS返回S-CSCF的能力集给I-CSCF ;步骤S308,I-CSCF又为用户选择了 S-CSCF2提供服务,并将请求转给S-CSCF2 ;步骤S309,S-CSCF2发送SAR业务数据请求向HSS请求签约数据;步骤S310,如果S-CSCFl还未发送SAR业务数据请求向HSS请求用户数据,HSS 尚未保存S-CSCFl的名字,HSS会存储S-CSCF2的名字,并通过SAA返回用户签约数据给S-CSCF2 ;或者,如果S-CSCFl已经发送SAR业务数据请求向HSS请求了用户数据并且HSS已经 保存了 S-CSCFl 的名字,HSS 将会在 SAA 中返回失败 DIAMETER_ERROR_IDENTITY_ALREADY_ REGISTERED给S-CSCF2,之后S-CSCF2回复失败响应给I-CSCF,表示无法为用户提供未注册 业务。I-CSCF后续处理基本同S314,只是针对S-CSCF2的失败响应进行。步骤S311,S-CSCFl发送SAR业务数据请求向HSS请求用户签约数据;步骤S312,HSS发现已经保存了 S-CSCF2,将会在SAA中返回失败指示信息 DIAMETER_ERR0R_IDENTITY_ALREADY_REGISTERED 给 S-CSCF1 ;步骤S313,S-CSCFl回复失败响应给I-CSCF,表示无法为用户提供未注册业务;步骤S314,I-CSCF收到S-CSCF1的失败响应,再次向HSS发送IJR请求S-CSCF的 名字或能力集;其中,I-CSCF可以选择在S-CSCFl返回的失败响应明确指示已经有另一个S-CSCF 分配给了用户时才再次向HSS发送LIR。步骤S315,HSS在LIA中携带S-CSCF2的名字;步骤S316,I-CSCF将业务请求转到S-CSCF2进行处理;步骤S317,S-CSCF2发送SAR业务数据请求向HSS请求用户签约数据;步骤S318,HSS返回SAA携带用户签约数据给S-CSCF2,之后S-CSCF2正常处理业 务。上述为用户提供业务的方法,实现了在用户同时发生多个未注册业务,或发生未 注册业务的同时发生注册请求的情况下,网络正常为用户提供相应的服务。如图4所示,为本发明为用户提供业务的方法实施例三的流程图。当用户的多个 身份同时发生未注册业务,或发生未注册业务的同时发生注册请求,或同时发生注册时, HSS收到I-CSCF请求S-CSCF的能力集的第一请求消息并在第一请求响应消息中携带了 S-CSCF的能力集后,可以在HSS中设置一个正在进行S-CSCF选择的标记,并可以同时启动 一个定时器。当HSS收到为用户选择的S-CSCF的SAR业务数据请求或MAR消息并保存了 S-CSCF的名字或定时器超时后,HSS清除该标记和定时器。如果在HSS保存S-CSCF名字 之前,HSS又收到I-CSCF请求S-CSCF的能力集的第二请求消息,即又有了该用户的业务请 求,如果该标记存在,HSS将不立即返回LIA。在HSS收到了 I-CSCF为用户选择的S-CSCF 的SAR业务数据请求或MAR消息并保存了 S-CSCF的名字后,再将S-CSCF的名字通过LIA 返回给I-CSCF,以解决可能出现的为一个用户同时分配两个S-CSCF的问题。如果定时器 超时时HSS还未收到S-CSCF的SAR业务数据请求或MAR消息,则返回S-CSCF的能力集给 I-CSCF进行后续处理。HSS在收到第二个请求S-CSCF的能力集的请求消息时,也可以选择返回一个特定 的错误码给I-CSCF,指示正在进行S-CSCF的选择,I-CSCF可以等待一定时间后再次发送请 求S-CSCF的能力集的请求消息,也可以直接返回错误给业务发起方,指示业务发起方等待 一定时间后再次发起业务请求。所述错误码还可以进一步携带对所述用户进行的前一次S-CSCF选择的预计完成 时间或者用以指示再次发起请求的时间,所述I-CSCF接收到所述错误响应之后,根据所述 对所述用户进行的前一次S-CSCF选择的预计完成时间或者用以指示再次发起请求的时间,等待预定的时间后再次向所述HSS发送请求S-CSCF能力集或名字的请求消息;或者,所 述I-CSCF指示所述用户等待预定的时间后再次发起业务请求。实施例三中,用户未在网络中注册并且HSS中没有存储为用户提供服务的S-CSCF 的名字。当用户同时有两个或多个终端同时注册时,HSS通过以上设置正在进行S-CSCF选 择的标记的方式,能够为用户正常提供注册业务,避免呼损。具体包括以下步骤步骤S401, I-CSCF收到用户的(IMPU1,IMPI1)的注册请求;步骤S402,I-CSCF向HSS发送UAR进行授权检查并发送请求S-CSCF的名字或能 力集第一请求消息;步骤S403,HSS设置一个正在进行S-CSCF选择的标记,可以同时启动一个定时器, 并通过UAA返回S-CSCF的能力集给I-CSCF ;步骤S404,I-CSCF又收到用户的(IMPU2,IMPI2)的注册请求;步骤S405,I-CSCF向HSS发送UAR进行授权检查并请求S-CSCF的名字或能力集, 如果HSS发现正在进行S-CSCF选择的标记已设置,则HSS不立即返回LIA。步骤S406,I-CSCF 为 IMPUl 禾Π IMPIl 选择了 S-CSCF1 提供服务,并将 IMPUl 和 IMPIl的注册请求转发给S-CSCFl ;步骤S407,S-CSCFl发送MAR消息向HSS请求IMPIl和IMPUl的鉴权数据;步骤S408,HSS保存S-CSCFl的名字并通过MAA消息返回鉴权数据给S-CSCFl ;步骤S409,HSS 通过 UAA 返回 S-CSCF1 的名字给 I-CSCF ;步骤S410,S-CSCFl 通过 I-CSCF、P-CSCF 向 IMPIl 和 IMPUl 发起 401 鉴权挑战;步骤S411,I-CSCF 将 IMPU2 禾Π IMP12 的注册请求转给 S-CSCFl ;步骤S412,S-CSCFl发送MAR向HSS请求IMP12和IMPU2的鉴权数据;步骤S413,HSS发现请求数据的S-CSCFl和存储的S-CSCFl的名字一致,通过MAA 返回鉴权数据给S-CSCFl ;步骤S414,S-CSCFl 通过 I-CSCF、P-CSCF 向 IMPI2 和 IMPU2 发起 401 鉴权挑战;步骤S415,I-CSCF收到用户(IMPU1,IMPI1)的第二个注册请求;步骤S416,I-CSCF向HSS发送UAR进行授权检查并请求S-CSCF的名字或能力集;步骤S417,HSS 通过 UAA 返回 S-CSCF1 的名字给 I-CSCF ;步骤S418,I-CSCF 将 IMPUl 和 IMPIl 的注册请求转给 S-CSCFl ;步骤S419,I-CSCF收到用户(IMPU2,IMPI2)的第二个注册请求;步骤S420,I-CSCF向HSS发送UAR进行授权检查并请求S-CSCF的名字或能力集;步骤S421,HSS 通过 UAA 返回 S-CSCF1 的名字给 I-CSCF ;步骤S422, I-CSCF 将 IMPU2 和 IMPI2 的注册请求转给 S-CSCFl ;步骤S423,正常注册流程。如图7所示,为本发明实施例为用户提供业务的实施例四的流程图,具体包括以 下步骤步骤S701,根据HSS返回的服务呼叫会话控制功能S-CSCF的能力集为用户选择第 一 S-CSCF并将业务请求转给所述第一 S-CSCF后,接收所述第一 S-CSCF返回的失败响应, 所述失败响应中携带第二 S-CSCF的名字。在第一 S-CSCF向I-CSCF返回失败响应之前,第一 S-CSCF接收I-CSCF转发的用户的业务请求,并向HSS请求该用户的签约数据,该第一 S-CSCF是I-CSCF根据HSS返回的 S-CSCF的能力集选择的。在第一 S-CSCF向HSS请求该用户的签约数据时,如果HSS发现该第一 S-CSCF的名 字与已存的分配给该用户的S-CSCF的名字不符,则向第一 S-CSCF返回失败指示信息,该失 败指示信息指示已有不同于第一 S-CSCF的另一 S-CSCF分配给了该用户,然后第一 S-CSCF 可以根据该HSS返回的失败指示信息向I-CSCF发送携带第二 S-CSCF的名字的失败响应。步骤S702,所述I-CSCF从所述失败响应中获取第二 S-CSCF的信息,即所述 I-CSCF根据所述第一 S-CSCF返回的失败响应中携带的第二 S-CSCF的名字将用户的业务请 求转发给所述第二 S-CSCF。在I-CSCF将用户的业务请求转发给第二 S-CSCF之后,第二 S-CSCF会向HSS请求 用户的签约数据,然后根据HSS返回的该用户的签约数据,正常处理该用户的业务请求。如图8所示,为本发明为用户提供业务的方法实施例五的流程图,实施例五中,用 户未在网络中注册并且HSS中没有存储为用户提供服务的S-CSCF的名字,当用户同时有未 注册终发请求或AS代替用户发起的未注册始发请求和注册请求时,在I-CSCF收到被选的 为用户提供未注册业务的S-CSCF的失败响应时,可以根据失败响应中携带的当前为用户 服务的S-CSCF的名字将业务请求发送给该S-CSCF,从而能够为用户提供未注册业务,避免 呼损。具体包括以下步骤步骤S801,I-CSCF收到该用户的终发请求或AS代替用户发起的始发业务请求;步骤S802,I-CSCF 通过 LIR(Location Information Request,位置信息请求)向 HSS请求S-CSCF的名字或能力集;步骤S803,如果该用户存在未注册状态的业务或指示了是始发请求,HSS通过 LIA (Location Information Answer,位置信息应答)返回 S-CSCF 的能力集给 I-CSCF ;步骤S804,I-CSCF为用户选择了 S-CSCFl提供服务,并将业务请求转给S-CSCFl ;步骤S805,在 HSS 处理 S-CSCF1 的 SAR(Server Assignment Request,服务器分配 请求)业务数据请求之前,用户发起注册请求。其中,该SAR业务数据请求会使HSS存储 S-CSCFl的名字,该用户可以是同一个IMSSubscription下的另一个用户身份;步骤S806,I-CSCF收到了该用户终端的注册消息;步骤S807,I-CSCF通过UAR(UserAuthorization Request,用户授权请求)向 HSS 请求S-CSCF的能力集;步骤S808,HSS 通过 UAA(User Authorization Answer,用户授权应答)返回 S-CSCF的能力集给I-CSCF ;步骤S809,I-CSCF为用户选择了 S-CSCF2提供服务,并将注册请求转给S-CSCF2 ;步骤S810,S-CSCF2发送MAR消息向HSS请求鉴权数据;步骤S811,如果S-CSCFl还未发送SAR业务数据请求向HSS请求用户数据,HSS尚 未保存S-CSCFl的名字,HSS会存储S-CSCF2的名字,并通过MAA(Multimedia Authenticate Answer,多媒体认证应答)消息返回用户鉴权数据给S-CSCF2 ;或者,如果S-CSCFl已经发送SAR业务数据请求向HSS请求了用户数据并且HSS已经保 存了 S-CSCFl的名字,S-CSCFl的名字将会被重写为S-CSCF2,并且HSS可以向S-CSCFl发 起网络注销请求将S-CSCFl建立的会话释放。
步骤S812,S-CSCFl发送SAR业务数据请求向HSS请求用户数据;步骤S813,HSS 发现已经保存了 S-CSCF2,将会在 SAA (Server Assignment Answer,服务器分配应答)中返回失败指示信息DIAMETER_ERROR_IDENTITY_ALREADY_ REGISTERED 给 S-CSCFl,同时携带 S-CSCF2 的名字;步骤S814,S-CSCFl回复失败响应给I-CSCF,表示无法为用户提供未注册业务,同 时携带S-CSCF2的信息;步骤S815,I-CSCF收到S-CSCF1的失败响应,根据其中S-CSCF2的信息将业务请 求转到S-CSCF2进行处理;步骤S816,S-CSCF2发送SAR业务数据请求向HSS请求用户签约数据;步骤S817,HSS返回SAA携带用户签约数据给S-CSCF2 ;步骤S818,S-CSCF2正常处理业务。上述为用户提供业务的方法,不仅在用户的多个身份同时发生多个未注册业务, 或在请求未注册业务的同时发生注册请求的情况下,网络都能正常为用户提供相应的服 务,而且在用户的多个身份同时进行注册时仍然能够解决为一个用户分配多个S-CSCF的 问题,为用户正常提供业务。如图5所示,为本发明实施例为用户提供业务的装置的结构图,该装置用于根据 HSS返回的S-CSCF的能力集为用户选择第一 S-CSCF并将业务请求转给第一 S-CSCF实体 后,接收第一 S-CSCF实体返回的失败响应,再次向HSS实体请求S-CSCF的名字或能力集, 并将用户的业务请求转发给第二 S-CSCF实体。该装置可以为I-CSCF实体。该为用户提供业务的装置包括响应接收模块51,用于接收第一 S-CSCF实体返回 的失败响应;第二 S-CSCF信息请求模块52,用于再次向HSS实体请求S-CSCF的名字或能力集;请求转发模块53,用于根据HSS实体返回的第二 S-CSCF的信息将用户的业务请求 转发给第二 S-CSCF实体。响应接收模块51还用于接收携带失败指示信息的失败响应,其中,该失败指示信 息表示HSS实体已有不同于第一 S-CSCF实体的另一 S-CSCF实体分配给了用户;则第二 S-CSCF信息请求模块52,还用于当响应接收模块51接收的失败响应携带 已有不同于第一 S-CSCF实体的另一 S-CSCF实体分配给了用户的失败指示信息时,再次向 HSS实体请求S-CSCF的名字或能力集。该为用户提供业务的装置还包括第二 S-CSCF确定模块M,用于根据第二 S-CSCF 信息请求模块52获取的第二 S-CSCF实体的名字或能力集,确定第二 S-CSCF实体。如图6所示,为本发明实施例HSS实体的结构图,包括能力集请求接收模块61, 用于接收I-CSCF发送的请求为用户的第二身份提供服务的S-CSCF的能力集请求;以及用 于接收请求为用户的第一身份提供服务的S-CSCF的能力集或S-CSCF的名字的请求消息, 并返回为用户的第一身份提供服务的S-CSCF的能力集或S-CSCF的名字。信息返回模块62,用于在HSS确定前一次进行S-CSCF的选择已结束或前一次进行 S-CSCF的选择已超时时,将S-CSCF的能力集或名字返回给I-CSCF,其中,所述前一次进行 S-CSCF的选择指对所述用户的第一身份进行的S-CSCF的选择。该HSS实体还包括设置模块63,用于在能力集请求接收模块61接收到I-CSCF发送的为用户的第一身份提供服务的S-CSCF的能力集请求之后,设置正在进行S-CSCF实体 选择的标记,或者设置一个定时器并开始计时。该HSS实体还包括标记清除模块64,用于在所述信息返回模块确定对所述用户 的第一身份进行的S-CSCF的选择已结束或者已超时时,清除所述正在进行S-CSCF选择的 标记,或者清除所述定时器。该HSS实体还包括错误返回模块65,用于当HSS确定前一次进行S-CSCF的选择 未结束或前一次进行S-CSCF的选择未超时时,在HSS实体再次接收到I-CSCF实体或不同 于该I-CSCF实体的其它I-CSCF实体发送的针对同一个用户的请求S-CSCF能力集或名字 的请求消息之后,向该I-CSCF实体或不同于该I-CSCF实体的其它I-CSCF实体返回错误响 应消息,以通知该I-CSCF实体或不同于该I-CSCF实体的其它I-CSCF实体正在进行S-CSCF 实体选择。如图6,本发明实施例为用户提供业务的装置另一实施例的结构图,包括能力集请求接收模块,用于接收协商呼叫会话控制功能I-CSCF发送的请求为用 户提供服务的服务呼叫会话控制功能S-CSCF的能力集或名字的第二请求消息;信息返回模块,用于在确定对所述用户进行的前一次S-CSCF的选择已结束或者 已超时时,将S-CSCF的能力集或名字返回给所述I-CSCF。所述能力集请求接收模块还用于接收请求为所述用户提供服务的S-CSCF的能 力集或名字的第一请求消息,并返回携带S-CSCF的能力集或名字的第一请求响应消息。所述装置还包括设置模块,用于在所述能力集请求接收模块返回携带S-CSCF的 能力集或名字的第一请求响应消息之后,设置正在进行S-CSCF实体选择的标记,或者设置 一个定时器并开始计时。所述装置还包括标记清除模块,用于在所述信息返回模块确定对所述用户进行 的前一次S-CSCF的选择已结束或者已超时时,清除所述正在进行S-CSCF选择的标记,或者 清除所述定时器。所述装置还包括错误返回模块,用于在所述信息返回模块确定对所述用户进行 的前一次S-CSCF的选择未结束或者未超时时,向所述I-CSCF返回错误响应消息,所述错误 响应消息用以通知所述I-CSCF所述HSS正在进行S-CSCF选择。以上实施例中处理用户并发业务请求的I-CSCF实体可以是同一个,也可以是不 同的I-CSCF实体。如图9所示,为本发明实施例为用户提供业务的装置的结构图,所述装置包括
第一 S-CSCF获取模块91,用于向归属用户签约服务器HSS请求S-CSCF的能力集, 并根据所述HSS返回的S-CSCF的能力集为用户选择第一 S-CSCF,将用户的业务请求转发给 所述第一 S-CSCF ;响应接收模块92,用于在将业务请求转发给第一服务呼叫会话控制功能S-CSCF 之后,接收所述第一 S-CSCF返回的失败响应,其中,所述失败响应表示所述HSS已有不同于 所述第一 S-CSCF的另一 S-CSCF分配给了所述用户;第二 S-CSCF获取模块93,用于接收所述第一 S-CSCF返回的失败响应之后,获取第 二 S-CSCF的信息,其中所述第二 S-CSCF是HSS为所述用户当前记录的S-CSCF ;请求转发模块94,用于在获取第二 S-CSCF的信息之后,将用户的业务请求转发给所述第二 S-CSCF。本发明实施例中所述装置为协商呼叫会话控制功能I-CSCF。其中,所述第二 S-CSCF获取模块93还用于在接收所述第一 S-CSCF返回的失败 响应之后,再次向所述HSS请求S-CSCF的名字或能力集,接收所述HSS返回的第二 S-CSCF 的名字,或者接收到所述HSS返回的S-CSCF的能力集后,从中选择获取第二 S-CSCF的信
肩、ο所述响应接收模块92还用于接收所述第一 S-CSCF返回的携带所述第二 S-CSCF 名字的失败响应;则所述第二 S-CSCF获取模块93根据接收到的所述第一 S-CSCF返回的携 带所述第二 S-CSCF名字的失败响应,获取第二 S-CSCF的信息。本发明实施例当用户未在网络中注册并且HSS中没有存储为用户提供服务的 S-CSCF的名字,或者当用户同时有未注册终发请求或AS代替用户发起的未注册始发请求 和注册请求时,在I-CSCF收到被选的为用户提供未注册业务的S-CSCF的失败响应时,可以 根据失败响应中携带的当前为用户服务的S-CSCF的名字或者再次向HSS请求S-CSCF的名 字或能力集,获取第二 S-CSCF,将业务请求发送给该第二 S-CSCF,从而能够为用户提供未 注册业务,避免呼损。或者,HSS收到I-CSCF请求S-CSCF的能力集的请求消息时,如果判 断前一次选择S-CSCF还未完成,HSS将不立即返回LIA。在HSS收到了 I-CSCF为用户选择 的S-CSCF的SAR业务数据请求或MAR消息并保存了 S-CSCF的名字后,再将S-CSCF的名字 通过LIA返回给I-CSCF,解决了可能出现的为一个用户同时分配两个S-CSCF的问题,保证 为用户正常提供业务。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助 软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更 佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的 部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发 明各个实施例所述的方法。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领 域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1.一种为用户提供业务的方法,其特征在于,包括协商呼叫会话控制功能I-CSCF为用户选择第一服务呼叫会话控制功能S-CSCF并将业 务请求转给所述第一 S-CSCF ;所述第一 S-CSCF向归属用户签约服务器HSS发送请求用户的签约数据的请求; 当所述HSS判断已存的分配给所述用户的S-CSCF的名字与所述第一 S-CSCF不同后, 所述第一 S-CSCF接收所述HSS返回的失败指示信息,根据所述失败指示信息向所述I-CSCF 返回失败响应;所述I-CSCF获取第二 S-CSCF的信息,将用户的业务请求转发给所述第二 S-CSCF,其中 所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF。
2.如权利要求1所述为用户提供业务的方法,其特征在于,所述失败指示信息指示已有不同于所述第一 S-CSCF的另一 S-CSCF分配给所述用户。
3.如权利要求1或2所述为用户提供业务的方法,其特征在于,所述I-CSCF获取第二 S-CSCF的信息具体包括所述I-CSCF再次向HSS请求S-CSCF的名字或能力集,所述I-CSCF接收所述HSS返回 的第二 S-CSCF的名字。
4.如权利要求3所述为用户提供业务的方法,其特征在于,所述I-CSCF将用户的业务 请求转发给所述第二 S-CSCF具体包括所述I-CSCF根据所述HSS返回的第二 S-CSCF名字将用户的业务请求转发给所述第二 S-CSCF。
5.如权利要求2所述为用户提供业务的方法,其特征在于,所述I-CSCF接收所述第一 S-CSCF返回的失败响应具体包括所述HSS向所述第一 S-CSCF返回携带所述第二 S-CSCF名字和所述失败指示信息的服 务器分配应答;所述I-CSCF接收所述第一 S-CSCF根据所述失败指示信息发送的携带所述 第二 S-CSCF名字的失败响应。
6.如权利要求5所述为用户提供业务的方法,其特征在于,所述I-CSCF获取第二 S-CSCF的信息具体包括所述I-CSCF从所述携带第二 S-CSCF的名字的失败响应中获取所述第二 S-CSCF的信 息。
7.如权利要求4或6所述的为用户提供业务的方法,其特征在于,在所述I-CSCF将用 户的业务请求转发给所述第二 S-CSCF之后还包括所述第二 S-CSCF向所述HSS请求所述用户的签约数据;所述第二 S-CSCF接收所述HSS返回的所述用户的签约数据,并处理所述用户的业务请求。
8.一种为用户提供业务的装置,其特征在于,所述装置包括响应接收模块,用于为用户选择第一 S-CSCF并将业务请求转给所述第一 S-CSCF之后, 接收所述第一 S-CSCF返回的失败响应,其中,所述失败响应是所述第一 S-CSCF向归属用 户签约服务器HSS发送请求用户的签约数据的请求后,根据接收到的所述HSS在确定所述 第一 S-CSCF的名字与已存的分配给所述用户的S-CSCF不同后返回的失败指示信息所返回 的;第二 S-CSCF获取模块,用于接收所述第一 S-CSCF返回的失败响应之后,获取第二 S-CSCF的信息,其中所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF ;请求转发模块,用于在获取第二 S-CSCF的信息之后,将用户的业务请求转发给所述第 二 S-CSCF。
9.如权利要求8所述为用户提供业务的装置,其特征在于,所述装置为协商呼叫会话 控制功能I-CSCF。
10.如权利要求8或9所述为用户提供业务的装置,其特征在于,所述装置还包括 第一 S-CSCF获取模块,用于向归属用户签约服务器HSS请求S-CSCF的能力集,并根据所述HSS返回的S-CSCF的能力集为用户选择第一 S-CSCF,将用户的业务请求转发给所述第一S-CSCF。
11.如权利要求10所述为用户提供业务的装置,其特征在于,所述第二S-CSCF获取模 块还用于在接收所述第一 S-CSCF返回的失败响应之后,再次向所述HSS请求S-CSCF的名 字或能力集,接收所述HSS返回的第二 S-CSCF的名字。
12.如权利要求10所述为用户提供业务的装置,其特征在于,所述响应接收模块还用于接收所述第一 S-CSCF返回的携带所述第二 S-CSCF名字的失败响应;则所述第二 S-CSCF获取模块根据接收到的所述第一 S-CSCF返回的携带所述第二 S-CSCF名字的失败响 应,获取第二 S-CSCF的信息。
13.一种为用户提供业务的系统,其特征在于,包括协商呼叫会话控制功能I-CSCF和 第一服务呼叫会话控制功能S-CSCF,所述I-CSCF,用于为用户选择第一服务呼叫会话控制功能S-CSCF并将业务请求转给 所述第一 S-CSCF ;所述第一 S-CSCF,用于向归属用户签约服务器HSS发送请求用户的签约数据的请求; 当所述HSS判断已存的分配给所述用户的S-CSCF的名字与所述第一 S-CSCF不同后, 所述第一 S-CSCF,还用于接收所述HSS返回的失败指示信息,根据所述失败指示信息向所 述I-CSCF返回失败响应;所述I-CSCF,还用于获取第二 S-CSCF的信息,将用户的业务请求转发给所述第二 S-CSCF,其中所述第二 S-CSCF是HSS存储的已分配给所述用户的S-CSCF。
14.如权利要求13所述的为用户提供业务的系统,其特征在于,所述第一 S-CSCF,还用于接收所述HSS返回的携带所述第二 S-CSCF名字和所述失败指 示信息的服务器分配应答,向所述I-CSCF发送携带所述第二 S-CSCF名字的失败响应; 相应地,所述I-CSCF,还用于从所述携带第二 S-CSCF的名字的失败响应中获取所述第二S-CSCF的信息。
15.如权利要求13所述的为用户提供业务的系统,其特征在于,所述系统还包括第二 S-CSCF,用于接收所述I-CSCF转发的用户的业务请求,向所述HSS请求所述用户的签约数 据,接收所述HSS返回的所述用户的签约数据,并处理所述用户的业务请求。
全文摘要
本发明实施例公开了一种为用户提供业务的方法,包括协商呼叫会话控制功能I-CSCF为用户选择第一服务呼叫会话控制功能S-CSCF并将业务请求转给所述第一S-CSCF;所述第一S-CSCF向归属用户签约服务器HSS发送请求用户的签约数据的请求;当所述HSS判断自身存储的分配给所述用户的S-CSCF的名字与所述第一S-CSCF不同后,所述第一S-CSCF接收所述HSS返回的失败指示信息,根据所述失败指示信息向所述I-CSCF返回失败响应;所述I-CSCF获取第二S-CSCF的信息,将用户的业务请求转发给所述第二S-CSCF,其中所述第二S-CSCF是HSS已分配给所述用户的S-CSCF。本发明实施例实现了当用户的多个身份同时发生未注册业务,或发生未注册业务的同时发生注册请求,或同时发生注册请求时,I-CSCF将用户的业务请求转到相应的S-CSCF进行处理,使网络能正常为用户提供业务。
文档编号H04W12/06GK102098652SQ201110070420
公开日2011年6月15日 申请日期2008年3月28日 优先权日2008年1月18日
发明者时书峰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1