blob: 894cd9b554490f0623fe854841bfa823e112b3c0 [file] [log] [blame]
/******************************************************************************
* Copyright (c) 2000-2019 Ericsson AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
*
* Contributors:
* Gabor Szalai - initial implementation and initial documentation
******************************************************************************/
//
// File: TS29518_Namf_EventExposure.ttcn
// Description: Type definitions for 3GPP TS29518
// Prodnr: CNL 113 890
///////////////////////////////////////////////
module TS29518_Namf_EventExposure {
import from TS29571_CommonData all
external function f_enc_AmfCreateEventSubscription(in AmfCreateEventSubscription pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_AmfCreateEventSubscription(in octetstring stream, out AmfCreateEventSubscription pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
external function f_enc_AmfCreatedEventSubscription(in AmfCreatedEventSubscription pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_AmfCreatedEventSubscription(in octetstring stream, out AmfCreatedEventSubscription pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
external function f_enc_AmfEventNotification(in AmfEventNotification pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_AmfEventNotification(in octetstring stream, out AmfEventNotification pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
external function f_enc_AmfUpdateEventSubscriptionItem(in AmfUpdateEventSubscriptionItem pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_AmfUpdateEventSubscriptionItem(in octetstring stream, out AmfUpdateEventSubscriptionItem pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
external function f_enc_AmfUpdatedEventSubscription(in AmfUpdatedEventSubscription pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_AmfUpdatedEventSubscription(in octetstring stream, out AmfUpdatedEventSubscription pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
type set AmfEventSubscription {
set of AmfEvent eventList optional,
TS29571_CommonData.Uri eventNotifyUri,
charstring notifyCorrelationId,
TS29571_CommonData.NfInstanceId nfId,
TS29571_CommonData.Uri subsChangeNotifyUri optional,
charstring subsChangeNotifyCorrelationId optional,
TS29571_CommonData.Supi supi optional,
TS29571_CommonData.GroupId groupId optional,
TS29571_CommonData.Gpsi gpsi optional,
TS29571_CommonData.Pei pei optional,
boolean anyUE optional,
AmfEventMode options optional
}
type set AmfEvent {
AmfEventType type_,
boolean immediateFlag optional,
set of AmfEventArea areaList optional,
set of LocationFilter locationFilterList optional,
set of SubscribedDataFilter subscribedDataFilterList optional
} with {
variant (type_) "name as 'type'"
}
type set AmfEventNotification {
charstring subscriptionId,
charstring notifyCorrelationId,
set of AmfEventReport reportList optional
}
type set AmfEventReport {
AmfEventType type_,
AmfEventState state,
TS29571_CommonData.DateTime timeStamp,
boolean anyUe optional,
TS29571_CommonData.Supi supi optional,
set of AmfEventArea areaList optional,
TS29571_CommonData.Gpsi gpsi optional,
TS29571_CommonData.Pei pei optional,
TS29571_CommonData.UserLocation location optional,
TS29571_CommonData.TimeZone timezone optional,
set of TS29571_CommonData.AccessType accessTypeList optional,
set of RmInfo rmInfoList optional,
set of CmInfo cmInfoList optional,
UeReachability reachability optional,
SubscribedData subscribedData optional,
CommunicationFailure commFailure optional,
integer numberOfUes optional
} with {
variant (type_) "name as 'type'"
}
type set AmfEventMode {
AmfEventTrigger trigger_,
integer maxReports optional,
TS29571_CommonData.DateTime expiry optional
} with {
variant (trigger_) "name as 'trigger'"
}
type set AmfEventState {
boolean active,
integer remainReports optional,
TS29571_CommonData.DurationSec remainDuration optional
}
type set RmInfo {
RmState rmState,
TS29571_CommonData.AccessType accessType
}
type set CmInfo {
CmState cmState,
TS29571_CommonData.AccessType accessType
}
type set SubscribedData {
Sari sari optional,
RfspIndex rfspIndex optional
}
type set CommunicationFailure {
charstring nasReleaseCode optional,
TS29571_CommonData.NgApCause ranReleaseCode optional
}
type set AmfCreateEventSubscription {
AmfEventSubscription subscription,
TS29571_CommonData.SupportedFeatures supportedFeatures optional
}
type set AmfCreatedEventSubscription {
AmfEventSubscription subscription,
set of AmfEventReport reportList optional,
TS29571_CommonData.SupportedFeatures supportedFeatures optional
}
type set AmfUpdateEventSubscriptionItem_item {
enumerated { add, remove, replace_} op,
charstring path, // (pattern "\/events\/[0-]$|\/events\/[1-9][0-9]*$"),
AmfEvent value_ optional
} with {
variant (op) "text 'replace_' as 'replace'"
variant (value_) "name as 'value'"
}
type set of AmfUpdateEventSubscriptionItem_item AmfUpdateEventSubscriptionItem
type set AmfUpdatedEventSubscription {
AmfEventSubscription subscription
}
type set AmfEventArea {
TS29571_CommonData.PresenceInfo presenceInfo optional,
LadnInfo ladnInfo optional
}
type set LadnInfo {
charstring ladn,
TS29571_CommonData.PresenceState presence optional
}
type charstring FivegGuti
type TS29571_CommonData.Bytes Sari
type integer RfspIndex
type enumerated AmfEventType_enum { LOCATION_REPORT, PRESENCE_IN_AOI_REPORT, TIMEZONE_REPORT, ACCESS_TYPE_REPORT, REGISTRATION_STATE_REPORT, CONNECTIVITY_STATE_REPORT, REACHABILITY_REPORT, SUBSCRIBED_DATA_REPORT, COMMIUNICATION_FAILURE_REPORT, UES_IN_AREA_REPORT}
type union AmfEventType {
AmfEventType_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated AmfEventTrigger_enum { ONE_TIME, CONTINUOUS}
type union AmfEventTrigger {
AmfEventTrigger_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated LocationFilter_enum { TAI, CELL_ID, N3IWF, UE_IP, UDP_PORT}
type union LocationFilter {
LocationFilter_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated SubscribedDataFilter_enum { SARI, RFSP_INDEX}
type union SubscribedDataFilter {
SubscribedDataFilter_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated UeReachability_enum { UNREACHABLE, REACHABLE, REGULATORY_ONLY}
type union UeReachability {
UeReachability_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated RmState_enum { REGISTERED, DEREGISTERED}
type union RmState {
RmState_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated CmState_enum { IDLE, CONNECTED}
type union CmState {
CmState_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
} with {
encode "JSON"
}