Documentation
¶
Index ¶
- func ConvertBitRateToKbps(bitRate string) (kBitRate float64, err error)
- func CreateAMPolicy(ctx context.Context, policyAssociationRequest models.PolicyAssociationRequest) (*models.PolicyAssociation, string, error)
- func CreateSMPolicy(ctx context.Context, request models.SmPolicyContextData) (*models.SmPolicyDecision, error)
- func DeleteAMPolicy(ctx context.Context, polAssoID string) error
- func DeleteSMPolicy(ctx context.Context, smPolicyID string) error
- func GetSMPolicyDnnData(data models.SmPolicyData, snssai *models.Snssai, dnn string) (*models.SmPolicyDnnData, error)
- func GetSmPolicyData(ctx context.Context, supi string) (*models.SmPolicyData, error)
- func SnssaiModelsToHex(snssai models.Snssai) string
- func Start(dbInstance *db.Database) error
- func UpdateAMPolicy(ctx context.Context, polAssoID string, ...) (*models.PolicyUpdate, error)
- type PCFContext
- type PccPolicy
- type PcfSubscriberPolicyData
- type SessionPolicy
- type UeAMPolicyData
- type UeContext
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertBitRateToKbps ¶
Convert bitRate string to float64 with uint Kbps
func CreateAMPolicy ¶
func CreateAMPolicy(ctx context.Context, policyAssociationRequest models.PolicyAssociationRequest) (*models.PolicyAssociation, string, error)
func CreateSMPolicy ¶
func CreateSMPolicy(ctx context.Context, request models.SmPolicyContextData) (*models.SmPolicyDecision, error)
func GetSMPolicyDnnData ¶
func GetSMPolicyDnnData(data models.SmPolicyData, snssai *models.Snssai, dnn string) (*models.SmPolicyDnnData, error)
GetSMPolicyDnnData returns SMPolicyDnnData derived from SmPolicy data which snssai and dnn match
func GetSmPolicyData ¶ added in v0.0.5
func SnssaiModelsToHex ¶
Convert Snssai form models to hexString(sst(2)+sd(6))
func UpdateAMPolicy ¶
func UpdateAMPolicy(ctx context.Context, polAssoID string, policyAssociationUpdateRequest models.PolicyAssociationUpdateRequest) (*models.PolicyUpdate, error)
Types ¶
type PCFContext ¶
type PCFContext struct { UePool sync.Map SessionRuleIDGenerator *idgenerator.IDGenerator QoSDataIDGenerator *idgenerator.IDGenerator DBInstance *db.Database }
func (*PCFContext) NewPCFUe ¶
func (c *PCFContext) NewPCFUe(Supi string) (*UeContext, error)
Allocate PCF Ue with supi and add to pcf Context and returns allocated ue
func (*PCFContext) PCFUeFindByPolicyID ¶ added in v0.0.12
func (c *PCFContext) PCFUeFindByPolicyID(PolicyID string) (*UeContext, error)
Find PcfUe which the policyId belongs to
type PcfSubscriberPolicyData ¶
type PcfSubscriberPolicyData struct { PccPolicy map[string]*PccPolicy // sst+sd is key Supi string }
func GetSubscriberPolicy ¶
func GetSubscriberPolicy(ctx context.Context, imsi string) (*PcfSubscriberPolicyData, error)
type SessionPolicy ¶
type SessionPolicy struct {
SessionRules map[string]*models.SessionRule
}
type UeAMPolicyData ¶
type UeAMPolicyData struct { AccessType models.AccessType ServingPlmn *models.PlmnID UserLoc *models.UserLocation Triggers []models.RequestTrigger Rfsp int32 }
type UeContext ¶
type UeContext struct { Supi string AMPolicyData map[string]*UeAMPolicyData // use PolAssoId(ue.Supi-numPolId) as key PolAssociationIDGenerator uint32 }
func (*UeContext) FindAMPolicy ¶
func (ue *UeContext) FindAMPolicy(anType models.AccessType, plmnID *models.PlmnID) *UeAMPolicyData
returns AM Policy which AccessType and plmnID match
func (*UeContext) NewUeAMPolicyData ¶
func (ue *UeContext) NewUeAMPolicyData(assolID string, req models.PolicyAssociationRequest) *UeAMPolicyData
Click to show internal directories.
Click to hide internal directories.