LibIms_Templates.ttcn 124 KB
Newer Older
schmitting's avatar
schmitting committed
            bCoctet5  	:= * ,
            bCoctet5a  	:= * ,
            bCoctet5bV110  := * ,
            bCoctet5bV120  := * ,
            bCoctet5c 	:= * ,
            bCoctet5d 	:= * ,
            bCoctet6  	:= * ,
            bCoctet7  	:= * ,
            bCoctet7a  	:= * ,
            bCoctet7b  	:= * 
    }	

    template ProgressIndicatorType mw_ProgressIndicatorType (template ProgressOctet3Type p_ProgressOctet3Type, template ProgressOctet4Type p_ProgressOctet4Type) := {
            progressOctet3 := p_ProgressOctet3Type,
            progressOctet4 := p_ProgressOctet4Type
    }
	
    template LowLayerCompatibilityType mw_LowLayerCompatibilityType 
        (template LLOctet3Type p_LLOctet3, template LLOctet4Type p_LLOctet4, template LLOctet7Type p_LLOctet7) := {
            lLOctet3 := p_LLOctet3,
            lLOctet3a := * ,
            lLOctet4 := p_LLOctet4,
            lLOctet4_1 := * ,
            lLOctet5 := * ,
            lLOctet5a := * ,
            lLOctet5bV110 := * ,
            lLOctet5bV120 := * ,
            lLOctet5c := * ,
            lLOctet5d := * ,
            lLOctet6 := * ,
            lLOctet6aHDLC := * ,
            lLOctet6aUserSpecific := * ,
            lLOctet6b := * ,
            lLOctet7 := p_LLOctet7,
            lLOctet7aUserSpecific := * ,
            lLOctet7aX25 := * ,
            lLOctet7bX25 := * ,
            lLOctet7c := * ,
            lLOctet7aTR9577 := * ,
            lLOctet7bTR9577 := * 
    }
	
    template HighLayerCompatibilityType mw_HighLayerCompatibilityType 
        (template HLOctet3Type p_HLOctet3, template HLOctet4Type p_HLOctet4):= {
            hLOctet3 := p_HLOctet3,
            hLOctet4 := p_HLOctet4,
            hLOctet4aMaintenance := *,
            hLOctet4Audio := *
    }
rennoch's avatar
rennoch committed
} //end group PSTNTemplates		

group CDIVNTemplates {
	
schmitting's avatar
schmitting committed
    /* general CDIVN subscription */
    template Comm_div_info_type m_CDIVN_sub := {
        entity := "comm-div-info",
        comm_div_subs_info := {
schmitting's avatar
schmitting committed
            comm_div_selection_criteria := {
schmitting's avatar
schmitting committed
                originating_user_selection_criteria := omit,
                diverting_user_selection_criteria := omit,
                diverted_to_user_selection_criteria := omit,
                diversion_time_selection_criteria := omit,
                diversion_reason_selection_criteria := omit,
                elem_list := {}
            },
            comm_div_ntfy_trigger_criteria := omit,
            comm_div_info_selection_criteria := omit,
            elem_list := {}
        },
        comm_div_ntfy_info := omit,
        elem_list := {}
    }
rennoch's avatar
rennoch committed

} // end grouup CDIVNTemplates
poglitsch's avatar
poglitsch committed

group ResourceListsTemplates {
	

    template Resource_lists m_ResourceList_2Users(
schmitting's avatar
schmitting committed
        template EntryType p_user1, 
        template EntryType p_user2
schmitting's avatar
schmitting committed
        sequence_list := {
            {
                list := {
                    name := omit,
                    display_name := omit,
                    sequence_list := {
                        {
                            choice := {
                                entry := p_user1
                            }
                        },
                        {
                            choice := {
                                entry := p_user2
                            }
                        }
                    },
schmitting's avatar
schmitting committed
                    elem_list := {}
schmitting's avatar
schmitting committed
    template EntryType m_EntryUser(SipUrl p_user) := {
schmitting's avatar
schmitting committed
        uri :=
            p_user.userInfo.userOrTelephoneSubscriber & "@" &
            p_user.hostPort.host,
        display_name := omit,
schmitting's avatar
schmitting committed
        elem_list := {}
    }
poglitsch's avatar
poglitsch committed
}// end grouup ResourceListsTemplates
poglitsch's avatar
poglitsch committed
group Ims3gppTemplates {
    
    //TODO:check commented and below templates when test will be validated
    template TIMS3GPP mw_Ims_3gpp_CW := {
        version := 1.0,
        choice := {
            alternative_service := {
                type_ := ?, 
                reason := ?, 
schmitting's avatar
schmitting committed
                elem_list := ?
schmitting's avatar
schmitting committed
        elem_list := ?
    }
//  template TIMS3GPP mw_Ims_3gpp_CW := {
//      version := 1.0,
//      anyAttributes := ?,
//      choice_1 := {
//          alternative_service := {
//              anyAttributes := ?,
//              type_ := ?,
//              reason := ?,
//              action_ := {
//                  anyAttributes := ?,
//                  emergency_registration := *,
//                  call_waiting_indication := {},
//                  any_1 := *
//              },
//              any_1 := *
//          }
//      },
//      any_1 := *
//  }
poglitsch's avatar
poglitsch committed
} // end group Ims3gpp

poglitsch's avatar
poglitsch committed
group CONFTemplates {
schmitting's avatar
schmitting committed
    template booleanXSD boolXSD_true:={bool:=true}
    template booleanXSD boolXSD_false:={bool:=false}
	
    template anyAttributes m_emptyAnyAttributes:={}
	
    template urn_ietf_params_xml_ns_conference_info.Media_type m_mediatype_status(template Media_status_type p_status):= {
        id:="1",
schmitting's avatar
schmitting committed
        display_text :=omit,
        type_ :=omit,
        label_ :=omit,
        src_id:=omit,
        status:= p_status,
        elem_list:={}
    }
	
    template Endpoint_type m_endpoint(template charstring p_Uri,template Endpoint_status_type p_epStatus,template Joining_type p_joinMethod, template Disconnection_type p_discMethod, template urn_ietf_params_xml_ns_conference_info.Media_type p_mediastatus):= {
        entity:=p_Uri,
        state:=full,
schmitting's avatar
schmitting committed
        display_text:=omit,
        referred:=omit,
        status:=p_epStatus,
        joining_method:=p_joinMethod,
        joining_info:=omit,
        disconnection_method:=omit,
        disconnection_info:=omit,
        media_list:={p_mediastatus},// optional, 
        call_info:=omit,
        elem_list:={}
    }
	
    template User_type m_1user (template charstring p_Uri,template Endpoint_type p_endpoint) := {
        entity:=p_Uri,
        state:=full,
schmitting's avatar
schmitting committed
        display_text:=omit,
        associated_aors:=omit,
        roles:=omit,
        languages :=omit,
        cascaded_focus :=omit,
        endpoint_list:={p_endpoint},// optional,
        elem_list:={}
    }
	
    template Users_type m_users_1user_full(template User_type p_user):={
            state:=full,
schmitting's avatar
schmitting committed
            user_list:={p_user},
            elem_list:={}
    }
	
    template Users_type m_users_2user_full(template User_type p_user1,template User_type p_user2):={
            state:=full,
schmitting's avatar
schmitting committed
            user_list:={p_user1,p_user2},
            elem_list:={}
    }
	
    template Conference_state_type m_conference_state(template unsignedInt p_nUsers, boolean p_active, boolean p_locked) := {
schmitting's avatar
schmitting committed
        user_count:=p_nUsers,
        active:=p_active,
        locked:=p_locked,
        elem_list:= {}
    }

    template Conference_type m_ci_cUri_cState_userEntity(template charstring p_cUri, template Conference_state_type p_cState, template Users_type p_users ) := {
        entity := p_cUri,
        state := full,
        version := 1,
        conference_description := omit,
        host_info := omit,
        conference_state := p_cState,
        users := p_users,
        sidebars_by_ref := omit,
        sidebars_by_val := omit,
schmitting's avatar
schmitting committed
        elem_list := {}
rennoch's avatar
rennoch committed
	
 template Conference_type mw_conferenceInfo_active := {
schmitting's avatar
schmitting committed
     entity := ?,
     state := *,
     version := *,
schmitting's avatar
schmitting committed
     conference_description := *,
     host_info := *,
     conference_state := ?,
     users := {
         state := ?,
schmitting's avatar
schmitting committed
         user_list := {
             {
                 entity := *,
                 state := *,
schmitting's avatar
schmitting committed
                 display_text := *,
                 associated_aors := *,
                 roles := *,
                 languages := *,
                 cascaded_focus := *,
                 endpoint_list := {
                     {
                         entity := *,
                         state := *,
schmitting's avatar
schmitting committed
                         display_text := *,
                         referred := *,
                         status := connected,
                         joining_method := dialed_in,
                         joining_info := *,
                         disconnection_method := *,
                         disconnection_info := *,
                         media_list := *,
                         call_info := *,
                         elem_list := ?
                     }
                 },
                 elem_list := ?
             }
         },
         elem_list := {}
     },
     sidebars_by_ref := *,
     sidebars_by_val := *,
     elem_list := ?
rennoch's avatar
rennoch committed
	
} // end group MessageBodyTemplates
		
group MessageTemplates {

group modified_templates {

group request_send {
schmitting's avatar
schmitting committed
    template ACK_Request m_ACK_Request_IMS (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq,
        From p_from, To p_to, Via p_via, template Route p_route) modifies m_ACK_Request_Base :=
    {
        msgHeader :=
        {
            route := p_route
        }
    }
poglitsch's avatar
poglitsch committed
	
schmitting's avatar
schmitting committed
    template BYE_Request m_BYE_Request_IMS
        ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
        Via p_via, template Route p_route)
        modifies m_BYE_Request_Base
poglitsch's avatar
poglitsch committed
        :=
        {
          msgHeader :=
          {
schmitting's avatar
schmitting committed
            route := p_route 
poglitsch's avatar
poglitsch committed
          }
        }
	
schmitting's avatar
schmitting committed
    template BYE_Request m_BYE_Request_Reason_IMS
        ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
        Via p_via, template Route p_route, charstring p_cause)
        modifies m_BYE_Request_Base
        :=
        {
            msgHeader :=
            {
                reason := mw_Reason(p_cause),
                route := p_route
            }
        }
poglitsch's avatar
poglitsch committed
	
schmitting's avatar
schmitting committed
    template BYE_Request m_BYE_Request_UserToUser_IMS
        ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
        Via p_via, template Route p_route, template charstring p_U2UData)
        modifies m_BYE_Request_Base
poglitsch's avatar
poglitsch committed
        :=
        {
schmitting's avatar
schmitting committed
            msgHeader :=
            {
                route := p_route,
                userToUser := m_UserToUserData(p_U2UData)
            }
        }
	
    template BYE_Request m_BYE_Request_UE
        ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
        Via p_via, template Route p_route)
        modifies m_BYE_Request_Base
        :=
        {
          msgHeader :=
          {
            pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
            //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation
            route := p_route 
          }
        }
	
    template CANCEL_Request m_CANCEL_Request_IMS (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, 
        Via p_via, template Route p_route) modifies m_CANCEL_Request_Base :=
    {
        msgHeader :=
        {
            route := p_route
        }
    }
	
    template CANCEL_Request m_CANCEL_Request_Reason_IMS (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, 
        Via p_via, template Route p_route, integer p_cause) modifies m_CANCEL_Request_Base :=
    {
        msgHeader :=
        {
            reason := m_Reason(p_cause),
            route := p_route
        }
    }
	
    template CANCEL_Request m_CANCEL_Request_UE (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, 
        Via p_via, template Route p_route) modifies m_CANCEL_Request_Base :=
    {
        msgHeader :=
        {
            route := p_route
        }
    }
	
    /*
        * 
        * @desc INFO message
    *
    */	
    template INFO_Request m_INFO_Request_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, template MessageBody p_mb )
    modifies m_INFO_Request_Base
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication}
        },
        messageBody := p_mb
    }			
	
    /*
    * 
    * @desc INFO message
    *
    */	
    template INFO_Request m_INFO_Request_Mime_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, template MessageBody p_mb )
    modifies m_INFO_Request_Base
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_mimeMultipart}
        },
        messageBody := p_mb
    }			
	
    template INFO_Request m_INFO_Request_Xml_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, template MessageBody p_mb )
    modifies m_INFO_Request_Base
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_xmlAplication}
        },
        messageBody := p_mb
    }	
	
    template INVITE_Request m_INVITE_Request_UE
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route,  template Supported p_supported, template MessageBody p_mb )
    modifies m_INVITE_Request_Base
    :=
    {
      msgHeader :=
      {
        contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
        contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
        pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
        require := p_require,
        route := p_route,
        //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
        supported := p_supported
      },
      messageBody := p_mb
    }
	
    template INVITE_Request m_INVITE_Request_noBody_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
          Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported )
        modifies m_INVITE_Request_Base
        :=
        {
          msgHeader :=
          {
            pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
            require := p_require,
            route := p_route,
            //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
            supported := p_supported
          }
        }
	
        template INVITE_Request m_INVITE_Request_Allow_UE
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route,  template Supported p_supported, template MessageBody p_mb, template LibSip_SIPTypesAndValues.Allow p_allow)
    modifies m_INVITE_Request_UE
    :=
    {
      msgHeader :=
      {
        allow := p_allow
      }
    }
	
    template INVITE_Request m_INVITE_Request_noBody_Allow_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
          Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported, template LibSip_SIPTypesAndValues.Allow p_allow)
        modifies m_INVITE_Request_noBody_UE
        :=
        {
          msgHeader :=
poglitsch's avatar
poglitsch committed
          {
            allow := p_allow
          }
        }
