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 @@
 		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 (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) {
