diff --git a/asterisk/IMS_ConnectionHandler.ttcn b/asterisk/IMS_ConnectionHandler.ttcn
index dd3223c..7a9f11f 100644
--- a/asterisk/IMS_ConnectionHandler.ttcn
+++ b/asterisk/IMS_ConnectionHandler.ttcn
@@ -47,6 +47,8 @@
 const charstring IMS_COORD_CMD_START := "IMS_COORD_CMD_START";
 const charstring IMS_COORD_CMD_CALL_ESTABLISHED := "IMS_COORD_CMD_CALL_ESTABLISHED";
 const charstring IMS_COORD_CMD_HANGUP := "IMS_COORD_CMD_HANGUP";
+const charstring IMS_COORD_CMD_CALL_TRYING := "IMS_COORD_CMD_CALL_TRYING";
+const charstring IMS_COORD_CMD_CALL_SESSION_PROGRESS := "IMS_COORD_CMD_CALL_SESSION_PROGRESS";
 
 type component IMS_ConnHdlr extends SIP_ConnHdlr {
 	var charstring g_name;
@@ -113,15 +115,20 @@
 }
 type record of IMS_ConnHdlrPars IMS_ConnHdlrParsList;
 
+type record IMS_CallParsMO {
+	/* Whether to COORD.send(IMS_COORD_CMD_CALL_TRYING) when receiving an INVITE from UE. */
+	boolean tx_coord_cmd_invite_trying
+}
+template (value) IMS_CallParsMO t_IMS_CallParsMO := {
+	tx_coord_cmd_invite_trying := false
+}
+
 type record IMS_CallParsMT {
-	/* Whether to wait for COORD.receive(COORD_CMD_PICKUP) before accepting the call. */
-	boolean wait_coord_cmd_pickup,
-	/* Whether to expect CANCEL instead of ACK as answer to our OK */
-	boolean exp_cancel
+	/* Whether to COORD.send(IMS_COORD_CMD_CALL_SESSION_PROGRESS) when receiving an 183 Session Progress from UE. */
+	boolean tx_coord_cmd_session_progress
 }
 template (value) IMS_CallParsMT t_IMS_CallParsMT := {
-	wait_coord_cmd_pickup := false,
-	exp_cancel := false
+	tx_coord_cmd_session_progress := false
 }
 
 type record IMS_CallPars {
@@ -141,6 +148,7 @@
 	boolean support_precondition_ext,
 	boolean require_precondition_ext,
 	SDP_Message peer_sdp optional,
+	IMS_CallParsMO mo,
 	IMS_CallParsMT mt
 }
 
@@ -160,6 +168,7 @@
 	support_precondition_ext := true,
 	require_precondition_ext := false,
 	peer_sdp := omit,
+	mo := t_IMS_CallParsMO,
 	mt := t_IMS_CallParsMT
 }
 
@@ -1043,6 +1052,11 @@
 				    body := omit);
 		SIP.send(req);
 
+		if (g_pars.subscr.cp.mt.tx_coord_cmd_session_progress) {
+			/* Signal used to inform that Dedicated bearer can be established: */
+			COORD.send(IMS_COORD_CMD_CALL_SESSION_PROGRESS);
+		}
+
 		/* Rx 200 OK (PRACK) */
 		exp := tr_SIP_Response(g_pars.subscr.cp.sip_call_id,
 				       from_addr_exp,
@@ -1213,6 +1227,11 @@
 						   userAgent := omit);
 		SIP.send(tx_resp);
 
+		if (g_pars.subscr.cp.mo.tx_coord_cmd_invite_trying) {
+			/* Signal used to inform that Dedicated bearer can be established: */
+			COORD.send(IMS_COORD_CMD_CALL_TRYING);
+		}
+
 		tx_sdp := f_gen_sdp();
 
 		/* Use precondition ? */
