Newer
Older
* @author STF 346, STF366, STF368, STF369, STF450, STF471
* @version $Id$
* @desc This module defines SIP Templates for message, header, and
* structured types. <br>
* Note that any changes made to the definitions in this module
* may be overwritten by future releases of this library
* End users are encouraged to contact the distributers of this
* module regarding their modifications or additions.
* @remark Any additions to the templates shall follow the design rules
* and always modify base templates only;
* Existing templates shall not be changed or removed -
* change requests shall be made to http://t-ort.etsi.org
module LibSip_Templates
{
//LibSip
import from LibSip_SIPTypesAndValues all;
import from LibSip_SDPTypes all;
import from LibSip_Interface all;
import from LibSip_PIXITS all;
import from LibSip_XMLTypes all;
import from LibSip_SimpleMsgSummaryTypes all;
import from LibSip_MessageBodyTypes all;
import from NoTargetNamespace language "XSD" all
with {
extension "File:../xsd/Ims3gpp.xsd"
}
import from urn_ietf_params_xml_ns_conference_info language "XSD" all
with {
extension "File:../xsd/CONF.xsd"
}
import from http_uri_etsi_org_ngn_params_xml_simservs_pstn language "XSD" all
with {
extension "File:../xsd/PSTN.xsd"
}
import from http_uri_etsi_org_ngn_params_xml_simservs_xcap language "XSD" all
with {
extension "File:../xsd/SupplementaryServices.xsd"
}
import from http_uri_etsi_org_ngn_params_xml_simservs_mcid language "XSD" all
with {
extension "File:../xsd/MCID.xsd"
}
import from urn_ietf_params_xml_ns_resource_lists language "XSD" all
with {
extension "File:../xsd/ResourceList.xsd"
}
import from http_uri_etsi_org_ngn_params_xml_comm_div_info language "XSD" all
with {
extension "File:../xsd/CDIVN.xsd"
}
import from urn_3gpp_ns_cw_1_0 language "XSD" all
with {
extension "File:../xsd/cw.xsd"
}
group ModuleParameters {
modulepar boolean MB_LENGTH_FROM_ENCVAL:=true; //* to get length of message body from ecoded value
modulepar boolean USE_FX_FOR_XML_LENGTH:=false; //* To use external functions for calculation of XML message/body length
}//* group ModuleParameters
template(value) Addr_Union m_AddrUnion_NameAddr(template NameAddr p_nameAddr) :=
{
nameAddr := p_nameAddr
}
template(value) Addr_Union m_AddrUnion_DisplayAndSipUrl(template(value) charstring p_displayName, template(value) SipUrl p_addrSpec) :=
{
nameAddr := m_CallingAddr(p_displayName, p_addrSpec)
}
template(value) NameAddr m_NameAddr(template(omit) charstring p_displayName, template(value) SipUrl p_addrSpec) :=
{
displayName := p_displayName,
addrSpec := p_addrSpec
}
template(value) NameAddr m_CallingAddr(template(value) charstring p_displayName, template(value) SipUrl p_addrSpec) := m_NameAddr(p_displayName, p_addrSpec);
template(present) NameAddr mw_NameAddr(template charstring p_displayName, template(present) SipUrl p_addrSpec) :=
{
displayName := p_displayName,
addrSpec := p_addrSpec
}
template CommaParam_List mw_digestResponse(template GenericParam p_genericParam) :=
superset(p_genericParam); //* c_Integrity_protected_yes
template(value) SemicolonParam_List m_cpc :=
{{"cpc",PX_SIP_ISUP_CPC_VALUE}};
template(value) SemicolonParam_List m_ReasonParams
(template charstring p_cause, template charstring p_text) :=
{m_Cause(p_cause),m_Text(p_text)};
template(present) SemicolonParam_List mw_ReasonParams
(template charstring p_cause, template charstring p_text) :=
{mw_Cause_base(p_cause),mw_Text(p_text)};
template(value) ReasonValue m_ReasonValue_Base :=
token := "",
reasonParams := omit
template(present) ReasonValue mw_ReasonValue_Base :=
token := ?,
reasonParams := *
};
template(value) ReasonValue m_ReasonValue_param
(template(value) charstring p_cause, template(value) charstring p_text) modifies m_ReasonValue_Base :=
{
reasonParams := m_ReasonParams(p_cause,p_text)
};
template(present) ReasonValue mw_ReasonValue_param
(template charstring p_cause, template charstring p_text) modifies mw_ReasonValue_Base :=
{
reasonParams := mw_ReasonParams(p_cause,p_text)
};
template(value) ReasonValue m_ReasonValue
(template(value) charstring p_cause, template(value) charstring p_text) modifies m_ReasonValue_param :=
{
token := "Q.850"
};
template(present) ReasonValue mw_ReasonValue
(template charstring p_cause, template charstring p_text) modifies mw_ReasonValue_param :=
{
token := "Q.850"
};
template(value) ReasonValue m_ReasonValueSIP
(template(value) charstring p_cause, template(value) charstring p_text) modifies m_ReasonValue_param :=
{
token := "SIP"
};
template(present) ReasonValue mw_ReasonValueSIP
(template charstring p_cause, template charstring p_text) modifies mw_ReasonValue_param :=
{
token := "SIP"
};
template(present) RouteBody mw_routeBody (template(present) SipUrl p_sipurl):=
template(value) SentProtocol m_SentProtocol (charstring p_protocol) :=
{protocolName := c_sipName,
protocolVersion:= c_sipVersion,
transport:= p_protocol};
template(value) SipUrl m_SipUrl_currDomain_Base(in SipUserProfile p_userprofile) := //* SIP-URL of the test system on SIP side
scheme := c_sipScheme, //* contains "sip"
components := {sip:={
userInfo := //* optional
{
userOrTelephoneSubscriber := p_userprofile.publUsername,//* charstring
password := omit //* optional charstring
},
hostPort :=
{
host := omit, //* hostname, IPv4 or IPv6 as a charstring
portField := omit //* p_userprofile.currPort //* optional integer
}}},
urlParameters := omit,
headers := omit
}
template(value) SipUrl m_SipUrl_currDomain(in SipUserProfile p_userprofile) modifies m_SipUrl_currDomain_Base := //* SIP-URL of the test system on SIP side
{
components := {sip:={
hostPort :=
{
host := p_userprofile.homeDomain //* hostname, IPv4 or IPv6 as a charstring
}}}
}
template(value) SipUrl m_SipUrl_contactIpaddr(in SipUserProfile p_userprofile) modifies m_SipUrl_currDomain_Base := //* SIP-URL of the test system on SIP side
Loading
Loading full blame…