DCC系统、切换账号计费方法、系统及存储介质与流程

文档序号:16629745发布日期:2019-01-16 06:27阅读:876来源:国知局
DCC系统、切换账号计费方法、系统及存储介质与流程

本发明涉及移动通信技术领域,尤其涉及一种dcc系统、数据业务切换账号计费方法、系统及存储介质。



背景技术:

一卡多号业务是一种在用户漫游时,无需更换或增加sim(subscriberidentitymodel,客户识别模块)卡,使用原sim卡就可以使用原号码和漫游地号码的业务。随着全球经济一体化的形成,用户需要频繁地在多个国家和地区之间出入,而各地数据业务计费规则和策略不尽相同。因此,当用户漫游到其他地区或者国家的网络时,使用归属地号码使用数据流量时将产生昂贵的漫游费用,限制了用户使用一卡多号业务的积极性。

传统的一卡多号业务副号的基本功能限于拨打电话,接听电话,收发短信等,并不具备为主号分担数据业务扣费的功能,导致用户花费大量数据业务漫游费用。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供一种dcc系统、数据业务切换账号计费方法、系统及存储介质,旨在解决现有一卡多号业务中副号无法为主号分担数据业务扣费,导致用户花费大量数据业务漫游费用的技术问题。

为实现上述目的,本发明提供一种数据业务切换账号计费方法,所述方法包括以下步骤:

接收实时计费上报网元发送的信用控制请求ccr消息,解析该ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同;

若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息转发至在线计费系统ocs。

可选地,所述数据业务切换账号计费方法还包括:

若检测到ccr消息发送至ocs,设置第一时长,等待ocs响应;

若第一时长内接收到ocs基于接收的ccr消息返回的信用控制应答cca消息,则释放第一时长,透传cca消息至实时计费上报网元;

若第一时长内未接收到ocs基于ccr消息返回的cca消息,则发送请求失败信息至实时计费上报网元,释放第一时长并清理本次会话。

可选地,所述接收实时计费上报网元发送的信用控制请求ccr消息的步骤包括:

接收实时计费上报网元发送的ccr消息,确定该ccr消息的消息类型,所述消息类型包括会话初始消息ccr-i、会话更新消息ccr-u和会话终止消息ccr-t;

若第一时长内接收到ocs基于接收的ccr-i或ccr-u消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,并设置第二时长,等待实时计费上报网元发送新的ccr消息;

若第一时长内接收到ocs基于接收的ccr-t消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,终止会话。

可选地,所述并将用户号码替换后的新的ccr消息转发至ocs的步骤还包括:

将ccr消息中的diameter信控协议代理dccproxy接口机的归属域替换成ocs的归属域;

将ccr消息中实时计费上报网元的设备标识和设备归属域替换成dccproxy接口机的设备标识和设备归属域,并增加一个包含实时计费上报网元设备标识的属性值对avp后,将该ccr消息转发至ocs。

可选地,所述获取预置的付费号码的步骤包括:

根据前述ccr消息判断该ccr消息是否为会话初始消息ccr-i;

若该ccr消息为ccr-i,则根据ccr消息中的用户号码获取数据库中的对应数据账号,该对应数据账号为付费号码;

若该ccr消息不为ccr-i,则获取保存在当前会话中的付费号码。

可选地,所述则根据ccr消息中的用户号码获取数据库中对应数据账号,该对应数据账号为付费号码的步骤包括:

根据ccr消息中的用户号码调用存储过程查询数据库;

若调用返回对应数据账号,则该对应数据账号为付费号码;

若调用返回错误码,则流程结束。

可选地,所述数据业务切换账号计费方法还包括:

接收来自业务控制点scp的数据业务切换通知,根据数据业务切换通知中的切换号码查询用户号码对应的所有当前会话;

在所有当前会话里发送中断会话请求asr消息至实时计费上报网元,等待实时计费上报网元返回中断会话应答asa消息和会话终止消息ccr-t消息,以终止当前会话。

为实现上述目的,本发明还提供一种diameter信控协议dcc系统,所述dcc系统包括:dcc服务端、dccproxy接口机和dcc客户端;

所述dcc服务端,用于接收实时计费上报网元发送的ccr消息,并将所述ccr消息发送至dccproxy接口机;

所述dccproxy接口机用于:

解析所述ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同,若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息发送至dcc客户端;

所述dcc客户端,用于将用户号码替换后的新的ccr消息转发至ocs。

为实现上述目的,本发明还提供一种数据业务账号切换计费系统,所述数据业务账号切换计费系统包括:实时计费上报网元、dcc系统、数据库、和ocs;

所述实时计费上报网元,用于向dcc系统发送ccr消息;

所述dcc系统包括:dcc服务端、dccproxy接口机和dcc客户端;

所述dcc服务端,用于接收实时计费上报网元发送的ccr消息,并将所述ccr消息发送至dccproxy接口机;

所述dccproxy接口机用于:

解析所述ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同,若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息发送至dcc客户端;

所述dcc客户端,用于将用户号码替换后的新的ccr消息转发至ocs;

所述数据库,用于为dcc系统提供初始付费号码;

所述ocs,用于接收dcc系统转发的新的ccr消息。

此外,为实现上述目的,本发明还提供一种存储介质,所述存储介质上存储有数据业务切换账号计费程序,所述数据业务切换账号计费程序被dcc系统执行时实现上述数据业务切换账号计费方法的步骤。

本发明实施例提出的一种数据业务切换账号计费方法,通过在dcc系统接收到实时计费上报网元发送的ccr消息时,解析该ccr消息获取请求扣费的用户号码;获取预置的付费号码,若用户号码与该付费号码不一致,则将前述ccr消息中的用户号码替换成付费号码后,将用户号码替换后的ccr消息转发给ocs,使得实际扣费的号码为预置的付费号码,用户可根据自己的实际情况设置付费号码,或者系统可根据用户情况自动设置付费号码,使得用户在不同地区的使用数据业务时,可将数据业务花费记在所在地号码账号上,降低数据业务漫游费用,实现一卡多号中号码间自动或手动切换数据业务计费,提升用户使用一卡多号业务的积极性。

附图说明

图1是本发明实施例方案涉及的运行环境的系统结构示意图;

图2是本发明一可选实施例方案涉及的运行环境的系统结构示意图;

图3为本发明数据业务切换账号计费方法第一实施例的流程示意图;

图4为数据业务切换计费数据账号实现方法流程示意图;

图5为本发明数据业务切换账号计费方法涉及的dcc协议消息流程示意图;

图6为本发明数据业务切换账号计费方法第四实施例的流程示意图;

图7为本发明数据业务切换账号计费方法涉及的dcc协议消息另一流程示意图;

图8为本发明数据业务切换账号计费方法涉及的dccproxy接口机的状态机示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的运行环境的数据业务账号切换计费系统结构示意图。

如图1所示,该系统可以包括:实时计费上报网元15、dcc系统14(diameter信控协议diametercreditcontrol)、数据库13、和ocs16(在线计费系统onlinechargingsystem)。

所述实时计费上报网元15,用于向dcc系统14发送ccr消息。具体地,实时计费上报网元15可包括ismp(综合业务管理平台integratedservicesmanagementplatform)、scp(业务控制点servicecontrolpoint)、ccg(内容计费网关contentcharginggateway)、ggsn(gprs网关支持节点gatewaygprssupportnode)、pgw(分组数据网网关pdngateway)及其它可触发计费请求的网元。在接收到用户端发送的业务请求后,向dcc系统14发送鉴权请求或信用额度申请(目的是实现预付费的计费,为方便理解,下文称计费请求)。可根据imsi(国际移动用户识别码internationalmobilesubscriberidentificationnumber)(但不限于imsi)来分发ccr消息。

所述dcc系统14包括:dcc服务端17、dccproxy接口机18和dcc客户端19;

所述dcc服务端17,用于接收实时计费上报网元15发送的ccr消息,并将所述ccr消息发送至dccproxy接口机18;

所述dccproxy接口机18用于:

解析所述ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同,若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息发送至dcc客户端19;

所述dcc客户端19,用于将用户号码替换后的新的ccr消息转发至ocs。

具体地,所述dcc系统14,用于接收实时计费上报网元15的计费请求,并转发至ocs16,同时将对端响应消息返回至实时计费上报网元15。dcc服务端17和dcc客户端19处理dcc系统14与外部模块之间的链路维护工作,它们之间的通信采用diameter协议。dccproxy接口机18和dcc服务端17、dcc客户端19采用接口机平台内部接口通信,可采用非diameter协议。

通过如上所述的dcc系统14内外通信协议的不同设置,实现dccproxy接口机18的通用设计,即使更改dcc系统14与外部通信的diameter协议,dcc模块14内部即dccproxy接口机18与dcc服务端17、dcc客户端19间采用的通信协议也无需改变,这样dccproxy接口机18就可以集中处理与数据库13之间的业务逻辑和流程工作。既降低了协议部分开发工作量,又大大提高了业务应用方面的开发和维护的效率。

所述数据库13,用于为dcc系统14提供初始付费号码。具体地,用于用户账户信息的存储,当dcc系统14实施查询或切换操作时,提供过程调用访问获取信息判断的接口。

所述ocs16,用于接收dcc系统14转发的新的ccr消息。是第三方提供的在线计费系统,实现用户实时信用控制、预付费使用数据业务和增值业务实时计费。

本发明数据业务切换账号计费方法基于diameter协议而实现,其中diameter协议是一种支持基于ip技术的aaa框架的aaa协议(authentication认证、accounting计费、authorization授权),用以实现网络系统对特定用户的网络资源使用情况的准确记录。在diameter基础协议上扩展的信用控制应用协议diametercreditcontrolapplication定义了实时计费协议框架,采用信用额度控制实现了基于会话及事件的计费,解决了对于预付费的计费需求。

本领域技术人员可以理解,图1中示出的系统结构并不构成对系统的限定,可以包括比图示更多或更少的模块,或者组合某些模块,或者不同的模块布置。