poglitsch's avatar
poglitsch committed
		
schmitting's avatar
schmitting committed
    /*
     * 
     * @desc INVITE message exchanged at Mw
     *
     */	
    template INVITE_Request m_INVITE_Request_IMS (
        SipUrl p_requestUri, 
        CallId p_callId, 
        CSeq p_cSeq, 
        From p_from, 
        To p_to,
        Via p_via, 
        Contact p_contact, 
        template Require p_require,
        template Route p_route, 
        template RecordRoute p_recordRoute,  
        template Supported p_supported, 
        template PChargingVector p_pChargingVector, 
        template MessageBody p_mb 
    ) modifies m_INVITE_Request_Base := {
      msgHeader := {
        contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
        contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
        require := p_require,
        pChargingVector := p_pChargingVector,
        recordRoute := p_recordRoute,
        route := p_route,
        supported := p_supported
      },
      messageBody := p_mb
    }	
	
    /*
    * 
    * @desc INVITE message exchanged at Mw
    *
    */	
    template INVITE_Request m_INVITE_Request_HistoryInfo_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, Contact p_contact, template Require p_require,
            template Route p_route, template RecordRoute p_recordRoute,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb,
            template HistoryInfo p_historyInfo)
    modifies m_INVITE_Request_IMS
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
            historyInfo := p_historyInfo
        }
    }
	
    /*
    * 
    * @desc INVITE message exchanged at Mw
    *
    */	
    template INVITE_Request m_INVITE_Request_Mime_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb )
    modifies m_INVITE_Request_IMS
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_mimeMultipart}
        }
    }
