processor

package
v1.2.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 26, 2024 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CONTEXT_NOT_FOUND = "CONTEXT_NOT_FOUND"
)

Variables

This section is empty.

Functions

func ActivateUPFSession

func ActivateUPFSession(
	smContext *smf_context.SMContext,
	notifyUeHander func(*smf_context.SMContext, bool),
)

ActivateUPFSession send all datapaths to UPFs and send result to UE It returns after all PFCP response have been returned or timed out, and before sending N1N2MessageTransfer request if it is needed.

func EstablishRANTunnelInfo

func EstablishRANTunnelInfo(smContext *context.SMContext)

func EstablishULCL

func EstablishULCL(smContext *context.SMContext)

func HandlePDUSessionEstablishmentRequest

func HandlePDUSessionEstablishmentRequest(
	smCtx *smf_context.SMContext, req *nasMessage.PDUSessionEstablishmentRequest,
) error

func HandlePDUSessionReleaseRequest

func HandlePDUSessionReleaseRequest(
	smCtx *smf_context.SMContext, req *nasMessage.PDUSessionReleaseRequest,
)

func ModHandler

func ModHandler(smContext *smf_context.SMContext, success bool)

func QueryReport

func QueryReport(smContext *smf_context.SMContext, upf *smf_context.UPF,
	urrs []*smf_context.URR, reportResaon models.TriggerType,
)

func SendUpPathChgEventExposureNotification

func SendUpPathChgEventExposureNotification(
	uri string, notification *models.NsmfEventExposureNotification,
)
func UpdatePSA2DownLink(smContext *context.SMContext)
func UpdateRANAndIUPFUpLink(smContext *context.SMContext)

Types

type GSMError

type GSMError struct {
	GSMCause uint8
}

func (*GSMError) Error

func (e *GSMError) Error() string

type PDUSessionInfo

type PDUSessionInfo struct {
	Supi         string
	PDUSessionID string
	Dnn          string
	Sst          string
	Sd           string
	AnType       models.AccessType
	PDUAddress   string
	SessionRule  models.SessionRule
	UpCnxState   models.UpCnxState
	Tunnel       context.UPTunnel
}

type PFCPState

type PFCPState struct {
	// contains filtered or unexported fields
}

type Processor

type Processor struct {
	ProcessorSmf
}

func NewProcessor

func NewProcessor(smf ProcessorSmf) (*Processor, error)

func (*Processor) AddPDUSessionAnchorAndULCL

func (p *Processor) AddPDUSessionAnchorAndULCL(smContext *context.SMContext)

func (*Processor) CreateChargingSession

func (p *Processor) CreateChargingSession(smContext *smf_context.SMContext)

func (*Processor) EstHandler

func (p *Processor) EstHandler(isDone <-chan struct{},
	smContext *smf_context.SMContext, success bool,
)

func (*Processor) EstablishPSA2

func (p *Processor) EstablishPSA2(smContext *context.SMContext)

func (*Processor) HandleChargingNotification

func (p *Processor) HandleChargingNotification(
	c *gin.Context,
	chargingNotifyRequest models.ChargingNotifyRequest,
	smContextRef string,
)

func (*Processor) HandleGetSMFUserPlaneInfo

func (p *Processor) HandleGetSMFUserPlaneInfo(c *gin.Context)

func (*Processor) HandleOAMGetUEPDUSessionInfo

func (p *Processor) HandleOAMGetUEPDUSessionInfo(c *gin.Context, smContextRef string)

func (*Processor) HandlePDUSessionModificationRequest

func (p *Processor) HandlePDUSessionModificationRequest(
	smCtx *smf_context.SMContext, req *nasMessage.PDUSessionModificationRequest,
) (*nas.Message, error)

func (*Processor) HandlePDUSessionSMContextCreate

func (p *Processor) HandlePDUSessionSMContextCreate(
	c *gin.Context,
	request models.PostSmContextsRequest,
	isDone <-chan struct{},
)

func (*Processor) HandlePDUSessionSMContextLocalRelease

func (p *Processor) HandlePDUSessionSMContextLocalRelease(
	smContext *smf_context.SMContext, createData *models.SmContextCreateData,
)

func (*Processor) HandlePDUSessionSMContextRelease

func (p *Processor) HandlePDUSessionSMContextRelease(
	c *gin.Context,
	body models.ReleaseSmContextRequest,
	smContextRef string,
)

func (*Processor) HandlePDUSessionSMContextUpdate

func (p *Processor) HandlePDUSessionSMContextUpdate(
	c *gin.Context,
	body models.UpdateSmContextRequest,
	smContextRef string,
)

func (*Processor) HandleSMPolicyUpdateNotify

func (p *Processor) HandleSMPolicyUpdateNotify(
	c *gin.Context,
	request models.SmPolicyNotification,
	smContextRef string,
)

func (*Processor) ReleaseAllResourcesOfUPF

func (p *Processor) ReleaseAllResourcesOfUPF(upf *smf_context.UPF)

func (*Processor) ReleaseChargingSession

func (p *Processor) ReleaseChargingSession(smContext *smf_context.SMContext)

func (*Processor) RemoveSMContextFromAllNF

func (p *Processor) RemoveSMContextFromAllNF(smContext *smf_context.SMContext, sendNotification bool)

func (*Processor) ReportUsageAndUpdateQuota

func (p *Processor) ReportUsageAndUpdateQuota(smContext *smf_context.SMContext)

Report usage report to the CHF and update the URR with the charging information in the charging response

func (*Processor) SendReleaseNotification

func (p *Processor) SendReleaseNotification(smContext *smf_context.SMContext)

func (*Processor) ToBeAssociatedWithUPF

func (p *Processor) ToBeAssociatedWithUPF(ctx context.Context, upf *smf_context.UPF)

func (*Processor) UpdateChargingSession

func (p *Processor) UpdateChargingSession(
	smContext *smf_context.SMContext, urrList []*smf_context.URR, trigger models.Trigger,
)

type ProcessorSmf

type ProcessorSmf interface {
	app.App

	Consumer() *consumer.Consumer
}

type SendPfcpResult

type SendPfcpResult struct {
	Status smf_context.PFCPSessionResponseStatus
	RcvMsg *pfcpUdp.Message
	Err    error
}

func ReleaseTunnel

func ReleaseTunnel(smContext *smf_context.SMContext) []SendPfcpResult

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL