blob: 38f32d669c8c353a99380cdcc264a5a474959437 [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: TS29508_Nsmf_EventExposure.ttcn
// Description: Type definitions for 3GPP TS29508
///////////////////////////////////////////////
module TS29508_Nsmf_EventExposure {
import from TS29571_CommonData all
external function f_enc_Nsmf_EventExposure(in Nsmf_EventExposure pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_Nsmf_EventExposure(in octetstring stream, out Nsmf_EventExposure pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
external function f_enc_Nsmf_EventExposureNotification(in Nsmf_EventExposureNotification pdu) return octetstring
with { extension "prototype(convert) encode(JSON)" }
external function f_dec_Nsmf_EventExposureNotification(in octetstring stream, out Nsmf_EventExposureNotification pdu) return integer
with { extension "prototype(backtrack) decode(JSON)" }
type set Nsmf_EventExposure {
TS29571_CommonData.Supi supi optional,
TS29571_CommonData.Dnn dnn optional,
TS29571_CommonData.GroupId groupId optional,
TS29571_CommonData.PduSessionId pduSeId optional,
SubId subId optional,
charstring notifId,
TS29571_CommonData.Uri notifUri,
set of TS29571_CommonData.Ipv4Addr altNotifIpv4Addrs optional,
set of TS29571_CommonData.Ipv6Addr altNotifIpv6Addrs optional,
set of EventSubscription eventSubs,
TS29571_CommonData.Guami guami optional,
charstring serviveName optional,
TS29571_CommonData.SupportedFeatures supportedFeatures optional
}
type set Nsmf_EventExposureNotification {
charstring notifId,
set of EventNotification eventNotifs
}
type set EventSubscription {
SmfEvent event,
NotificationMethod notifMethod optional,
TS29571_CommonData.Uinteger maxReportNbr optional,
TS29571_CommonData.DurationSec monDur optional,
TS29571_CommonData.DurationSec repPeriod optional,
TS29571_CommonData.DnaiChangeType dnaiChgType optional
}
type set EventNotification {
SmfEvent event,
TS29571_CommonData.DateTime timeStamp,
TS29571_CommonData.Dnai sourceDnai optional,
TS29571_CommonData.Dnai targetDnai optional,
TS29571_CommonData.DnaiChangeType dnaiChgType optional,
TS29571_CommonData.Ipv4Addr sourceUeIpv4Addr optional,
TS29571_CommonData.Ipv6Prefix sourceUeIpv6Prefix optional,
TS29571_CommonData.Ipv4Addr targetUeIpv4Addr optional,
TS29571_CommonData.Ipv6Prefix targetUeIpv6Prefix optional,
TS29571_CommonData.RouteToLocation sourceTraRouting optional,
TS29571_CommonData.RouteToLocation targetTraRouting optional,
TS29571_CommonData.Ipv4Addr adIpv4Addr optional,
TS29571_CommonData.Ipv6Prefix adIpv6Prefix optional,
TS29571_CommonData.Ipv4Addr reIpv4Addr optional,
TS29571_CommonData.Ipv6Prefix reIpv6Prefix optional,
TS29571_CommonData.PlmnId plmnId optional,
TS29571_CommonData.AccessType accType optional,
TS29571_CommonData.PduSessionId pduSeId optional
}
type charstring SubId
type enumerated SmfEvent_enum { AC_TY_CH, TRA_ROUT_CH, DNAI_CH, PDU_SES_REL, PLMN_CH, UE_IP_CH}
type union SmfEvent {
SmfEvent_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
type enumerated NotificationMethod_enum { PERIODIC, ONE_TIME, ON_EVENT_DETECTION}
type union NotificationMethod {
NotificationMethod_enum enum_val,
charstring other_val
} with {
variant "JSON: as value"
}
} with {
encode "JSON"
}