-
Notifications
You must be signed in to change notification settings - Fork 97
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Feature: Support Converged Charging (#94)
* support converged charging * flow status * add pdu level charging urr to default data path * fix: only onlince charging need to request unit * fix: release charging session in all pdu session release case * fix: don't send charging request for non-charging urr * rm untested code * update openapi/pfcp hash * add nil & error checking * update go.sum * add more error checking * fix test fail * fix ci error * add comment for addPduLevelChargingRuleToFlow() * add comment & fix potential synchronization issues * fix typo & linter error * handle assigned when IP in ipFilterRule is assigned * fix typo * fix typo & set default value of RequestedUnit * fix NewSMContext * fix: remove SwapSrcAndDst() * fix: UL, DL flow description should be same * remove SMF's default data path to reduce redundant PDRs * fix: testcase's ip.dst should not be any * style: fix naked return * update util's hash * fix: duplicated URRs in PDR * fix: Volume Threshold IE should be added to PFCP Session Modification Request Update URR to prevent the flow rule be blocked * remove SMContext.UrrIDGenerator * fix: MBQE, MAQE's URR * comment out these variable: N3N6, N3N9, N9N6 * remove FlowDescription judgement * remove unused code and add comments * Add back defalt urr rule * Fix: Add GetTokenCtx() in CHF Selection * Remove unused comments --------- Co-authored-by: roy19991013 <[email protected]> Co-authored-by: Tim Liu <[email protected]> Co-authored-by: Ian Chen <[email protected]> Co-authored-by: Ian Chen <[email protected]> Co-authored-by: ianchen0119 <[email protected]> Co-authored-by: brianchennn <[email protected]>
- Loading branch information
1 parent
9600d25
commit 5aab128
Showing
27 changed files
with
1,377 additions
and
154 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package context | ||
|
||
import ( | ||
"github.com/free5gc/openapi/models" | ||
) | ||
|
||
type ChargingLevel uint8 | ||
|
||
// For a rating group that is pdu session charging level, all volume in a pdu session will be charged | ||
// For a rating group that is flow charging level (or Rating group level (32.255)), | ||
// only volume in a flow will be charged | ||
const ( | ||
PduSessionCharging ChargingLevel = iota | ||
FlowCharging | ||
) | ||
|
||
type RequestType uint8 | ||
|
||
// For each charging event, it will have a corresponding charging request type, see 32.255 Table 5.2.1.4.1 | ||
const ( | ||
CHARGING_INIT RequestType = iota | ||
CHARGING_UPDATE | ||
CHARGING_RELEASE | ||
) | ||
|
||
type ChargingInfo struct { | ||
ChargingMethod models.QuotaManagementIndicator | ||
VolumeLimitExpiryTimer *Timer | ||
EventLimitExpiryTimer *Timer | ||
ChargingLevel ChargingLevel | ||
RatingGroup int32 | ||
UpfId string | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.