Documentation
¶
Index ¶
- type PduSession
- type Processor
- func (p *Processor) AMFStatusChangeSubscribeModifyProcedure(subscriptionID string, ...) (*models.AmfCommunicationSubscriptionData, *models.ProblemDetails)
- func (p *Processor) AMFStatusChangeSubscribeProcedure(subscriptionDataReq models.AmfCommunicationSubscriptionData) (subscriptionDataRsp models.AmfCommunicationSubscriptionData, ...)
- func (p *Processor) AMFStatusChangeUnSubscribeProcedure(subscriptionID string) (problemDetails *models.ProblemDetails)
- func (p *Processor) AmPolicyControlUpdateNotifyTerminateProcedure(polAssoID string, ...) *models.ProblemDetails
- func (p *Processor) AmPolicyControlUpdateNotifyUpdateProcedure(polAssoID string, policyUpdate models.PcfAmPolicyControlPolicyUpdate) *models.ProblemDetails
- func (p *Processor) AssignEbiDataProcedure(ueContextID string, assignEbiData models.AssignEbiData) (*models.AssignedEbiData, *models.AssignEbiError, *models.ProblemDetails)
- func (p *Processor) CreateAMFEventSubscriptionProcedure(createEventSubscription models.AmfCreateEventSubscription) (*models.AmfCreatedEventSubscription, *models.ProblemDetails)
- func (p *Processor) CreateUEContextProcedure(ueContextID string, createUeContextRequest models.CreateUeContextRequest) (*models.CreateUeContextResponse201, *models.CreateUeContextResponse403)
- func (p *Processor) DeleteAMFEventSubscriptionProcedure(subscriptionID string) *models.ProblemDetails
- func (p *Processor) HandleAMFStatusChangeSubscribeModify(c *gin.Context, updateSubscriptionData models.AmfCommunicationSubscriptionData)
- func (p *Processor) HandleAMFStatusChangeSubscribeRequest(c *gin.Context, subscriptionDataReq models.AmfCommunicationSubscriptionData)
- func (p *Processor) HandleAMFStatusChangeUnSubscribeRequest(c *gin.Context)
- func (p *Processor) HandleAmPolicyControlUpdateNotifyTerminate(c *gin.Context, ...)
- func (p *Processor) HandleAmPolicyControlUpdateNotifyUpdate(c *gin.Context, policyUpdate models.PcfAmPolicyControlPolicyUpdate)
- func (p *Processor) HandleAssignEbiDataRequest(c *gin.Context, assignEbiData models.AssignEbiData)
- func (p *Processor) HandleCreateAMFEventSubscription(c *gin.Context, createEventSubscription models.AmfCreateEventSubscription)
- func (p *Processor) HandleCreateUEContextRequest(c *gin.Context, createUeContextRequest models.CreateUeContextRequest)
- func (p *Processor) HandleDeleteAMFEventSubscription(c *gin.Context)
- func (p *Processor) HandleMobiRegUe(ue *context.AmfUe, ueContextTransferRspData *models.UeContextTransferRspData, ...)
- func (p *Processor) HandleModifyAMFEventSubscription(c *gin.Context, modifySubscriptionRequest models.ModifySubscriptionRequest)
- func (p *Processor) HandleN1MessageNotify(c *gin.Context, n1MessageNotify models.N1MessageNotifyRequest)
- func (p *Processor) HandleN1N2MessageSubscribeRequest(c *gin.Context, ...)
- func (p *Processor) HandleN1N2MessageTransferRequest(c *gin.Context, n1n2MessageTransferRequest models.N1N2MessageTransferRequest)
- func (p *Processor) HandleN1N2MessageTransferStatusRequest(c *gin.Context)
- func (p *Processor) HandleN1N2MessageUnSubscribeRequest(c *gin.Context)
- func (p *Processor) HandleOAMRegisteredUEContext(c *gin.Context)
- func (p *Processor) HandleProvideDomainSelectionInfoRequest(c *gin.Context)
- func (p *Processor) HandleProvideLocationInfoRequest(c *gin.Context, requestLocInfo models.RequestLocInfo)
- func (p *Processor) HandleRegistrationStatusUpdateRequest(c *gin.Context, ueRegStatusUpdateReqData models.UeRegStatusUpdateReqData)
- func (p *Processor) HandleReleaseUEContextRequest(c *gin.Context, ueContextRelease models.UeContextRelease)
- func (p *Processor) HandleSmContextStatusNotify(c *gin.Context, ...)
- func (p *Processor) HandleUEContextTransferRequest(c *gin.Context, ueContextTransferRequest models.UeContextTransferRequest)
- func (p *Processor) ModifyAMFEventSubscriptionProcedure(subscriptionID string, ...) (*models.AmfUpdatedEventSubscription, *models.ProblemDetails)
- func (p *Processor) N1MessageNotifyProcedure(n1MessageNotify models.N1MessageNotifyRequest) *models.ProblemDetails
- func (p *Processor) N1N2MessageSubscribeProcedure(ueContextID string, ...) (*models.UeN1N2InfoSubscriptionCreatedData, *models.ProblemDetails)
- func (p *Processor) N1N2MessageTransferProcedure(ueContextID string, reqUri string, ...) (n1n2MessageTransferRspData *models.N1N2MessageTransferRspData, ...)
- func (p *Processor) N1N2MessageTransferStatusProcedure(ueContextID string, reqUri string) (models.N1N2MessageTransferCause, *models.ProblemDetails)
- func (p *Processor) N1N2MessageUnSubscribeProcedure(ueContextID string, subscriptionID string) *models.ProblemDetails
- func (p *Processor) OAMRegisteredUEContextProcedure(supi string) (UEContexts, *models.ProblemDetails)
- func (p *Processor) ProvideDomainSelectionInfoProcedure(ueContextID string, infoClassQuery string, supportedFeaturesQuery string) (*models.UeContextInfo, *models.ProblemDetails)
- func (p *Processor) ProvideLocationInfoProcedure(requestLocInfo models.RequestLocInfo, ueContextID string) (*models.ProvideLocInfo, *models.ProblemDetails)
- func (p *Processor) RegistrationStatusUpdateProcedure(ueContextID string, ueRegStatusUpdateReqData models.UeRegStatusUpdateReqData) (*models.UeRegStatusUpdateRspData, *models.ProblemDetails)
- func (p *Processor) ReleaseUEContextProcedure(ueContextID string, ueContextRelease models.UeContextRelease) *models.ProblemDetails
- func (p *Processor) SmContextStatusNotifyProcedure(supi string, pduSessionID int32, ...) *models.ProblemDetails
- func (p *Processor) UEContextTransferProcedure(ueContextID string, ueContextTransferRequest models.UeContextTransferRequest) (*models.UeContextTransferResponse200, *models.ProblemDetails)
- type ProcessorAmf
- type UEContext
- type UEContexts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PduSession ¶
type Processor ¶
type Processor struct {
ProcessorAmf
}
func NewProcessor ¶
func NewProcessor(amf ProcessorAmf) (*Processor, error)
func (*Processor) AMFStatusChangeSubscribeModifyProcedure ¶
func (p *Processor) AMFStatusChangeSubscribeModifyProcedure(subscriptionID string, subscriptionData models.AmfCommunicationSubscriptionData) ( *models.AmfCommunicationSubscriptionData, *models.ProblemDetails, )
func (*Processor) AMFStatusChangeSubscribeProcedure ¶
func (p *Processor) AMFStatusChangeSubscribeProcedure(subscriptionDataReq models.AmfCommunicationSubscriptionData) ( subscriptionDataRsp models.AmfCommunicationSubscriptionData, locationHeader string, problemDetails *models.ProblemDetails, )
func (*Processor) AMFStatusChangeUnSubscribeProcedure ¶
func (p *Processor) AMFStatusChangeUnSubscribeProcedure(subscriptionID string) (problemDetails *models.ProblemDetails)
func (*Processor) AmPolicyControlUpdateNotifyTerminateProcedure ¶
func (p *Processor) AmPolicyControlUpdateNotifyTerminateProcedure(polAssoID string, terminationNotification models.PcfAmPolicyControlTerminationNotification, ) *models.ProblemDetails
func (*Processor) AmPolicyControlUpdateNotifyUpdateProcedure ¶
func (p *Processor) AmPolicyControlUpdateNotifyUpdateProcedure(polAssoID string, policyUpdate models.PcfAmPolicyControlPolicyUpdate, ) *models.ProblemDetails
func (*Processor) AssignEbiDataProcedure ¶
func (p *Processor) AssignEbiDataProcedure(ueContextID string, assignEbiData models.AssignEbiData) ( *models.AssignedEbiData, *models.AssignEbiError, *models.ProblemDetails, )
func (*Processor) CreateAMFEventSubscriptionProcedure ¶
func (p *Processor) CreateAMFEventSubscriptionProcedure(createEventSubscription models.AmfCreateEventSubscription) ( *models.AmfCreatedEventSubscription, *models.ProblemDetails, )
TODO: handle event filter
func (*Processor) CreateUEContextProcedure ¶
func (p *Processor) CreateUEContextProcedure(ueContextID string, createUeContextRequest models.CreateUeContextRequest) ( *models.CreateUeContextResponse201, *models.CreateUeContextResponse403, )
func (*Processor) DeleteAMFEventSubscriptionProcedure ¶
func (p *Processor) DeleteAMFEventSubscriptionProcedure(subscriptionID string) *models.ProblemDetails
func (*Processor) HandleAMFStatusChangeSubscribeModify ¶
func (p *Processor) HandleAMFStatusChangeSubscribeModify(c *gin.Context, updateSubscriptionData models.AmfCommunicationSubscriptionData, )
TS 29.518 5.2.2.5.1.3
func (*Processor) HandleAMFStatusChangeSubscribeRequest ¶
func (p *Processor) HandleAMFStatusChangeSubscribeRequest(c *gin.Context, subscriptionDataReq models.AmfCommunicationSubscriptionData, )
TS 29.518 5.2.2.5.1
func (*Processor) HandleAMFStatusChangeUnSubscribeRequest ¶
TS 29.518 5.2.2.5.2
func (*Processor) HandleAmPolicyControlUpdateNotifyTerminate ¶
func (p *Processor) HandleAmPolicyControlUpdateNotifyTerminate(c *gin.Context, terminationNotification models.PcfAmPolicyControlTerminationNotification, )
TS 29.507 4.2.4.3
func (*Processor) HandleAmPolicyControlUpdateNotifyUpdate ¶
func (p *Processor) HandleAmPolicyControlUpdateNotifyUpdate(c *gin.Context, policyUpdate models.PcfAmPolicyControlPolicyUpdate, )
func (*Processor) HandleAssignEbiDataRequest ¶
func (p *Processor) HandleAssignEbiDataRequest(c *gin.Context, assignEbiData models.AssignEbiData)
TS 29.518 5.2.2.6
func (*Processor) HandleCreateAMFEventSubscription ¶
func (p *Processor) HandleCreateAMFEventSubscription(c *gin.Context, createEventSubscription models.AmfCreateEventSubscription, )
func (*Processor) HandleCreateUEContextRequest ¶
func (p *Processor) HandleCreateUEContextRequest(c *gin.Context, createUeContextRequest models.CreateUeContextRequest)
TS 29.518 5.2.2.2.3
func (*Processor) HandleDeleteAMFEventSubscription ¶
func (*Processor) HandleMobiRegUe ¶
func (p *Processor) HandleMobiRegUe(ue *context.AmfUe, ueContextTransferRspData *models.UeContextTransferRspData, ueContextTransferResponse *models.UeContextTransferResponse200, )
func (*Processor) HandleModifyAMFEventSubscription ¶
func (p *Processor) HandleModifyAMFEventSubscription(c *gin.Context, modifySubscriptionRequest models.ModifySubscriptionRequest, )
func (*Processor) HandleN1MessageNotify ¶
func (p *Processor) HandleN1MessageNotify(c *gin.Context, n1MessageNotify models.N1MessageNotifyRequest)
TS 23.502 4.2.2.2.3 Registration with AMF re-allocation
func (*Processor) HandleN1N2MessageSubscribeRequest ¶
func (p *Processor) HandleN1N2MessageSubscribeRequest(c *gin.Context, ueN1N2InfoSubscriptionCreateData models.UeN1N2InfoSubscriptionCreateData, )
TS 29.518 5.2.2.3.3
func (*Processor) HandleN1N2MessageTransferRequest ¶
func (p *Processor) HandleN1N2MessageTransferRequest(c *gin.Context, n1n2MessageTransferRequest models.N1N2MessageTransferRequest, )
TS23502 4.2.3.3, 4.2.4.3, 4.3.2.2, 4.3.2.3, 4.3.3.2, 4.3.7
func (*Processor) HandleN1N2MessageTransferStatusRequest ¶
func (*Processor) HandleN1N2MessageUnSubscribeRequest ¶
func (*Processor) HandleOAMRegisteredUEContext ¶
func (*Processor) HandleProvideDomainSelectionInfoRequest ¶
func (*Processor) HandleProvideLocationInfoRequest ¶
func (p *Processor) HandleProvideLocationInfoRequest(c *gin.Context, requestLocInfo models.RequestLocInfo)
func (*Processor) HandleRegistrationStatusUpdateRequest ¶
func (p *Processor) HandleRegistrationStatusUpdateRequest(c *gin.Context, ueRegStatusUpdateReqData models.UeRegStatusUpdateReqData, )
TS 29.518 5.2.2.2.2
func (*Processor) HandleReleaseUEContextRequest ¶
func (p *Processor) HandleReleaseUEContextRequest(c *gin.Context, ueContextRelease models.UeContextRelease)
TS 29.518 5.2.2.2.4
func (*Processor) HandleSmContextStatusNotify ¶
func (p *Processor) HandleSmContextStatusNotify(c *gin.Context, smContextStatusNotification models.SmfPduSessionSmContextStatusNotification, )
func (*Processor) HandleUEContextTransferRequest ¶
func (p *Processor) HandleUEContextTransferRequest(c *gin.Context, ueContextTransferRequest models.UeContextTransferRequest, )
TS 29.518 5.2.2.2.1
func (*Processor) ModifyAMFEventSubscriptionProcedure ¶
func (p *Processor) ModifyAMFEventSubscriptionProcedure( subscriptionID string, modifySubscriptionRequest models.ModifySubscriptionRequest) ( *models.AmfUpdatedEventSubscription, *models.ProblemDetails, )
func (*Processor) N1MessageNotifyProcedure ¶
func (p *Processor) N1MessageNotifyProcedure(n1MessageNotify models.N1MessageNotifyRequest) *models.ProblemDetails
func (*Processor) N1N2MessageSubscribeProcedure ¶
func (p *Processor) N1N2MessageSubscribeProcedure(ueContextID string, ueN1N2InfoSubscriptionCreateData models.UeN1N2InfoSubscriptionCreateData) ( *models.UeN1N2InfoSubscriptionCreatedData, *models.ProblemDetails, )
func (*Processor) N1N2MessageTransferProcedure ¶
func (p *Processor) N1N2MessageTransferProcedure(ueContextID string, reqUri string, n1n2MessageTransferRequest models.N1N2MessageTransferRequest) ( n1n2MessageTransferRspData *models.N1N2MessageTransferRspData, locationHeader string, problemDetails *models.ProblemDetails, transferErr *models.N1N2MessageTransferError, )
There are 4 possible return value for this function:
- n1n2MessageTransferRspData: if AMF handle N1N2MessageTransfer Request successfully.
- locationHeader: if response status code is 202, then it will return a non-empty string location header for response
- problemDetails: if AMF reject the request due to application error, e.g. UE context not found.
- TransferErr: if AMF reject the request due to procedure error, e.g. UE has an ongoing procedure.
see TS 29.518 6.1.3.5.3.1 for more details.
func (*Processor) N1N2MessageTransferStatusProcedure ¶
func (p *Processor) N1N2MessageTransferStatusProcedure(ueContextID string, reqUri string) (models.N1N2MessageTransferCause, *models.ProblemDetails, )
func (*Processor) N1N2MessageUnSubscribeProcedure ¶
func (p *Processor) N1N2MessageUnSubscribeProcedure(ueContextID string, subscriptionID string) *models.ProblemDetails
func (*Processor) OAMRegisteredUEContextProcedure ¶
func (p *Processor) OAMRegisteredUEContextProcedure(supi string) (UEContexts, *models.ProblemDetails)
func (*Processor) ProvideDomainSelectionInfoProcedure ¶
func (p *Processor) ProvideDomainSelectionInfoProcedure(ueContextID string, infoClassQuery string, supportedFeaturesQuery string) ( *models.UeContextInfo, *models.ProblemDetails, )
func (*Processor) ProvideLocationInfoProcedure ¶
func (p *Processor) ProvideLocationInfoProcedure(requestLocInfo models.RequestLocInfo, ueContextID string) ( *models.ProvideLocInfo, *models.ProblemDetails, )
func (*Processor) RegistrationStatusUpdateProcedure ¶
func (p *Processor) RegistrationStatusUpdateProcedure(ueContextID string, ueRegStatusUpdateReqData models.UeRegStatusUpdateReqData) ( *models.UeRegStatusUpdateRspData, *models.ProblemDetails, )
func (*Processor) ReleaseUEContextProcedure ¶
func (p *Processor) ReleaseUEContextProcedure(ueContextID string, ueContextRelease models.UeContextRelease, ) *models.ProblemDetails
func (*Processor) SmContextStatusNotifyProcedure ¶
func (p *Processor) SmContextStatusNotifyProcedure(supi string, pduSessionID int32, smContextStatusNotification models.SmfPduSessionSmContextStatusNotification, ) *models.ProblemDetails
func (*Processor) UEContextTransferProcedure ¶
func (p *Processor) UEContextTransferProcedure(ueContextID string, ueContextTransferRequest models.UeContextTransferRequest) ( *models.UeContextTransferResponse200, *models.ProblemDetails, )
type UEContext ¶
type UEContext struct {
AccessType models.AccessType
Supi string
Guti string
/* Tai */
Mcc string
Mnc string
Tac string
/* PDU sessions */
PduSessions []PduSession
/*Connection state */
CmState models.CmState
}
type UEContexts ¶
type UEContexts []UEContext
Source Files
¶
Click to show internal directories.
Click to hide internal directories.