AtsImsIot_Emergency.ttcn 137 KB
Newer Older
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_07
                     
                } // End of group f_TD_VoLTE_ECO_INT_INI_07

                /**
                 * @desc    To demonstrate the establishment of dedicated bearers at the originating EPC due to SIP emergency session establishment within an emergency registration.
                 *          PSAP is located in the PSTN connected via BGCF. The PSAP URI is delivered by the LRF
                 * @see ETSI TS 103 795-2 Clause 5.3.1.9	UE calling PSAP in PSTN via BGCF, LRF derived PSAP URI
                 */
                testcase TD_VoLTE_ECO_INT_INI_08() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> BGCF
                                                              PX_SIP_ML_LRF_INTERFACENAME // E-CSCF -> LRF: mlE_LTF
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_08();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        // TODO
                        
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 34
                        f_mtc_userCheckCallEstablished(v_psap); // Event 34
                        
                        // Postamble
                        f_mtc_EndCall(v_ueA);
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        //f_cf_int_call_down(v_config);
            
                        //unmap/disconnect component ports
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_INI_08
                
                group f_TD_VoLTE_ECO_INT_INI_08 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_08() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_08
                     
                } // End of group f_TD_VoLTE_ECO_INT_INI_08


                /**
                 * @desc    To demonstrate that if an emergency call has been terminated, the attempt by the PSAP call taker to communicate back to the emergency caller shall be answered.
                 * @see ETSI TS 103 795-2 Clause 5.3.1.5 Callback from PSAP
                 @remark Opetion 1: PSAP is in IMS A netwwork
                 */
                testcase TD_VoLTE_ECO_INT_INI_09_01() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_MM_PSAP_INTERFACENAME
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_01();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        // TODO
                        
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 34
                        f_mtc_userCheckCallEstablished(v_psap); // Event 34
                        
                        // Postamble
                        f_mtc_EndCall(v_ueA);
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        //f_cf_int_call_down(v_config);
            
                        //unmap/disconnect component ports
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_INI_09_01
                
                group f_TD_VoLTE_ECO_INT_INI_09_01 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_01() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_01
                     
                } // End of group f_TD_VoLTE_ECO_INT_INI_09_01

                /**
                 * @desc    To demonstrate that if an emergency call has been terminated, the attempt by the PSAP call taker to communicate back to the emergency caller shall be answered.
                 * @see ETSI TS 103 795-2 Clause 5.3.1.5 Callback from PSAP
                 @remark Opetion 2: PSAP is not in IMS A netwwork
                 */
                testcase TD_VoLTE_ECO_INT_INI_09_02() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_IC_INTERFACENAME // IBCF -> IMS -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_02();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        // TODO
                        
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 34
                        f_mtc_userCheckCallEstablished(v_psap); // Event 34
                        
                        // Postamble
                        f_mtc_EndCall(v_ueA);
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        //f_cf_int_call_down(v_config);
            
                        //unmap/disconnect component ports
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_INI_09_02
                
                group f_TD_VoLTE_ECO_INT_INI_09_02 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_02() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_02
                     
                } // End of group f_TD_VoLTE_ECO_INT_INI_09_02

                /**
                 * @desc    To demonstrate that if an emergency call has been terminated, the attempt by the PSAP call taker to communicate back to the emergency caller shall be answered.
                 * @see ETSI TS 103 795-2 Clause 5.3.1.5 Callback from PSAP
                 @remark Opetion 2: PSAP is in PSTN netwwork
                 */
                testcase TD_VoLTE_ECO_INT_INI_09_03() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME // E-CSCF -> BGCF
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_03();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        // TODO
                        
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 34
                        f_mtc_userCheckCallEstablished(v_psap); // Event 34
                        
                        // Postamble
                        f_mtc_EndCall(v_ueA);
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        //f_cf_int_call_down(v_config);
            
                        //unmap/disconnect component ports
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_INI_09_03
                
                group f_TD_VoLTE_ECO_INT_INI_09_03 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_03() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_09_03
                     
                } // End of group f_TD_VoLTE_ECO_INT_INI_09_03

            } // End of group EmergencySessionEstablishment

            group EmergencySessionRelease {

                /**
                 * @desc    To perform originating UE session release and the tear down of related dedicated bearers.
                 * @see ETSI TS 103 795-2 Clause 5.3.3.1	UE Initiated Emergency Session Release
                 * @remark This is option 1: PSAP is in IMA A network
                 */
                testcase TD_VoLTE_ECO_INT_REL_01_01() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_MM_PSAP_INTERFACENAME // IBCF -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_01();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        f_mtc_check_TP_GM_PCSCF_BYE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 3
                        f_mtc_check_TP_MW_IBCF_BYE_01(vc_vxlte_monitor_components.mwBE, -, v_sip); // Event 3
                        f_mtc_check_TP_MM_ECSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwB_PSAP); // Event 6

                        //Rx/Gx exchange after BYE was received at P-CSCF
                        f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx); // (STR – Event 10
                        f_mtc_check_TP_GX_PCRF_RAR_02(vc_vxlte_monitor_components.gx, true); // (RAR – Event 11)
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 12)
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 13)                        
                        
                        
                        f_mtc_check_TP_MW_IBCF_200OK_01(vc_vxlte_monitor_components.mwBE, -, v_sip); // Event 15
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 20
                        f_mtc_check_TP_GM_PCSCF_200OK_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 21
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 22
                        f_mtc_userCheckCallCancelled(v_psap); // Event 23
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_01_01
                
                group f_TD_VoLTE_ECO_INT_REL_01_01 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_01() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_01
                     
                } // End of group f_TD_VoLTE_ECO_INT_REL_01_01

                /**
                 * @desc    To perform originating UE session release and the tear down of related dedicated bearers.
                 * @see ETSI TS 103 795-2 Clause 5.3.3.1	UE Initiated Emergency Session Release
                 * @remark This is option 2: PSAP is not in IMS A network
                 */
                testcase TD_VoLTE_ECO_INT_REL_01_02 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                    
                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_IC_INTERFACENAME // IBCF -> IMS_B -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_02();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        f_mtc_check_TP_GM_PCSCF_BYE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 3
                        f_mtc_check_TP_MW_IBCF_BYE_01(vc_vxlte_monitor_components.mwBE, -, v_sip); // Event 3
                        f_mtc_check_TP_IC_IBCF_BYE_01(vc_vxlte_monitor_components.ic); // Event 6

                        //Rx/Gx exchange after BYE was received at P-CSCF
                        f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx); // (STR – Event 10
                        f_mtc_check_TP_GX_PCRF_RAR_02(vc_vxlte_monitor_components.gx, true); // (RAR – Event 11)
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 12)
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 13)                        
                        
                        
                        f_mtc_check_TP_MW_IBCF_200OK_01(vc_vxlte_monitor_components.mwBE, -, v_sip); // Event 15
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 20
                        f_mtc_check_TP_GM_PCSCF_200OK_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 21
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 22
                        f_mtc_userCheckCallCancelled(v_psap); // Event 23
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_01_02
                
                group f_TD_VoLTE_ECO_INT_REL_01_02 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_02() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_02
                     
                } // End of f_TD_VoLTE_ECO_INT_REL_01_02

               /**
                 * @desc    To perform originating UE session release and the tear down of related dedicated bearers.
                 * @see ETSI TS 103 795-2 Clause 5.3.3.1	UE Initiated Emergency Session Release
                 * @remark This is option 3: PSAP is in PSTN network
                 */
                testcase TD_VoLTE_ECO_INT_REL_01_03() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME // E-CSCF -> BGCF
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_03();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 22
                        f_mtc_userCheckCallCancelled(v_psap); // Event 23
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_01_03
                
                group f_TD_VoLTE_ECO_INT_REL_01_03 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_03() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_01_03
                     
                } // End of group f_TD_VoLTE_ECO_INT_REL_01_03

               /**
                 * @desc    To perform originating PSAP session release and the tear down of related dedicated bearers.
                 * @see ETSI TS 103 795-2 Clause 5.3.3.2	PSAP Initiated Emergency Session Release
                 * @remark This is option 1: PSAP is in IMS A network
                 */
                testcase TD_VoLTE_ECO_INT_REL_02_01() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_MM_PSAP_INTERFACENAME // IBCF -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_01();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_02_01
                
                group f_TD_VoLTE_ECO_INT_REL_02_01 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_01() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_01
                     
                } // End of group f_TD_VoLTE_ECO_INT_REL_02_01

               /**
                 * @desc    To perform originating PSAP session release and the tear down of related dedicated bearers.
                 * @see ETSI TS 103 795-2 Clause 5.3.3.2	PSAP Initiated Emergency Session Release
                 * @remark This is option2: PSAP is not in IMS A network
                 */
                testcase TD_VoLTE_ECO_INT_REL_02_02() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_IC_INTERFACENAME // IBCF -> IMS
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_02();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_02_02
                
                group f_TD_VoLTE_ECO_INT_REL_02_02 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_02() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_02
                     
                } // End of group f_TD_VoLTE_ECO_INT_REL_02_02

               /**
                 * @desc    To perform originating PSAP session release and the tear down of related dedicated bearers.
                 *          On call release initiated bye PSAP, the P-CSCF A should trigger the removal of all relevant previously created bearers
                 * @see ETSI TS 103 795-2 Clause 5.3.3.2	PSAP Initiated Emergency Session Release
                 * @remark This is option2: PSAP is in the same network
                 */
                testcase TD_VoLTE_ECO_INT_REL_02_03() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME // E-CSCF -> BGCF
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_03();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REL_02_03
                
                group f_TD_VoLTE_ECO_INT_REL_02_03 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_03() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REL_02_03
                     
                } // End of group f_TD_VoLTE_ECO_INT_REL_02_03

            } // End of group EmergencySessionRelease

            group EmergencySessionAbortOrReject {

                /**
                 * @desc    To perform SIP session abort (originating side) and the related interactions with PCRF A and EPC A.
                 * @see ETSI TS 103 795-2 Clause 5.3.4.1	Emergency Session Abort 
                 * @remark This is option 1: PSAP is in IMA A network
                 */
                testcase TD_VoLTE_ECO_INT_ABT_01_01() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_MM_PSAP_INTERFACENAME // IBCF -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_01();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 33
                        f_mtc_userCheckCallCancelled(v_psap); // Event 34
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_ABT_01_01
                
                group f_TD_VoLTE_ECO_INT_ABT_01_01 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_01() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_01
                     
                } // End of group f_TD_VoLTE_ECO_INT_ABT_01_01

                /**
                 * @desc    To perform SIP session abort (originating side) and the related interactions with PCRF A and EPC A.
                 * @see ETSI TS 103 795-2 Clause 5.3.4.1	Emergency Session Abort 
                 * @remark This is option 1: PSAP is not in IMA A network
                 */
                testcase TD_VoLTE_ECO_INT_ABT_01_02() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_IC_INTERFACENAME // IBCF -> IMS -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_02();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 33
                        f_mtc_userCheckCallCancelled(v_psap); // Event 34
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_ABT_01_02
                
                group f_TD_VoLTE_ECO_INT_ABT_01_02 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_02() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_02
                     
                } // End of group f_TD_VoLTE_ECO_INT_ABT_01_02

                /**
                 * @desc    To perform SIP session abort (originating side) and the related interactions with PCRF A and EPC A.
                 * @see ETSI TS 103 795-2 Clause 5.3.4.1	Emergency Session Abort 
                 * @remark This is option 1: PSAP is in PSTN network
                testcase TD_VoLTE_ECO_INT_ABT_01_03() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP ); 
        
                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME,
                                                              PX_DIAMETER_RX_INTERFACENAME,
                                                              PX_SIP_MW_PE_INTERFACENAME,
                                                              PX_SIP_MW_EB_INTERFACENAME, // E-CSCF -> IBCF
                                                              PX_SIP_IC_INTERFACENAME // IBCF -> IMS -> PSAP
                                                              }))
                    {
                        var SipMessage v_sip;
                        
                        f_cf_createVxLteMonitor();
                
                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();
                
                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA); 
                        f_mtc_userRegistration(v_psap, v_infoPsap); 
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap);
                        f_mtc_userCheckRinging(v_psap);
                        f_mtc_userCheckPeerIsRinging(v_ueA);
                        f_mtc_userAnswerCall(v_psap);
                        f_mtc_userCheckCallEstablished(v_ueA); // Event 1
                        f_mtc_userCheckCallEstablished(v_psap); // Event 1
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_03();
                        
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);

                        // TODO
                        
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 33
                        f_mtc_userCheckCallCancelled(v_psap); // Event 34
                        
                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_ABT_01_03
                
                group f_TD_VoLTE_ECO_INT_ABT_01_03 {
                    
                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_ABT_01_03() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions