一種預付費計費實現方法
2023-10-08 04:56:34 1
專利名稱:一種預付費計費實現方法
技術領域:
本發明涉及數據通信領域,特別是指一種預付費計費實現方法。
背景技術:
在目前的數據通信中,對於用戶上網認證與計費一般都採用Radius協議(參見RFC2865、RFC2866),具體組網如圖1所示。Radius協議規定在用戶認證通過後,Radius Server需要把用戶的上網可用時長下發給設備,以便設備可以及時切斷用戶,具體流程如圖2所示。但是在目前的遠程撥號認證用戶伺服器Radius Server(Remote Authentication Dial In User Service)的實現中,由於各種各樣靈活計費策略的存在,如時間段折扣、基本費、費用封頂等,對可用時長的預算一般都比較粗略。
在目前的網上計費中,一般對用戶都有各種各樣的優惠策略,例如時間段折扣、基本費和費用封頂等,但是現有的計費軟體對於用戶上網可用時長的預算都是不精確的,一般都是粗略預算。其中一種方案就是取一個最貴的費率例如對於費用封頂(封頂前是一個正常的費率,封頂後費率就為0),如果用戶上網前費用還沒達到封頂金額,則預算時長時就一直按正常費率進行預算,不考慮在預算時長內是否已經跨過了費用封頂點。這樣就會導致用戶明明已經開始免費了,卻還是被趕下線的情況。
另外,目前業界還有另一種計費方法,這種方法就是不預算,直接下發一個最大的可用時長例如對於基本費用戶,就是先讓用戶用,然後在每月的固定點統一收費。這樣就會造成用戶欠費,並且也不適合預付費用戶採用基本費的計費策略。
故,目前業界的數據通信領域的計費方案均不能進行用戶上網時長的精確計費。
發明內容
有鑑於此,本發明的目的在於提供一種預付費計費實現方法,能夠實現對用戶上網可用時長的精確計算。
一種預付費計費實現方法,包括如下步驟a、首先在資料庫中建立含折扣點信息的計費策略信息及用戶預付費信息;b、網絡接入伺服器接受客戶上網請求,認證通過後,遠程撥號認證用戶伺服器置上網可用時長為初始位,依上述用戶預付費信息確定預算金額;c、取當前時間對應的折扣點;d、計算當前時間至該折扣點時間段的費用,判斷該費用是否小於預算金額,如是,則計算所述預算金額同該費用的差額,並將預算金額重置為該差額,在上網可用時長中加入該折扣點時間同當前時間的時間差,並將當前時間重置為該折扣點時間,進入步驟c;如否,則計算預算金額除以當前費率所得值,將該值加入上網可用時長;e、遠程撥號認證用戶伺服器將所述上網可用時長發送給網絡接入伺服器。
所述計費策略信息中還包括基本費信息、上次扣基本費時間信息、下次扣基本費時間信息、基本費時間間隔,則步驟c前進一步包括c1、判斷是否需要扣基本費,如不需要,進入步驟d;如果需要,則判斷用戶餘額是否大於基本費,如大於則將用戶餘額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間;步驟d前進一步包括d1、判斷折扣點是否扣基本費點,如是,判斷預算金額是否大於基本費,如大於則將預算金額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間,置當前時間為扣基本費點;如不大於,則進入步驟e。
所述計費策略信息中包括封頂金額,則步驟c1中進一步包括將基本費作為累積金額;步驟d1進一步包括將基本費作為累積金額;步驟d進一步包括判斷累積金額是否大於封頂金額,如大於,則將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為折扣點,進入步驟c;如果累積金額不大於封頂金額,則計算當前時間至當前時間對應的折扣點時間段的費用,判斷該費用同累計金額之和是否大於封頂金額;如上述費用同累計金額之和是否大於封頂金額,則判斷預算金額是否大於該費用,如果預算金額大於該費用,則累積金額同該費用相加,並將累積金額重置為相加所得後的值,求預算金額同該費用的差值,並重置該差值為預算金額,將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為該折扣點;否則,則求出封頂金額同累積金額之間的差值,判斷預算金額是否大於該差值,如果預算金額大於該差值,則累積金額同該差值相加,並將累積金額重置為相加所得後的值,求預算金額同該差值的差值,並重置該差值為預算金額,將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為該折扣點;如果累積金額大於封頂金額,將預算金額除以當前費率所得值加入上網可用時長。
本發明所述的技術方案,當依據用戶信息,不需要考慮基本費與費用封頂情況時,通過設置折扣點信息,在每個折扣點確定可用時長,並累加,直至預算完用戶的全部預付費用,進而確定準確的用戶可上網時長。
當需要考慮扣基本費時,在用戶認證通過後,即進行是否扣基本費的檢查,且在每個折扣點也進行是否需要扣基本費的檢查,進而使本發明可以用於含基本費這種預付費方式的精確計費。
同樣,Radius Server也可以首先判斷用戶本月的基本費是否扣除,如果需要扣基本費則進一步判斷用戶餘額是否足以扣除其本費,如餘額不足,則置用戶可用時長為0,否則,則扣除用戶基本費;如果已扣除了本月的基本費用,則需要依據用戶的帳戶餘額、用戶的累計金額及相關的計費策略信息對用戶的可用時長進行進一步的預算,如果用戶的累計金額已達到費用的封頂金額,則用戶本月的可用時長將不會受到限制,如用戶的累積金額尚未達到封頂金額,則依據用戶的帳戶餘額及相關的計費策略計算用戶的可用時長。這樣可以實現用戶上網時間精確預算(考慮基本費與費用封頂),從而同時維護用戶與運營商的利益。同時,可以使預付費用戶也可以享受到基本費的優惠。
圖1所示為現有技術組網結構示意圖;圖2所示為現有技術寬帶接入計費流程示意圖;圖3所示為本發明所述的不同時間段費率不同的計費方式流程示意圖;圖4所示為本發明所述的計費包括基本費和費用封頂方式流程示意圖。
具體實施例方式
為使本發明的技術方案更加清楚,下面結合附圖再對本發明再做進一步詳細說明。
本發明的思路是在資料庫中建立相關的信息,包括計費策略信息、用戶扣費信息、及用戶的本月的上網費用信息;當用戶接入上網,Radius Server接受到用戶的認證請求後開始進行用戶時長預算,首先判斷用戶本月的基本費是否扣除,如果需要扣基本費則進一步判斷用戶餘額是否足以扣除其本費,如餘額不足,則置用戶可用時長為0,否則,則扣除用戶基本費,並置累計金額=基本費,更新用戶的上、下次扣基本費時間;如果已扣除了本月的基本費用,則需要依據用戶的帳戶餘額、用戶的累計金額及相關的計費策略信息對用戶的可用時長進行進一步的預算;更具體的,如果用戶的累計金額已達到費用的封頂金額,則用戶本月的可用時長將不會受到限制,如用戶的累積金額尚未達到封頂金額,則依據用戶的帳戶餘額及相關的計費策略計算用戶的可用時長;遠程撥號認證用戶伺服器將所述上網可用時長發送給網絡接入伺服器。
具體實施例如下首先在資料庫中建立計費策略信息主要包括本計費策略對應的每月的扣基本費時間,例如1號凌晨1點,也就是在每月的1號的凌晨1點扣用戶的基本費;封頂金額,也就是如果用戶本月的費用達到了這個封頂金額,以後就免費使用,當然在下個月的扣基本費點時又會重新清零累計;計量費率及打折情況,例如計量費率為2分錢/1秒,折扣情況為21:00:00-23:59:59打5折。
其次要在資料庫中建立用戶的基本費的扣費情況主要包括上次扣基本費時間,下次扣基本費時間,例如用戶在2003年的8月1號凌晨1點扣了基本費,則用戶的上次扣基本費時間就為「2003年8月1號凌晨1點」,下次扣基本費時間就為「2003年9月1號凌晨1點」,也就是用戶在9月1號凌晨1點後才開始扣9月的基本費。
再次要在資料庫中建立用戶的本月的上網費用情況累計金額,也就是指用戶本月消費的金額等。
用戶接入上網,Radius Server接受到用戶的認證請求後開始進行預算。
當依據用戶的預付費計算類型為僅涉及不同時間段費率不同的計費方式時,不需要考慮基本費與費用封頂情況,則通過設置折扣點信息,在每個折扣點確定可用時長,並累加,直至預算完用戶的全部預付費用,進而確定準確的用戶可上網時長,具體實現流程如圖3所示(1)首先在資料庫中建立含折扣點信息的計費策略信息及用戶預付費信息;(2)網絡接入伺服器接受客戶上網請求,認證通過後,遠程撥號認證用戶伺服器置上網可用時長為初始位,依上述用戶預付費信息確定預算金額;(3)取當前時間對應的折扣點;(4)計算當前時間至該折扣點時間段的費用,判斷該費用是否小於預算金額,如是,則計算所述預算金額同該費用的差額,並將預算金額重置為該差額,在上網可用時長中加入該折扣點時間同當前時間的時間差,並將當前時間重置為該折扣點時間,進入步驟c;如否,則計算預算金額除以當前費率所得值,將該值加入上網可用時長;(5)遠程撥號認證用戶伺服器將所述上網可用時長發送給網絡接入伺服器。
當用戶的預付費業務類型為包括扣基本費計費時,在用戶認證通過後,即進行是否扣基本費的檢查,且在每個折扣點也進行是否需要扣基本費的檢查,進而使本發明可以用於含基本費這種預付費方式的精確計費,具體流程如下(1)首先在資料庫中建立含折扣點信息、基本費信息、上次扣基本費時間信息、下次扣基本費時間信息、基本費時間間隔的計費策略信息及用戶預付費信息;(2)網絡接入伺服器接受客戶上網請求,認證通過後,遠程撥號認證用戶伺服器置上網可用時長為初始位,依上述用戶預付費信息確定預算金額;(3)判斷是否需要扣基本費,如不需要,進入步驟d;如果需要,則判斷用戶餘額是否大於基本費,如大於則將用戶餘額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間;
(4)取當前時間對應的折扣點;(5)判斷折扣點是否扣基本費點,如是,判斷預算金額是否大於基本費,如大於則將預算金額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間,置當前時間為扣基本費點;如不大於,則進入步驟g;(6)如果折扣點不是扣基本費點,則計算當前時間至該折扣點時間段的費用,判斷該費用是否小於預算金額,如是,則計算所述預算金額同該費用的差額,並將預算金額重置為該差額,在上網可用時長中加入該折扣點時間同當前時間的時間差,並將當前時間重置為該折扣點時間,進入步驟d;如否,則計算預算金額除以當前費率所得值,將該值加入上網可用時長;(7)遠程撥號認證用戶伺服器將所述上網可用時長發送給網絡接入伺服器。
圖4所示為當預付費用戶的計費類型為包括基本費和費用封頂計費方式時,應用本發明的預付費用戶精確計費的流程圖如下(1)首先判斷用戶本月的基本費是否扣除,也就是拿當前時間與用戶的下次扣基本費時間進行比較,如果前者>=後者,則說明本月的基本費還沒有扣除,需要扣基本費;反之則說明不需要扣基本費。
(1.1)如果需要扣基本費a.如果用戶餘額小於基本費則直接置預算結果也就是可用時長為0,預算結束。
b.如果用戶餘額大於等於基本費則置預算金額=用戶餘額-基本費;置用戶的累計金額為0,由於本月已經扣了基本費,所以再加上基本費,也就是置累計金額=基本費;更新用戶的上、下次扣基本費時間,轉(2)。
(1.2)如果不需要扣基本費則置預算金額=用戶餘額,轉(2)。
(2)置用戶可用時長usabletime=0。
(3)求取當前時間對應的下個時間折扣點時間折扣點也就是用戶費率發生切換的點,例如用戶上網在每天21:00:00-23:59:59打5折,如果當前時間為上午9:00:00,則折扣點就是21:00:00,如果當前時間為晚上22:00:00,則折扣點就為第二天的0:00:00。下次扣基本費點也算一個特殊的折扣點。
(4)對摺扣點進行判斷(4.1)如果折扣點為扣基本費點,則比較當前預算金額與基本費的大小a、如果基本費大於預算金額,則返回用戶可用時長為usabletime,預算結束。
b、如果基本費小於等於預算金額,則置預算金額=預算金額-基本費;累計金額=基本費;當前時間=扣基本費點;上次扣基本費點=扣基本費點;下次扣基本費點=扣基本費點+1月;轉(3)(4.2)如果折扣點為一般的費率切換點a、如果用戶累計金額大於等於封頂金額,則置Usabletime=usabletime+(折扣點-當前時間);當前時間=折扣點;轉3)b、如果用戶累計金額小於封頂金額,計算(當前時間,折扣點)的費用Fee;(b.1)如果(累計金額+Fee)>=封頂金額,Fee=封頂金額-累計金額;If(預算金額>=Fee){Usabletime=usabletime+(折扣點-當前時間);當前時間=折扣點;累計金額=封頂金額;
預算金額=預算金額-Fee;轉(3)}Else{Useabletime=usabletime+(預算金額/計量費率);預算結束;}(b.2)如果(累計金額+Fee)<封頂金額If(預算金額>=Fee){Usabletime=usabletime+(折扣點-當前時間);當前時間=折扣點;累計金額=累計金額+Fee;預算金額=預算金額-Fee;轉3)}Else{Useabletime=usabletime+(預算金額/計量費率);預算結束;}以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種預付費計費實現方法,其特徵在於,包括如下步驟a、首先在資料庫中建立含折扣點信息的計費策略信息及用戶預付費信息;b、網絡接入伺服器接受客戶上網請求,認證通過後,遠程撥號認證用戶伺服器置上網可用時長為初始位,依上述用戶預付費信息確定預算金額;c、取當前時間對應的折扣點;d、計算當前時間至該折扣點時間段的費用,判斷該費用是否小於預算金額,如是,則計算所述預算金額同該費用的差額,並將預算金額重置為該差額,在上網可用時長中加入該折扣點時間同當前時間的時間差,並將當前時間重置為該折扣點時間,進入步驟c;如否,則計算預算金額除以當前費率所得值,將該值加入上網可用時長;e、遠程撥號認證用戶伺服器將所述上網可用時長發送給網絡接入伺服器。
2.如權利要求1所述的方法,其特徵在於所述計費策略信息中還包括基本費信息、上次扣基本費時間信息、下次扣基本費時間信息、基本費時間間隔,則步驟c前進一步包括c1、判斷是否需要扣基本費,如不需要,進入步驟d;如果需要,則判斷用戶餘額是否大於基本費,如大於則將用戶餘額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間;步驟d前進一步包括d1、判斷折扣點是否扣基本費點,如是,判斷預算金額是否大於基本費,如大於則將預算金額同基本費之間的差額作為預算金額,將上次扣基本費時間重置為下次扣基本費時間,然後將下次扣基本費時間重置為該時間加基本費時間間隔所得的時間,置當前時間為扣基本費點;如不大於,則進入步驟e。
3.如權利要求2所述的方法,其特徵在於所述計費策略信息中包括封頂金額,則步驟c1中進一步包括將基本費作為累積金額;步驟d1進一步包括將基本費作為累積金額;步驟d進一步包括判斷累積金額是否大於封頂金額,如大於,則將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為折扣點,進入步驟c;如果累積金額不大於封頂金額,則計算當前時間至當前時間對應的折扣點時間段的費用,判斷該費用同累計金額之和是否大於封頂金額;如上述費用同累計金額之和是否大於封頂金額,則判斷預算金額是否大於該費用,如果預算金額大於該費用,則累積金額同該費用相加,並將累積金額重置為相加所得後的值,求預算金額同該費用的差值,並重置該差值為預算金額,將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為該折扣點;否則,則求出封頂金額同累積金額之間的差值,判斷預算金額是否大於該差值,如果預算金額大於該差值,則累積金額同該差值相加,並將累積金額重置為相加所得後的值,求預算金額同該差值的差值,並重置該差值為預算金額,將折扣點時間同當前時間的差額加入上網可用時長,將當前時間重置為該折扣點;如果累積金額大於封頂金額,將預算金額除以當前費率所得值加入上網可用時長。
全文摘要
本發明提供了一種預付費計費實現方法,其先建立相關計費策略、用戶扣費及用戶的當月上網費用等信息;當用戶上網時,Radius Server根據上述信息進行用戶時長預算,首先判斷用戶本月的基本費是否扣除,如果需要扣基本費則進一步判斷用戶餘額是否足以扣除其本費,如餘額不足,則置用戶可用時長為0,否則,則扣除用戶基本費;如果已扣除了本月的基本費用,則需要依據用戶的帳戶餘額、用戶的累計金額及相關的計費策略信息對用戶的可用時長進行進一步的預算,如果用戶的累計金額已達到費用的封頂金額,則用戶本月的可用時長將不會受到限制,如用戶的累積金額尚未達到封頂金額,則依據用戶的帳戶餘額及相關的計費策略計算用戶的可用時長。
文檔編號H04L12/14GK1716991SQ20041006949
公開日2006年1月4日 申請日期2004年6月28日 優先權日2004年6月28日
發明者黨沛, 鄭志鵬 申請人:華為技術有限公司