如图1所示,数据库中可以存储数据业务切换账号计费程序,dcc系统可以调用数据库中存储的数据业务切换账号计费程序,并执行以下操作:

接收实时计费上报网元发送的信用控制请求ccr消息,解析该ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同;

若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息转发至在线计费系统ocs。

进一步地,dcc系统可以调用数据库中存储的数据业务切换账号计费程序,还执行以下操作:

若检测到ccr消息发送至ocs,设置第一时长,等待ocs响应;

若第一时长内接收到ocs基于接收的ccr消息返回的信用控制应答cca消息,则释放第一时长,透传cca消息至实时计费上报网元;

若第一时长内未接收到ocs基于ccr消息返回的cca消息,则发送请求失败信息至实时计费上报网元,释放第一时长并清理本次会话。

进一步地,所述接收实时计费上报网元发送的信用控制请求ccr消息的步骤包括:

接收实时计费上报网元发送的ccr消息,确定该ccr消息的消息类型,所述消息类型包括会话初始消息ccr-i、会话更新消息ccr-u和会话终止消息ccr-t;

若第一时长内接收到ocs基于接收的ccr-i或ccr-u消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,并设置第二时长,等待实时计费上报网元发送新的ccr消息;

若第一时长内接收到ocs基于接收的ccr-t消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,终止会话。

进一步地,所述并将用户号码替换后的新的ccr消息转发至ocs的步骤还包括:

将ccr消息中的diameter信控协议代理dccproxy接口机的归属域替换成ocs的归属域;

将ccr消息中实时计费上报网元的设备标识和设备归属域替换成dccproxy接口机的设备标识和设备归属域,并增加一个包含实时计费上报网元设备标识的属性值对avp后,将该ccr消息转发至ocs。

进一步地,所述获取预置的付费号码的步骤包括:

根据前述ccr消息判断该ccr消息是否为会话初始消息ccr-i;

若该ccr消息为ccr-i,则根据ccr消息中的用户号码获取数据库中的对应数据账号,该对应数据账号为付费号码;

若该ccr消息不为ccr-i,则获取保存在当前会话中的付费号码。

进一步地,所述则根据ccr消息中的用户号码获取数据库中对应数据账号,该对应数据账号为付费号码的步骤包括:

根据ccr消息中的用户号码调用存储过程查询数据库;

若调用返回对应数据账号,则该对应数据账号为付费号码;

若调用返回错误码,则流程结束。

进一步地,dcc系统可以调用数据库中存储的数据业务切换账号计费程序,还执行以下操作:

接收来自业务控制点scp的数据业务切换通知,根据数据业务切换通知中的切换号码查询用户号码对应的所有当前会话;

在所有当前会话里发送asr消息至实时计费上报网元,等待实时计费上报网元返回asa消息和ccr-t消息,以终止当前会话。

此外,如图1,本实施例还提出一种diameter信控协议dcc系统,所述dcc系统包括:dcc服务端、dccproxy接口机和dcc客户端;

所述dcc服务端,用于接收实时计费上报网元发送的ccr消息,并将所述ccr消息发送至dccproxy接口机;

所述dccproxy接口机用于:

解析所述ccr消息获取用户号码;

获取预置的付费号码,判断付费号码与用户号码是否相同,若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息发送至dcc客户端;

所述dcc客户端,用于将用户号码替换后的新的ccr消息转发至ocs。

参照图3,本发明数据业务切换账号计费方法第一实施例提供一种数据业务切换账号计费方法,所述数据业务切换账号计费方法包括:

步骤s10,接收实时计费上报网元发送的信用控制请求ccr消息,解析该ccr消息获取用户号码;

当dcc系统接收到实时计费上报网元发送的包含计费请求的ccr消息时,解析该ccr消息,获取实时计费上报网元请求扣费的号码,即用户号码。本实施例所述的计费方式为实时计费方式。

在用户开始上网浏览网页、看视频或进行其他使用数据流量的行为时,实时计费上报网元会收到该用户的业务请求。在根据前述业务请求消息获得用户的计费属性为预付费时,实时计费上报网元将发送会话初始消息ccr(initial)(下文称ccr-i)至dcc系统,经dcc系统路由转发给ocs,ocs根据接收到的ccr-i消息获取用户号码,检查用户账户状态,判断用户是否可使用业务,ocs进行账户余额预留,分配用户可用额度。ocs将用户可用配额通过初始应答消息cca(initial)(下文称cca-i)给dcc系统,经dcc系统路由转发给实时计费上报网元。用户使用业务,实时计费上报网元根据cca-i中的可用额度实时监控中断用户对业务的使用情况。如果已授权的可用额度使用完毕,实时计费上报网元需重新申请使用配额,向dcc系统再次发送会话更新消息ccr(update)(下文称ccr-u),经dcc系统路由转发给ocs,ocs根据ccr-u更新信息,进行重新批价、账户余额预留,重新分配用户可用额度,再将可用额度通过更新应答消息cca(update)(下文称cca-u)给dcc系统,经dcc系统路由转发给实时计费上报网元。正常情况下,用户在使用业务过程中,可能出现多次已授权的可用额度使用完毕,需重新授权的情况,即实时计费上报网元多次向dcc系统发送ccr-u,再由dcc系统路由转发至ocs获取可用配额,重复步骤,不赘述。在用户终止业务或其他条件下,实时计费上报网元向dcc系统发送会话终止消息ccr(termination)(下文称ccr-t),ocs根据dcc系统转发的ccr-t完成批价,扣除用户账户费用,向dcc系统回复终止应答消息cca(termination)(下文称cca-t)。

