/* * @author TTF T010 * @version $Id$ * @desc This module provides the TP behaviour functions at MM interface */ module AtsImsIot_TP_behavior_MM { // LibIms import from LibIms_Templates all; import from LibIms_UpperTester all; // LibIot import from LibIot_TypesAndValues all; import from LibIot_Functions all; import from LibIot_TestInterface all; import from LibIot_PIXITS all; // LibSip import from LibSip_SIPTypesAndValues all; import from LibSip_Templates all; import from LibSip_Common all; import from LibSip_SDPTypes all; // LibMsrp import from LibMsrp_TypesAndValues all; import from LibMsrp_Functions all; import from LibMsrp_Templates all; // AtsImsIot import from AtsImsIot_TestSystem all; import from AtsImsIot_Templates_MW all; import from AtsImsIot_Templates all; import from AtsImsIot_TypesAndValues all; import from AtsImsIot_Functions all; group imsInvite { /** * @desc Verify that the P-CSCF successfully processes an initial INVITE (Originating Leg).. * Initial conditions with { * the UE_A entity isAttachedTo the EPC_A and * the PSAP entity isAttachedTo the EPC_B and * the UE_A entity isRegisteredTo the IMS_A and * the PSAP entity isRegisteredTo the IMS_B * } * * Expected behaviour * ensure that { * when { * the PSAP entity receives an INVITE containing * From indicating value PX_UE_A_SIP_URI, * To indicating value PX_PSAP_SIP_URI, * CallId indicating value PX_UE_A_CALLID, * Via indicating value PX_UE_A_VIA, * Route indicating value PX_UE_A_SERVICE_ROUTE, * PAccessNetworkInfo, * MessageBody containing * SDP containing * Version indicating value "0" * ; * ;; * from the IMS_EBCF_A entity * } * then { * the PSAP entity sends an 100_Trying * to the IMS_IBCF_A entity * } * } */ function f_mtc_check_TP_MM_PSAP_INVITE_01( in SipInterfaceMonitor p_monitorCompRef, in boolean p_checkMessage := false, out SipMessage p_sip ) runs on ImsTestCoordinator { if (isvalue(p_monitorCompRef)) { var ImsUserInfo v_userInfoA := f_getTelUserId(PX_EUT_A); var ImsUserInfo v_psapInfo := f_getSipUserId(PX_PSAP); // Check the INVITE p_monitorCompRef.start( f_Iot_Sip_receive( { mw_SipRequest(mw_TP_MM_PSAP_INVITE_01( -, // FIXME Set expected value mw_From_AddrUnion_TelUrl(-), // v_userInfoA.publicId mw_To_AddrUnion_TelUrl(-) // v_psapInfo.publicId )) }, { mw_SipRequest(mw_INVITE_Request_Base) }, {0, omit}, "TP_MM_PSAP_INVITE_01 - Request", true, p_checkMessage ) ); p_monitorCompRef.done; // Retrieve messge f_getSipMsgFromMonitor(p_monitorCompRef, p_sip); log("##### p_sip: ", p_sip); } } // End of function f_mtc_check_TP_MM_PSAP_INVITE_01 } // End of group imsInvite } // end module AtsImsIot_TP_behavior_MM