Loading ttcn/AtsSccas/AtsSccas_TCFunctions.ttcn +80 −44 Original line number Original line Diff line number Diff line Loading @@ -48,18 +48,21 @@ module AtsSccas_TCFunctions { runs on ImsComponent { runs on ImsComponent { // Local variables // Local variables var CSeq v_cSeq_s := p_cSeq_s; var CSeq v_cSeq_s := p_cSeq_s; var template(value) REGISTER_Request m_register3ptyUe; var template(value) RequestUnion m_req; var template(value) Response m_ResponseReg_3ptyUe; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); // Preamble f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_userprofile(c_userProfile_PCSCFwithHomeUE); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); action("Please register UE"); f_initSipUrl(c_userProfile_PCSCFwithHomeUE); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //Registration //Registration f_setHeaders_REGISTER(v_cSeq_s); f_setHeaders_REGISTER(v_cSeq_s);//UE REGISTER f_SendREGISTER( m_register3ptyUe := m_register_ue_srvcc( m_sccas_register( vc_requestUri, vc_requestUri, vc_callId, vc_callId, vc_cSeq, vc_cSeq, Loading @@ -74,13 +77,48 @@ module AtsSccas_TCFunctions { PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", "600000", omit, omit, omit ); m_req:= {Register:=valueof(m_register3ptyUe)}; m_ResponseReg_3ptyUe := m_Response_2xxonREGISTER_IMS( c_statusLine200, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact, m_SipUrl_currDomain(vc_userprofile), vc_from.addressField.nameAddr.addrSpec ); f_init_userprofile(c_userProfile_SCSCFwithHomeUE); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS f_initSipUrl(c_userProfile_SCSCFwithHomeUE); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( m_REGISTER_Request_AS( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, -, -, m_contentType(c_sdpApplication), // TODO To be refined during validation "600000", m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation m_contentType("multipart/mixed",{m_contentTypeBoundary(c_boundary)}) , m_MBody_MIME_SipReqResp(c_boundary,m_req,m_ResponseReg_3ptyUe) )); )); tc_ack.start; tc_ack.start; alt { alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { tc_ack.stop; tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading @@ -90,7 +128,6 @@ module AtsSccas_TCFunctions { } } } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_01 } // End of function f_TC_ISC_SCCAS_RSC_REG_01 Loading @@ -104,17 +141,16 @@ module AtsSccas_TCFunctions { // Local variables // Local variables var CSeq v_cSeq_s := p_cSeq_s; var CSeq v_cSeq_s := p_cSeq_s; // Preambule // Preamble f_init_userprofile(c_userProfile_UE1atSUThome); f_init_userprofile(c_userProfile_SCSCFwithHomeUE); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_initSipUrl(c_userProfile_SCSCFwithHomeUE); action("Please register UE"); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Registration f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone f_setHeaders_REGISTER(v_cSeq_s); f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( f_SendREGISTER( m_sccas_register( m_REGISTER_Request_AS( vc_requestUri, vc_requestUri, vc_callId, vc_callId, vc_cSeq, vc_cSeq, Loading @@ -122,14 +158,14 @@ module AtsSccas_TCFunctions { vc_to, vc_to, vc_via_REG, vc_via_REG, vc_contact, vc_contact, omit, -, PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation "0", PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation - , "0" // Expired -) )); ); tc_ack.start; tc_ack.start; alt { alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { tc_ack.stop; tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading @@ -139,7 +175,6 @@ module AtsSccas_TCFunctions { } } } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_02 } // End of function f_TC_ISC_SCCAS_RSC_REG_02 Loading Loading @@ -234,6 +269,7 @@ module AtsSccas_TCFunctions { } } //Deregistration //Deregistration f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( f_SendREGISTER( m_REGISTER_Request_AS( m_REGISTER_Request_AS( vc_requestUri, vc_requestUri, Loading Loading
ttcn/AtsSccas/AtsSccas_TCFunctions.ttcn +80 −44 Original line number Original line Diff line number Diff line Loading @@ -48,18 +48,21 @@ module AtsSccas_TCFunctions { runs on ImsComponent { runs on ImsComponent { // Local variables // Local variables var CSeq v_cSeq_s := p_cSeq_s; var CSeq v_cSeq_s := p_cSeq_s; var template(value) REGISTER_Request m_register3ptyUe; var template(value) RequestUnion m_req; var template(value) Response m_ResponseReg_3ptyUe; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); // Preamble f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_userprofile(c_userProfile_PCSCFwithHomeUE); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); action("Please register UE"); f_initSipUrl(c_userProfile_PCSCFwithHomeUE); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //Registration //Registration f_setHeaders_REGISTER(v_cSeq_s); f_setHeaders_REGISTER(v_cSeq_s);//UE REGISTER f_SendREGISTER( m_register3ptyUe := m_register_ue_srvcc( m_sccas_register( vc_requestUri, vc_requestUri, vc_callId, vc_callId, vc_cSeq, vc_cSeq, Loading @@ -74,13 +77,48 @@ module AtsSccas_TCFunctions { PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", "600000", omit, omit, omit ); m_req:= {Register:=valueof(m_register3ptyUe)}; m_ResponseReg_3ptyUe := m_Response_2xxonREGISTER_IMS( c_statusLine200, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact, m_SipUrl_currDomain(vc_userprofile), vc_from.addressField.nameAddr.addrSpec ); f_init_userprofile(c_userProfile_SCSCFwithHomeUE); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS f_initSipUrl(c_userProfile_SCSCFwithHomeUE); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( m_REGISTER_Request_AS( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, -, -, m_contentType(c_sdpApplication), // TODO To be refined during validation "600000", m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation m_contentType("multipart/mixed",{m_contentTypeBoundary(c_boundary)}) , m_MBody_MIME_SipReqResp(c_boundary,m_req,m_ResponseReg_3ptyUe) )); )); tc_ack.start; tc_ack.start; alt { alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { tc_ack.stop; tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading @@ -90,7 +128,6 @@ module AtsSccas_TCFunctions { } } } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_01 } // End of function f_TC_ISC_SCCAS_RSC_REG_01 Loading @@ -104,17 +141,16 @@ module AtsSccas_TCFunctions { // Local variables // Local variables var CSeq v_cSeq_s := p_cSeq_s; var CSeq v_cSeq_s := p_cSeq_s; // Preambule // Preamble f_init_userprofile(c_userProfile_UE1atSUThome); f_init_userprofile(c_userProfile_SCSCFwithHomeUE); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_initSipUrl(c_userProfile_SCSCFwithHomeUE); action("Please register UE"); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Registration f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone f_setHeaders_REGISTER(v_cSeq_s); f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( f_SendREGISTER( m_sccas_register( m_REGISTER_Request_AS( vc_requestUri, vc_requestUri, vc_callId, vc_callId, vc_cSeq, vc_cSeq, Loading @@ -122,14 +158,14 @@ module AtsSccas_TCFunctions { vc_to, vc_to, vc_via_REG, vc_via_REG, vc_contact, vc_contact, omit, -, PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation "0", PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation - , "0" // Expired -) )); ); tc_ack.start; tc_ack.start; alt { alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { tc_ack.stop; tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading @@ -139,7 +175,6 @@ module AtsSccas_TCFunctions { } } } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_02 } // End of function f_TC_ISC_SCCAS_RSC_REG_02 Loading Loading @@ -234,6 +269,7 @@ module AtsSccas_TCFunctions { } } //Deregistration //Deregistration f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER f_SendREGISTER( f_SendREGISTER( m_REGISTER_Request_AS( m_REGISTER_Request_AS( vc_requestUri, vc_requestUri, Loading