其中正在使用数据流量、向实时计费上报网元发送业务请求的号码即本实施例所说的用户号码,也即每次从实时计费上报网元来的ccr消息中包含的请求扣费的当前正在使用数据流量的号码,也可称请求扣费号码,所以这里的用户号码可以为一卡多号中的主号,也可以为副号。

步骤s20,获取预置的付费号码,判断付费号码与用户号码是否相同;

本实施例中的付费号码为实际发送至ocs系统进行扣费的号码。由步骤s10的说明中可知,实时计费上报网元根据业务请求或用户使用业务的情况发送ccr消息,其中的号码为用户号码。经dcc系统处理转发给ocs后,ocs根据dcc系统处理过的ccr消息获取实际计费号码,本实施例所述的付费号码即ocs获取的实际计费号码。

付费号码在数据库中存储为对应数据账号,即数据库中的对应数据账号为付费号码。这里的对应数据账号可以是用户初始注册号码时预先设置的存储于数据库的默认扣费号码,可以是默认的一卡多号中的主号,也可以是遵循一定规则在几个号码间变化的扣费号码,例如,一卡主号归属地为a地,副号一归属地为b、副号二归属地为c,数据账号的确定规则为:当用户在b地使用数据流量,则归属地为b地的副号一为数据账号,系统自动切换数据库中的对应数据账号为副号一;当用户在c地使用数据流量,则归属地为c地的副号二为数据账号,系统自动切换数据库中的对应数据账号为副号二。

优选地,所述数据账号还可以由用户手动切换,此时,在图1所示本发明实施例方案涉及的运行环境的系统结构基础上,还需增加三个模块(如图2):接入模块10、soap模块11(简单对象访问协议simpleobjectaccessprotocol)和业务控制点scp12。

所述接入模块10,用于接收用户指令,并将接收到的指令转发至scp12,实现用户与scp12的交互。具体地,接入模块10目前主要包括ussd(unstructuredsupplementaryservicedata非结构化补充数据业务)和手机应用app两种方式。用户通过查询,切换等交互式操作访问scp系统,实现管理业务数据账号。

所述soap模块11,用于在手机app应用和scp12间传递信息。具体地,soap模块11通过soap协议,在手机app应用和scp12之间传递信息,提供查询和切换等操作。对于切换操作,消息内容务必携带切换号码(dataaccount)。

所述scp12,负责数据账号切换逻辑控制,并下发切换通知消息至dcc系统14,调整计费账号。具体地,scp12访问和操作数据库13,实现对数据账号切换逻辑控制。

接入模块10、soap模块11和scp12与图1所示系统的连接关系为(如图2):当接入模块为ussd时,接入模块直接与scp12交互;当接入模块为手机app应用方式时,接入模块通过soap模块与scp12交互;由scp12和数据库13、dcc系统14交互。

用户在接入模块输入查询或者切换数据账号指令,若scp接收到查询指令,则根据查询指令发送相关信息;若scp接收到切换数据账号指令,则参照图4,执行如下步骤:

步骤71、在流程开始时,scp判断用户主号状态是否正常,(如是否欠费)如果正常,则执行步骤72,否则,返回结束。

步骤72、查询该用户是否存在副号,如果存在,则执行步骤73,否则,返回结束。

步骤73、以ussd为例,有两种快捷方式,如果是输入*accesscode*msisdn#,msisdn为携带号码,则选择方式1,进入步骤74;如果是输入*accesscode#,不携带号码,则选择方式2,进入步骤75;如果输入其他,则返回结束。

步骤74、判断携带号码是否有效,如果有效,则进入步骤75进行切换数据账号的操作,否则,返回结束。

步骤75、scp执行切换数据账户动作,包括访问数据库,执行调用存储过程,下发切换通知消息给dcc系统等操作。

最后,流程结束。

dcc系统接收到实时计费上报网元发来的会话初始消息ccr-i时,会根据解析该ccr-i消息获得的用户号码调用数据库中的对应数据账号,在进行相应判断操作后,将用户号码以及该对应数据账号作为付费号码存储在当前会话中,方便之后接收ccr-u或ccr-t可直接在当前会话中调用付费号码进行判断与/或替换操作,也方便dcc系统在收到切换通知时,根据用户号码调用会话。

dcc系统在接收到ccr消息时,根据该ccr消息的类型可判断付费号码的存储位置。获取存储于数据库或者会话中的付费号码,判断付费号码与用户号码是否相同。如上所述,用户号码是当前使用数据流量的号码,付费号码是默认或用户指定的扣费号码,若用户号码和付费号码一致,则当前耗费数据流量的用户号码同时也是扣费的号码;若用户号码与付费号码不一致,则需根据一定规则选择扣费的号码,一般而言,这种情况下都是选择付费号码作为扣费的号码。

