Commit 023c1593 authored by Axel Rennoch's avatar Axel Rennoch
Browse files

Merge branch 'TTF016' of https://forge.etsi.org/rep/int/vxlte/sccas-con into TTF016

parents eecb16d3 db5efb46
Loading
Loading
Loading
Loading
+80 −44
Original line number Original line Diff line number Diff line
@@ -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, 
@@ -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
@@ -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
@@ -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, 
@@ -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
@@ -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
@@ -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,