summaryrefslogtreecommitdiffstats
path: root/library/RSL_Types.ttcn
diff options
context:
space:
mode:
Diffstat (limited to 'library/RSL_Types.ttcn')
-rw-r--r--library/RSL_Types.ttcn24
1 files changed, 23 insertions, 1 deletions
diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 87de9a4..da8c7f8 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -149,7 +149,9 @@ module RSL_Types {
RSL_MT_IPAC_DLCX_IND ('01110110'B),
RSL_MT_IPAC_DLCX ('01110111'B),
RSL_MT_IPAC_DLCX_ACK ('01111000'B),
- RSL_MT_IPAC_DLCX_NACK ('01111001'B)
+ RSL_MT_IPAC_DLCX_NACK ('01111001'B),
+
+ RSL_MT_OSMO_ETWS_CMD ('01111111'B)
} with { variant "FIELDLENGTH(8)" };
/*! RSL Information Element Identifiers (Chapter 9.3) */
@@ -2115,6 +2117,26 @@ template RSL_Message tr_RSL_MsgTypeDR(template RSL_MessageType msg_type) modifie
}
}
+ template (value) RSL_Message ts_RSL_OSMO_ETWS_CMD(template (value) octetstring msg,
+ template (value) RslChannelNr chan_nr := ts_RslChanNr_PCH_AGCH(0)) := {
+ msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+ msg_type := RSL_MT_OSMO_ETWS_CMD,
+ ies := {
+ t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}),
+ t_RSL_IE(RSL_IE_SMSCB_MSG, RSL_IE_Body:{smscb_message := ts_RSL_LV(msg)})
+ }
+ }
+ template RSL_Message tr_RSL_OSMO_ETWS_CMD(template RslChannelNr chan_nr := ?,
+ template octetstring msg := ?) := {
+ msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+ msg_type := RSL_MT_OSMO_ETWS_CMD,
+ ies := {
+ tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
+ tr_RSL_IE(RSL_IE_Body:{smscb_message := tr_RSL_LV(msg)})
+ }
+ }
+
+
function f_rsl_find_ie(RSL_Message msg, RSL_IE_Type iei, out RSL_IE_Body ret) return boolean {
for (var integer i := 0; i < sizeof(msg.ies); i := i+1) {