步骤s30,若付费号码与用户号码不同,则将所述ccr消息中的用户号码替换成付费号码,并将用户号码替换后的新的ccr消息转发至在线计费系统ocs。

判断付费号码与用户号码是否相同,若付费号码与用户号码相同,则无需替换,直接将所述ccr消息根据一定路由规则转发至ocs。若付费号码与用户号码不同,则应该将所述ccr消息中的用户号码替换成付费号码。因为不管付费号码是系统默认的号码,还是用户预先设置的号码,又或者是用户切换后的号码,都是符合用户意图的或者根据用户实际情况作出的有利于用户的选择。通过将用户号码替换成付费号码,可以将实际扣费的号码按用户意图或有利于用户的方向设置,如此可以提升用户体验,有利于一卡多号业务的推广。在用付费号码替换掉所述ccr消息中的用户号码后,将该新的ccr消息按路由规则转发至ocs系统进行计费。

其中,有关路由规则,具体地,步骤s30还包括:

步骤s31,将ccr消息中的diameter信控协议代理dccproxy接口机的归属域替换成ocs的归属域;

步骤s32,将ccr消息中实时计费上报网元的设备标识和设备归属域替换成dccproxy接口机的设备标识和设备归属域,并增加一个包含实时计费上报网元设备标识的属性值对avp后,将该ccr消息转发至ocs。

diameter协议由一个头以及跟随的一个或多个属性值对avp(attribute-value-pairs)组成。一个avp包含一个头和用来封装特定协议的数据(例如,路由信息),以及认证、授权或计费信息。

其中发起端设备标识original-host(即发送dcc协议消息的设备的标识,其中dcc协议消息包括ccr和cca)和发起端设备归属域original-realmavps(即发送dcc协议消息的设备的所在域)是任何diameter消息都必须携带的,用来标识消息的源地址。本实施例中,从实时计费上报网元发过来的ccr消息中包含实时计费上报网元的设备标识和设备归属域,dcc系统在转发消息时,需将来自实时计费上报网元的ccr消息中的发起端设备标识和发起端设备归属域替换成dccproxy接口机的设备标识和设备归属域,即将实时计费上报网元的设备标识和设备归属域替换成dccproxy接口机的设备标识和设备归属域,以向ocs表明该消息来自dcc系统。因为该ccr消息是发送至ocs,因此dcc系统需把ccr消息中的dcc系统的归属域即目的端设备归属域destination-realm(接收dcc协议消息的设备的所在域)改为ocs的归属域。此外,还需增加一个包含实时计费上报网元设备标识的avp,标识该ccr消息的初始来源。

通过对ccr消息按照路由规则进行修改,使得ccr消息符合diameter协议对消息的格式要求,使该ccr消息顺利被ocs系统接收,进而顺利计费。

在本实施例中,dcc系统在接收到来自实时计费上报网元的ccr消息后,需判断ccr消息携带的用户号码(即请求扣费号码)与付费号码是否相同,在用户号码与付费号码不同时,将用户号码替换成付费号码。实现了用户对于实际计费号码的管理,使得实际计费号码可以根据用户实际需求由用户手动切换或者按有利于用户实际情况的一定规则切换,当用户漫游到有不同计费策略与规则的非归属地区(即拜访地)网络时,可使用该拜访地的号码进行计费,可以节省数据流量的漫游花费,提高用户使用一卡多号业务的积极性。此外,dcc系统每次接收到来自实时计费上报网元的ccr消息,均需执行上述判断及切换操作,以防实时计费上报网元没有学习功能,无法根据前面的操作自行更改ccr消息中的请求扣费号码;以防用户切换了数据业务计费数据账号后,用户号码没有及时变更,或用户号码没有及时判断替换的情况,使得ocs在进行数据计费时,从dcc系统获得的计费账号一定是付费号码。提高了数据业务切换账号计费的准确性。

进一步的,参照图5,基于上一实施例,本发明数据业务切换账号计费方法第二实施例中,所述数据业务切换账号计费方法还包括:

步骤s40,若检测到ccr消息发送至ocs,设置第一时长,等待ocs响应;

步骤s50,若第一时长内接收到ocs基于接收的ccr消息返回的信用控制应答cca消息,则释放第一时长,透传cca消息至实时计费上报网元;

步骤s60,若第一时长内未接收到ocs基于ccr消息返回的cca消息,则发送请求失败信息至实时计费上报网元,释放第一时长并清理本次会话。

dcc系统判断ccr消息携带的用户号码与付费号码是否相同,若前述用户号码与付费号码相同,执行下一步的转发准备操作;若前述用户号码与付费号码不相同,则在将用户号码替换成付费号码后,执行下一步的转发准备操作。所述转发准备操作包括:按照路由规则修改dcc消息,组装消息体。其中,dcc系统需遵循如下路由规则:对于dcc协议消息中origin-host和origin-realm两个字段,转发ccr时,需要替换为dccproxy接口机的发起端设备标识和发起端设备归属域,destination-realm根据ocs侧域名填写,此外,还需要增加一个avp路由记录route-record标识实时计费上报网元的发起端设备标识。完成转发准备操作后,即可将准备操作完成后的ccr消息发送至ocs,当dcc系统检测到ccr消息发送至ocs时,设置定时第一时长,等待ocs侧响应返回消息。