pintar's avatar
pintar committed
		
    /*
     * 
     * @desc INVITE message exchanged at Mw
     *
     */	
    template INVITE_Request m_INVITE_Request_IMS_noBody
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute,  template Supported p_supported, template PChargingVector p_pChargingVector)
    modifies m_INVITE_Request_Base
    :=
    {
      msgHeader :=
      {
        require := p_require,
        pChargingVector := p_pChargingVector,
        recordRoute := p_recordRoute,
        route := p_route,
        supported := p_supported
      }
    }			
schmitting's avatar
schmitting committed
    /*
    * 
    * @desc INVITE message exchanged at Mw
    *
    */	
    template INVITE_Request m_INVITE_Request_Mime_PAsserted_Privacy_IMS
rennoch's avatar
rennoch committed
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
schmitting's avatar
schmitting committed
            Via p_via, Contact p_contact, template Require p_require,
            template Route p_route, template RecordRoute p_recordRoute,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb,
            template PAssertedID p_pAssertedID, template Privacy p_privacy )
rennoch's avatar
rennoch committed
    modifies m_INVITE_Request_IMS
    :=
    {
schmitting's avatar
schmitting committed
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_mimeMultipart},
            pAssertedID := p_pAssertedID,
            privacy := p_privacy
        }
schmitting's avatar
schmitting committed
    /*
    * 
    * @desc INVITE message exchanged at Mw
    *
    */	
    template INVITE_Request m_INVITE_Request_PAsserted_AcceptContact_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
