/** * @desc The ETSI MEC ISG MEC012 Radio Network Information API described using OpenAPI * @see http://www.etsi.org/deliver/etsi_gs/MEC/001_099/012/01.01.01_60/gs_mec012v010101p.pdf */ module RnisAPI_TypesAndValues { // LibCommon import from LibCommon_BasicTypesAndValues all; /** * @desc * @member type_ A URI reference according to IETF RFC 3986 that identifies the problem type * @member title A short, human-readable summary of the problem type * @member status The HTTP status code for this occurrence of the problem * @member detail A human-readable explanation specific to this occurrence of the problem * @member instance A URI reference that identifies the specific occurrence of the problem */ type record ProblemDetails { universal charstring type_, universal charstring title, UInt32 status, universal charstring detail, universal charstring instance } with { variant (type_) "name as 'type'"; } /** * @desc * @member timeStamp * @member appInsId * @member ecgi */ type record PlmnInfo { TimeStamp timeStamp optional, AppInsId appInsId, Ecgi ecgi } type unsiversal charstring AppInsId; /** * @desc * @member timeStamp * @member appInsId * @member requestId * @member cellUserInfo */ type record RabInfo { TimeStamp timeStamp optional, AppInsId appInsId, RequestId requestId, CellUserInfo cellUserInfo optional } /** * @desc * @member timeStamp * @member appInsId * @member ecgi */ type record S1BearerInfo { TimeStamp timeStamp optional, S1UeInfo s1UeInfo } /** * @desc The information on users per cell * @member tempUeId * @member associateId * @member ecgi * @member s1BearerInfoDetailed */ type record S1UeInfo { TempUeId tempUeId, AssociateId associateId optional, Ecgi ecgi, S1BearerInfoDetailed s1BearerInfoDetailed } /** * @desc Information on UEs in the specific cell * @member erabId The element that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 * @member s1EnbInfo * @member sGwInfo */ type record S1BearerInfoDetailed { ErabId erabId, S1EnbInfo s1EnbInfo, SGwInfo sGwInfo } type UInt32 ErabId; /** * @desc * @member mmec MMEC as defined in ETSI TS 136 413 * @member mtmsi M-TMSI as defined in ETSI TS 136 413 */ type record TempUeId { Mmec mmec, Mtmsi mtmsi } type universal charstring Mmec; type universal charstring Mtmsi; /** * @desc * @member ipAddress eNB transport layer address of this S1 bearer * @member tunnelId eNB GTP-U TEID of this S1 bearer */ type record S1EnbInfo { universal charstring ipAddress, universal charstring tunnelId } /** * @desc * @member ipAddress SGW transport layer address of this S1 bearer * @member tunnelId SGW GTP-U TEID of this S1 bearer */ type record SGwInfo { universal charstring ipAddress, universal charstring tunnelId } /** * @desc * @member seconds The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC * @member nanoSeconds The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC */ type record TimeStamp { UInt32 seconds, UInt32 nanoSeconds } /** * @desc Unique identifier for the mobile edge application instance", */ type universal charstring AppInsId; /** * @desc Unique identifier allocated by the Mobile Edge application for the Information request */ type universal charstring RequestId; /** * @desc The information on users per cell * @member ecgi * @member ueInfo */ type record CellUserInfo { Ecgi ecgi, UeInfo ueInfo } /** * @desc E-UTRAN CelI Global Identifier as defined in 3GPP TS 36.413 * @member ecgi * @member ueInfo */ type record Ecgi { Plmn plmn, CellId cellId } /** * @desc E-UTRAN CelI Global Identifier as defined in 3GPP TS 36.413 * @member mcc The Mobile Country Code part of PLMN Identity as defined in 3GPP TS 36.413 * @member mnc The Mobile Network Code part of PLMN Identity as defined in 3GPP TS 36.413 */ type record Plmn { universal charstring mcc, universal charstring mnc } /** * @desc The E-UTRAN Cell Identity as a bit string (size (28)), as defined in 3GPP TS 36.413 */ type record of octetstring CellId; /** * @desc Information on UEs in the specific cell * @member associateId * @member erabInfo */ type record UeInfo { record of AssociateId associateId optional, record of ErabQosParameters erabInfo } /** * @desc Information on UEs in the specific cell * @member type Numeric value (0-255) corresponding to specified type of identifier * @member value Value for the identifier */ type record AssociateId { AssociateId_type type_, UInt32 value_ } with { variant (type_) "name as 'type'"; variant (value_) "name as 'value'"; } /** * @desc Numeric value (0-255) corresponding to specified type of identifier */ type enumerated AssociateId_type { "RESERVED", "UE_IPV4_ADDRESS", "UE_IPV6_ADDRESS", "NATED_IP_ADDRESS", "GTP_TEID" } /** * @desc * @member qci QoS Class Identifier as defined in TS 23.401 * @member qci_information */ type record ErabQosParameters { UInt32 qci, QosInformation qci_information } /** * @desc * @member erabGbrDl This IE indicates the maximum downlink E-RAB Bit Rate as defined in TS 23.401 for this bearer * @member erabGbrUl This IE indicates the maximum uplink E-RAB Bit Rate as defined in TS 23.401 for this bearer * @member erabGbrDl This IE indicates the guaranteed downlink E-RAB Bit Rate as defined in TS 23.401 for this bearer * @member erabMbrUl This IE indicates the guaranteed uplink E-RAB Bit Rate as defined in TS 23.401 for this bearer */ type enumerated QosInformation { "erabGbrDl", "erabGbrUl", "erabMbrDl", "erabMbrUl" } /** * @desc * @member _links * @member subscription */ type record SubscriptionLinkList { Link _links, Subscription subscription optional { } /** * @desc * @member callbackReference * @member filterCriteria * @member expiryDeadline */ type record MeasRepUeSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssocTri filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record MeasRepUeSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocTri filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member eventType * @member s1BearerSubscriptionCriteria * @member expiryDeadline */ type record S1BearerSubscriptionPost { CallbackReference callbackReference, EventType eventType, S1BearerSubscriptionCriteria s1BearerSubscriptionCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member s1BearerSubscriptionCriteria * @member expiryDeadline */ type record S1BearerSubscription { CallbackReference callbackReference, Link _links, S1BearerSubscriptionCriteria s1BearerSubscriptionCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria */ type record RabEstSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocQci filterCriteria } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record RabEstSubscriptionPost { CallbackReference callbackReference, Link _links, FilterCriteriaAssocQci filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record RabModSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocQci filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record RabModSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssocQci filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record RabRelSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocQci filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member filterCriteria * @member expiryDeadline */ type record RabRelSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssocQci filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record CaReConfSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssoc filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member filterCriteria * @member expiryDeadline */ type record CaReConfSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssoc filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member filterCriteria * @member expiryDeadline */ type record CellChangeSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssocHo filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record CellChangeSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocHo filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member filterCriteria * @member expiryDeadline */ type record MeasTaSubscriptionPost { CallbackReference callbackReference, FilterCriteriaAssoc filterCriteria, TimeStamp expiryDeadline optional } /** * @desc * @member callbackReference * @member _links * @member filterCriteria * @member expiryDeadline */ type record MeasTaSubscription { CallbackReference callbackReference, Link _links, FilterCriteriaAssocHo filterCriteria, TimeStamp expiryDeadline optional } /** * @desc URL selected by the Mobile Edge application to receive notifications on the subscribed RNIS information */ type universal charstring CallbackReference; /** * @desc List of hyperlinks related to the resource * @member self_ URI referring to a resource */ type record Link { LinkType self_, } with { variant (self_) "name as 'self'"; } /** * @desc URI referring to a resource */ type universal charstring LinkType; /** * @desc A link to a subscription * @member * @member */ type record Subscription { LinkType href, SubscriptionType subscriptionType } /** * @desc Numeric value corresponding to specified type of subscription * @member * @member * @member * @member * @member * @member */ type enumerated SubscriptionType { "RESERVED", "CELL_CHANGE", "RAB_ESTABLISHMENT", "RAB_MODIFICATION", "RAB_RELEASE", "MEAS_REPORT_UE", "MEAS_TIMING_ADVANCE", "CA_RECONF", "S1_BEARE" } /** * @desc List of filtering criteria for the subscription * @member appInsId * @member associateId * @member plmn * @member cellId */ type record FilterCriteriaAssoc { AppInsId appInsId, AssociateId associateId, Plmn plmn, CellId cellId } /** * @desc List of filtering criteria for the subscription * @member appInsId * @member associateId * @member plmn * @member cellId * @member qci */ type record FilterCriteriaAssocQci { AppInsId appInsId, AssociateId associateId, Plmn plmn, CellId cellId, Qci qci } /** * @desc List of filtering criteria for the subscription * @member appInsId * @member associateId * @member plmn * @member cellId * @member hoStatus */ type record FilterCriteriaAssocHo { AppInsId appInsId, AssociateId associateId, Plmn plmn, CellId cellId, HoStatus hoStatus } /** * @desc List of filtering criteria for the subscription * @member appInsId * @member associateId * @member plmn * @member cellId * @member trigger */ type record FilterCriteriaAssocHo { AppInsId appInsId, AssociateId associateId, Plmn plmn, CellId cellId, Trigger trigger_ } with { variant (trigger_) "name as 'trigger'"; } /** * @desc List of filtering criteria for the subscription * @member appInsId * @member associateId * @member plmn * @member cellId * @member trigger */ type record FilterCriteriaAssocHo { AssociateId associateId, Plmn plmn, CellId cellId, Trigger trigger_ } with { variant (trigger_) "name as 'trigger'"; } /** * @desc Description of the subscribed to event */ type enumerated HoStatus { "RESERVED", "IN_PREPARATION", "IN_EXECUTION", "COMPLETED", "REJECTED", "CANCELLED" } /** * @desc Description of the subscribed event */ type enumerated EventType { "RESERVED", "S1_BEARER_ESTABLISH", "S1_BEARER_MODIFY", "S1_BEARER_RELEASE" } /** * @desc Unique identifier for the mobile edge application instance */ type enumerated Trigger { "NOT_AVAILABLE", "PERIODICAL_REPORT_STRONGEST_CELLS", "PERIODICAL_REPORT_STRONGEST_CELLS_FOR_SON", "PERIODICAL_REPORT_CGI", "EVENT_A1", "EVENT_A2", "EVENT_A3", "EVENT_A4", "EVENT_A5", "EVENT_A6", "EVENT_B1", "EVENT_B2", "EVENT_C1", "EVENT_C2", "EVENT_W1", "EVENT_W2", "EVENT_W3" } } with { encode "JSON" } // End of module RnisAPI_TypesAndValues