若在第一时长内,dcc系统收到ocs侧返回的cca响应消息,则释放定时第一时长。随后,按照路由规则修改dcc消息,并转发响应消息cca至实时计费上报网元。此处需将cca消息中origin-host和origin-realm两个字段,替换为dccproxy的设备标识和设备归属域。

若在第一时长内,dcc系统没有收到ocs侧返回的cca响应消息,则该任务超时,进入超时流程,返回请求失败信息至实时计费上报网元,并释放第一时长,清理本次会话。

本实施例通过在第一实施例的判断或判断加替换操作基础上,进一步确定了dcc系统转发ccr消息至ocs,在第一时长内接收cca消息,再将该cca消息转发至实时计费上报网元,完成了组成会话的小对话单元(如图5步骤1-4)。使得计费流程顺利进行。而若dcc系统在第一时长内没有接收到cca消息,则通过超时清理流程,可避免因各种原因收不到ocs侧的cca响应消息时,dcc系统持续处于等待状态,浪费网络资源。可避免整个计费进程陷入死锁状态,促进整个计费流程的顺利进行。

进一步的,如图5,本发明数据业务切换账号计费方法第三实施例中,所述步骤s10还包括:

步骤s11,接收实时计费上报网元发送的ccr消息,确定该ccr消息的消息类型,所述消息类型包括会话初始消息ccr-i、会话更新消息ccr-u和会话终止消息ccr-t;

步骤s12,若第一时长内接收到ocs基于接收的ccr-i或ccr-u消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,并设置第二时长,等待实时计费上报网元发送新的ccr消息;

步骤s13,若第一时长内接收到ocs基于接收的ccr-t消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元,终止会话。

如图5所示为一个完整会话,整个会话由数个小对话组成。实时计费上报网元发送一个ccr消息至dcc系统,dcc系统将该ccr消息转发至ocs,ocs基于该ccr消息发送一个cca消息给dcc系统,dcc系统再将该cca消息转发给实时计费上报网元(详细过程见步骤s10的说明)。上述发送与转发即一个小对话(如图5步骤1至4),接下来就是小对话循环的过程(如图5)。

在接收到实时计费上报网元发送的ccr消息时,就要判断该消息所属类型,ccr消息可分为ccr-i、ccr-u、ccr-t。不管是哪种类型的ccr消息,dcc系统都需转发该ccr消息,设置第一时长,等待接收ocs基于该ccr消息回复的cca消息。

若dcc系统在第一时长内接收到ocs基于ccr-i或ccr-u消息返回的cca消息,则释放第一时长,透传前述cca消息至实时计费上报网元,并根据前述cca消息所给的时间配额设置第二时长,第二时长应该不小于该时间配额,最好为大于该时间配额固定值。若第二时长内接收到实时计费上报网元发送的ccr消息,则继续上述判断或判断加替换操作;若第二时长内未接收到实时计费上报网元发送的ccr消息,则该任务超时,进入超时流程,返回请求失败信息至实时计费上报网元,并释放第二时长,清理本次会话。

若第一时长内接收到ocs基于接收的ccr-t消息返回的cca消息,则释放第一时长,透传cca消息至实时计费上报网元后,直接终止会话。

本实施例通过判断ccr消息的类型,确定跳出计费会话的条件:当dcc系统接收的ccr消息为ccr-t时,应在将ocs基于接收的ccr-t消息返回的cca消息透传至实时计费上报网元后,终止会话。而如果dcc系统接收的ccr消息为ccr-i或ccr-i时,应当设置第二时长,等待实时计费上报网元发送下一个ccr消息。确定会话继续进行和跳出会话的条件,使得会话满足条件时结束,避免会话永远进行,占用网关网元等资源,浪费网络资源。

进一步的,如图6,本发明数据业务切换账号计费方法第四实施例中,所述步骤s20中获取付费号码的步骤可包括:

步骤s21,根据前述ccr消息判断该ccr消息是否为会话初始消息ccr-i;

步骤s22,若该ccr消息为ccr-i,则根据ccr消息中的用户号码获取数据库中的对应数据账号,该对应数据账号为付费号码;

步骤s23,若该ccr消息不为ccr-i,则获取保存在当前会话中的付费号码。

在dcc系统接收到ccr消息后,解析该ccr消息获取其携带的用户号码,并判断该消息是否为ccr-i,若该消息为ccr-i,则根据该ccr-i携带的用户号码调用存储过程查询数据库,获取对应数据账号(实际付费号码),并将该对应数据账号作为付费号码和用户号码存入会话中,以备后续ccr-u和ccr-t判断或修改替换操作。若该ccr消息不为ccr-i,可直接获取保存在当前会话中的付费号码。