schmitting's avatar
schmitting committed
            Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute, template AcceptContact p_acceptContact, template PAssertedID p_pAssertedID, template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb )
    modifies m_INVITE_Request_Base
    :=
    {
        msgHeader :=
schmitting's avatar
schmitting committed
        {
            acceptContact := p_acceptContact,
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
schmitting's avatar
schmitting committed
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
            require := p_require,
            pAssertedID := p_pAssertedID,
            pChargingVector := p_pChargingVector,
            recordRoute := p_recordRoute,
            route := p_route,
            supported := p_supported
        },
        messageBody := p_mb
schmitting's avatar
schmitting committed
    }	
schmitting's avatar
schmitting committed
    /*
    * 
    * @desc INVITE message exchanged at Mw
    *
    */	
    template INVITE_Request m_INVITE_Request_PAsserted_Privacy_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute, template PAssertedID p_pAssertedID, template Privacy p_privacy, template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb )
    modifies m_INVITE_Request_Base
    :=
schmitting's avatar
schmitting committed
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
            require := p_require,
            pAssertedID := p_pAssertedID,
            pChargingVector := p_pChargingVector,
            privacy := p_privacy,
            recordRoute := p_recordRoute,
            route := p_route,
            supported := p_supported
        },
        messageBody := p_mb
    }	
schmitting's avatar
schmitting committed
    /*
     * 
     * @desc INVITE message exchanged at Mw
     *
     */	
    template INVITE_Request m_INVITE_Request_PAssertedService_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb, template PAssertedService p_pAssertedService)
    modifies m_INVITE_Request_Base
    :=
    {
      msgHeader :=
      {
        contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
        contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
        require := p_require,
        pChargingVector := p_pChargingVector,
        route := p_route,
        supported := p_supported,
        pAssertedService := p_pAssertedService
      },
      messageBody := p_mb
    }		