本实施例通过区分ccr消息的类别,确定付费号码的获得途径。确保不管实时计费上报网元发送的是ccr-i还是ccr-u或是ccr-t,dcc系统均可获得付费号码,使得后续用户号码与付费号码的判断和替换操作顺利进行。

进一步地,步骤s22包括:

步骤s221,根据ccr消息中的用户号码调用存储过程查询数据库;

步骤s222,若调用返回对应数据账号,则该对应数据账号为付费号码;

步骤s223,若调用返回错误码,则流程结束。

其中,根据ccr消息中的用户号码调用存储过程查询数据库,具体调用过程为:将用户号码作为入参之一调用存储过程查询数据库,存储过程判断场景存在如下几种情况:

判定用户号码为主号,若用户设置过主号切换为副号,且副号状态正常,返回副号。

判定用户号码为主号,若用户没有设置过主号切换副号,且主号状态正常,直接返回主号。

判定用户号码为副号,用户设置过副号切换主号,且主号状态正常,返回主号。

判定用户号码为副号,用户没有设置过副号切换主号,且副号状态正常,返回副号。

其他情形,返回错误。

因此,若根据ccr消息中的用户号码调用数据库返回对应数据账号,该对应数据账号可能为主号或副号,将该对应数据账号作为付费号码存入当前会话。若前述调用返回错误,即主号或者副号状态不正常或数据库故障无法返回数据账号,则调用失败,由dcc系统回复实时计费上报网元消息cca错误码,流程结束。

通过确定成功调用当前要设置的对应数据账号和调用失败两种状态下dcc系统的进一步操作,确保dcc系统及时准确地获取付费号码,也使得实时计费上报网元可根据会话失败而进行下一步操作,确保整个流程不因调用失败而停滞,减少网络资源浪费。

进一步的,如图7,本发明数据业务切换账号计费方法第五实施例中,所述数据业务切换账号计费方法还包括:

步骤s70,接收来自scp的数据业务切换通知,根据数据业务切换通知中的切换号码查询用户号码对应的所有当前会话;

步骤s80,在所有当前会话里发送asr消息至实时计费上报网元,等待实时计费上报网元返回asa消息和ccr-t消息,以终止当前会话。

scp下发切换通知消息给dcc系统,dcc系统在接收到来自scp的数据业务切换通知时(如图7步骤11),获取数据业务切换通知中的切换号码,根据切换号码与用户号码的对应关系,在dcc系统提供的记录用户号码与当前会话对应关系的表(如hash表)中查找到用户所有活跃会话id即当前会话id(session-id),再通过session-id找到对应会话。例如,切换号码为主号a,主号a对应用户号码a和b(b为副号),根据a或者b在hash表中查找到所有当前会话。在所有当前会话中发送中断会话请求asr消息给实时计费上报网元,切断当前用户号码的会话。设置定时第三时长,并等待中断会话应答asa消息返回,同时,也等待ccr-t的请求上报,进而终止会话。

本实施例通过dcc系统接收数据业务切换账号的通知,终止当前用户号码的活跃会话,进而使得在会话过程中接收到数据账号切换通知时,dcc系统可以尽快做出反应,实现计费过程中付费号码的切换。

可选地,如图5和图8,本发明数据业务切换账号计费方法第六实施例中,所述数据业务切换账号计费方法包括:

步骤1、收到来自实时计费上报网元的ccr-i请求消息,dcc系统首先解析ccr-i获取用户号码,并根据该用户号码调用数据库以获取当前要设置的对应数据账号。若调用返回对应数据账号,则判断用户号码与对应数据账号是否相同,如果二者不相同,需要将ccr-i消息中的用户号码替换成对应数据账号,如果二者相同,不用替换,并将对应数据账号作为付费号码和用户号码存入当前会话中。dcc系统将用户号码和与用户号码对应的当前会话制成对应列表(可以是hash表)。然后,进入步骤2;

如果前述调用返回错误码或前述数据库操作失败,如因为数据库出现故障无法响应或系统繁忙导致超时等,则由dcc系统回复实时计费上报网元消息cca错误码,流程结束。

步骤2、按照路由规则修改dcc消息(即ccr-i消息),并组装消息体,转发消息ccr-i给ocs。并设置定时第一时长(下文称t1),等待ocs侧响应返回;

步骤3、ocs接收到ccr-i消息后,基于该ccr-i消息返回cca-i响应消息至dcc系统,若dcc系统在定时t1内收到该cca-i响应消息,则释放定时t1,同时解析该cca-i响应消息获取时间配额,并设置会话定时第二时长(下文称t2)。具体地,可通过该cca-i响应消息得知是按时间计费还是按非时间计费,不管是按时间计费还是按非时间计费,ocs都将按照计费账号账户余额分配时间配额,t2取值为:时间配额+m(m为预设固定时间,如10s)。若dcc系统在定时t1内未收到cca-i响应消息,则进入超时流程,直接返回失败信息至实时计费上报网元,并释放定时t1、清理会话;

步骤4、按照路由规则修改dcc消息,将响应消息cca-i透传至实时计费上报网元,同时解析cca-i获取校验码rc,若rc为错误码(错误码为处于预设区间的任一值,如rc=3xxx~6xxx以3开头的四位数到以6开头的四位数),则流程结束;若rc不为错误码,不在错误码区间(如rc=2xxx以2开头的四位数),则继续等待实时计费上报网元侧ccr-u或ccr-t的请求消息上报;

步骤5、若dcc系统在定时t2内收到实时计费上报网元发送的ccr-u请求消息,首先释放定时器t2,然后判断ccr-u携带的用户号码和保存在当前会话中的付费号码是否相同,若不同,则将ccr-u中的用户号码替换成付费号码,进入步骤6;若dcc系统在定时t2内没有收到实时计费上报网元发送的ccr-u或ccr-t请求消息,则进入超时流程,直接返回失败信息至实时计费上报网元,并释放定时t2、清理会话。

步骤6、按照路由规则修改dcc消息,并组装消息体,转发消息ccr-u给ocs。并设置定时t1,等待ocs侧响应返回;

步骤7、若dcc系统在定时t1内收到cca-u响应消息,则释放定时t1,同时解析该cca-u响应消息获取时间配额,并设置会话定时t2。然后进入步骤8。

若dcc系统在定时t1内未收到cca-u响应消息,则进入超时流程,直接返回失败信息至实时计费上报网元,并释放定时t1、清理会话。

步骤8、按照路由规则修改dcc消息,将响应消息cca-u透传至实时计费上报网元,同时解析cca-u获取校验码rc,若rc为错误码,则流程结束;若rc不为错误码,则继续等待实时计费上报网元侧ccr-u或ccr-t的请求消息上报;

步骤9~步骤10、同上步骤5~步骤8的操作,有n(n>=0)次可能上报ccr-u/返回cca-u,不再赘述;

步骤11、若dcc系统在定时t2内收到实时计费上报网元侧ccr-t请求消息,首先释放定时器t2,然后,判断ccr-t携带的用户号码和保存在当前会话中的付费号码是否相同,若不同,则将ccr-t中的用户号码替换成付费号码。然后,进入步骤12;若dcc系统在定时t2内没有收到实时计费上报网元侧ccr-t请求消息,则直接返回失败信息至实时计费上报网元,并释放定时t2、清理会话。

步骤12、按照路由规则修改dcc消息,并组装消息体,转发消息ccr-t给ocs。并设置定时t1,等待ocs侧响应返回;

步骤13、dcc系统收到ocs侧返回的cca-t响应消息,释放定时t1;

步骤14、按照路由规则修改dcc消息,并透传响应消息cca-t给实时计费上报网元。至此,该计费流程结束。

上述流程中,若某个定时任务超时,则进入超时流程,直接返回失败信息至实时计费上报网元,并释放定时、清理会话。

在上述流程中,若dcc系统收到ocs发送的终止流程应答sta或者rar(re-auth-request重新鉴权/授权请求)或者中断会话请求asr,直接转发至实时计费上报网元。若收到sta,则转发该消息后流程结束;若收到实时计费上报网元发送的终止流程应答请求str或者raa(re-auth-answer重新鉴权/授权响应)或者中断会话响应asa,则转发该消息至ocs。

本实施例为发生在dcc系统阶段的整个计费流程,通过dcc系统对dcc消息一系列的判断、替换、修改、转发等操作,使得dcc消息被成功转发至ocs,且保证每次被实际计费的为预置的付费号码,保证实际计费的号码符合用户意图或者用户利益,减少用户数据业务的漫游花费,提升用户体验。

可选地,如图7,本发明数据业务切换账号计费方法第七实施例中,步骤1至步骤10同第六实施例如图5所示的步骤1~步骤10,操作和流程完全一样,不再赘述,在会话过程中,dcc系统接收到scp发送的数据业务账号切换通知(如图7的步骤11),dcc系统将执行如下步骤:

步骤12、根据数据业务账号切换通知中的切换号码查询用户号码对应的所有当前会话;

步骤13、下发asr请求消息给实时计费上报网元,切断当前用户号码的会话。设置定时第三时长(下文称t3),并等待asa消息返回,同时,也等待ccr-t的请求上报;

步骤14、收到asa响应返回,释放定时t3,并清理会话;

步骤15~步骤18,同第六实施例如图5所示的步骤11~步骤14,操作和流程完全一样,不再赘述。

本实施例为用户实施了切换数据库中数据账号即付费号码操作或者系统自动根据预设规则自动切换的情形,在会话过程中,dcc系统接收到切换通知,立即响应切断当前会话,可使得实际计费号码按照用户实际情况实时变化,减少系统迟延不及时更换实际计费号码给用户带来的损失,也实现了用户对数据业务计费账号的管理,提升用户体验,有利于提高用户使用一卡多号的积极性。

此外,本发明实施例还提出一种存储介质,所述存储介质上存储有数据业务切换账号计费程序,所述数据业务切换账号计费程序被处理器执行时实现如上述实施例所述步骤,大体一致,不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台系统设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1