schmitting's avatar
schmitting committed
1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000
    /*
     * 
     * @desc INVITE message exchanged at Mw
     *
     */	
    template INVITE_Request m_INVITE_Request_PEarlyMedia_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb )
    modifies m_INVITE_Request_Base
    :=
    {
      msgHeader :=
      {
        contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
        contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
        require := p_require,
        pChargingVector := p_pChargingVector,
        pEarlyMedia := m_pEarlyMedia_sup, 
        recordRoute := p_recordRoute,
        route := p_route,
        supported := p_supported
      },
      messageBody := p_mb
    }	

    template INVITE_Request m_INVITE_Request_PPreferred_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
          Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported, template MessageBody p_mb,template PPreferredID p_pPreferredID )
        modifies m_INVITE_Request_UE
        :=
        {
          msgHeader :=
          {
            pPreferredID := p_pPreferredID
          }
        }	

    template INVITE_Request m_INVITE_Request_PPreferred_Privacy_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
                Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported, template MessageBody p_mb,template PPreferredID p_pPreferredID, template Privacy p_privacy)
        modifies m_INVITE_Request_UE
        :=
        {
                msgHeader :=
                {
            pPreferredID := p_pPreferredID,
            privacy := p_privacy
                }
        }

    template INVITE_Request m_INVITE_Request_SessionExpires_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
          Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported, template MessageBody p_mb, template SessionExpires p_se)
        modifies m_INVITE_Request_Base
        :=
        {
          msgHeader :=
          {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
            pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
            require := p_require,
            route := p_route,
            //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
            supported := p_supported,
            sessionExpires := p_se
          },
          messageBody := p_mb
        }
	
    template INVITE_Request m_INVITE_Request_minSE_UE
        (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
          Via p_via, Contact p_contact, template Require p_require,
        template Route p_route,  template Supported p_supported, template MessageBody p_mb, template MinSE p_minSE)
        modifies m_INVITE_Request_Base
        :=
        {
          msgHeader :=
          {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
            pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
            require := p_require,
            route := p_route,
            //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
            supported := p_supported,
            minSE := p_minSE
          },
          messageBody := p_mb
        }
	
    /*
     * 
     * @desc INVITE message exchanged at Mw
     *
     */	
    template INVITE_Request m_INVITE_Request_minSE_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
      Via p_via, Contact p_contact, template Require p_require,
    template Route p_route,  template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb, template MinSE p_minSE)
    modifies m_INVITE_Request_Base
    :=
    {
      msgHeader :=
      {
        contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
        contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_sdpAplication},
        require := p_require,
        pChargingVector := p_pChargingVector,
        route := p_route,
        supported := p_supported,
            minSE := p_minSE
      },
      messageBody := p_mb
    }
		
    template INVITE_Request m_INVITE_Request_User2UserData_IMS
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, Contact p_contact, template Require p_require,
    template Route p_route, template RecordRoute p_recordRoute, template Supported p_supported, template PChargingVector p_pChargingVector, template MessageBody p_mb, template charstring p_U2UData)
    modifies m_INVITE_Request_IMS
    :=
    {
        msgHeader :=
        {
            userToUser := m_UserToUserData(valueof(p_U2UData))
        }
    }
	
    template MESSAGE_Request m_MESSAGE_Request_MBody_UE
           (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
             Via p_via, template Require p_require,
           template Route p_route,  template Supported p_supported, template MessageBody p_messageBody)
           modifies m_MESSAGE_Request_Base
           :=
           {
             msgHeader :=
             {
                contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(m_MBody_longPlainText))},
                contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_plainText},
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                require := p_require,
                route := p_route,
                //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
                supported := p_supported
             },
             messageBody := p_messageBody
    }
    
    template MESSAGE_Request m_MESSAGE_Request_NoBody_UE
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                require := p_require,
                route := p_route,
                supported := p_supported
              },
              messageBody := omit
            }
	
    template MESSAGE_Request m_MESSAGE_Request_PCharging_UE
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                pChargingFunctionAddresses := m_pChargingFunctionAddresses_fixedValue,
                pChargingVector := m_pChargingVector_origIoi_fixedValue(PX_IMS_SUT_UE1_HOME_DOMAIN),
                require := p_require,
                route := p_route,
                supported := p_supported
              },
              messageBody := omit
            }
	
    template MESSAGE_Request m_MESSAGE_Request_PCharging_IMS
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported, 
            template PChargingVector p_pChargingVector)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                pChargingFunctionAddresses := m_pChargingFunctionAddresses_fixedValue,
                pChargingVector := p_pChargingVector,
                require := p_require,
                route := p_route,
                supported := p_supported
              },
              messageBody := omit
            }

    template MESSAGE_Request m_MESSAGE_Request_PMediaAuth_UE
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                pMediaAuthorization := m_pMediaAuthorization_fixedValue,
                require := p_require,
                route := p_route,
                supported := p_supported
              },
              messageBody := omit
            }

    template MESSAGE_Request m_MESSAGE_Request_PPreferred_UE
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported, template PPreferredID p_pPreferredID)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                pPreferredID := p_pPreferredID,
                require := p_require,
                route := p_route,
                supported := p_supported
              },
              messageBody := omit
            }
	
    template MESSAGE_Request m_MESSAGE_Request_1300Bytes_UE
            (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
              Via p_via, template Require p_require,
            template Route p_route,  template Supported p_supported)
            modifies m_MESSAGE_Request_Base
            :=
            {
              msgHeader :=
              {
                contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(m_MBody_longPlainText))},
                contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_plainText},
                pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a,
                require := p_require,
                route := p_route,
                //securityVerify := p_securityVerify,//TODO check when information will be known regarding security assosiation 
                supported := p_supported
              },
              messageBody := m_MBody_longPlainText
    }
	
    template NOTIFY_Request m_NOTIFY_Request_Xml_IMS_Conference
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, template MessageBody p_mb )
    modifies m_NOTIFY_Request_Base
    :=
    {
        msgHeader :=
        {
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_xmlAplication},
            event := {fieldName:=EVENT_E, eventType:="conference",eventParams:=omit},
            subscriptionState:={fieldName:=SUBSCRIPTION_STATE_E, subState:="active",substateParams:=omit},
            expires:={fieldName:=EXPIRES_E, deltaSec:="3600"}
			
        },
        messageBody := p_mb
    }
	
	
    template NOTIFY_Request m_NOTIFY_Request_Xml_IMS_RegInfo
    (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to,
            Via p_via, Contact p_contact, template MessageBody p_mb )
    modifies m_NOTIFY_Request_Base
    :=
    {
        msgHeader :=
        {	
            contact := p_contact,
            contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
            contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  c_xmlreginfoAplication},
            event := m_Event_reg,
            subscriptionState:=m_SubscriptionState_active,
            expires:={fieldName:=EXPIRES_E, deltaSec:="3600"}
			
        },
        messageBody := p_mb
    }