Newer
Older
template(present) From mw_From(template(present) SipUrl p_sipUrl) := {
addressField := { nameAddr := mw_NameAddr(*, p_sipUrl)},
fromParams:= *
}
template(present) From mw_From_NameAddr_SipUrl(template charstring p_dn, template(present) charstring p_user, template charstring p_host) :=
{
fieldName := FROM_E,
addressField := (mw_AddrUnion_Nameaddr(p_dn,p_user,p_host),mw_AddrUnion_SipUrl(p_user,p_host)),
fromParams := *
}
template(value) ViaBody m_ViaBody_currIpaddr(template(value) charstring branch_val, template(value) SipUserProfile p_userprofile) :=
{
sentProtocol := m_SentProtocol(PX_SIP_TRANSPORT),
sentBy:={host:=p_userprofile.currIpaddr, portField:= p_userprofile.currPort},
viaParams:={{id :=c_branchId,paramValue :=branch_val}}
}
template(present) ViaBody mw_ViaBody_interface(template(present) HostPort p_hostport) :=
{
sentProtocol := m_SentProtocol(PX_SIP_TRANSPORT),
sentBy:={host:=p_hostport.host, portField:= p_hostport.portField},
viaParams:=*
}
//TODO STF471 check superset, can it be applied to ViaBody (record of)
template(present) Via mw_Via(template(present) ViaBody p_viabody) :=
{
fieldName := VIA_E,
viaBody:= {*,p_viabody,*}//superset(p_viabody)
template(present) CallId mw_CallId_any :=
{
fieldName := CALL_ID_E,
callid := ?
}
template(present) Require mw_Require_Base :=
optionsTags := {}
};
template(present) Require mw_Require_not_100rel modifies mw_Require_Base :=
{
optionsTags := superset(complement(c_tag100rel))
template(present) Require mw_require_100rel modifies mw_Require_Base :=
{
optionsTags := superset(c_tag100rel)
};
//TODO STF471 check superset, can it be applied to RouteBody (record of)
template(present) RecordRoute mw_recordroute (template(present) RouteBody p_routeBody):=
{
fieldName := RECORD_ROUTE_E,
routeBody := {*,p_routeBody,*}//superset(p_routeBody)
template(present) Route mw_route (template(present) RouteBody_List p_routeBody):=
{
fieldName := ROUTE_E,
routeBody := p_routeBody
template(present) StatusLine mw_statusLine(template(present) integer p_statusCode) :=
{
sipVersion:=c_sipNameVersion,
statusCode:=p_statusCode,
reasonPhrase:=?
template(present) Supported mw_Supported_Base :=
{
fieldName := SUPPORTED_E,
optionsTags := {}
}
template(present) Supported mw_Supported_100rel_prec modifies mw_Supported_Base :=
{
optionsTags:= superset(c_tag100rel, c_tagPrecond)
}
template(present) Supported mw_Supported_100rel modifies mw_Supported_Base :=
template(present) Supported mw_Supported_fromChange modifies mw_Supported_Base :=
template(present) UserToUser mw_UserToUserData(template(present) charstring p_U2UData):=
{
fieldName := USER_TO_USER_E,
uuiData := p_U2UData,
uuiParam := ?
}
template(present) Contact mw_Contact_conference :=
{
fieldName := CONTACT_E,
contactBody :=
{
contactAddresses :=
{
{
addressField := {
nameAddr := {
displayName := *,
addrSpec := {
scheme := ?,
urlParameters := {{"isfocus",*},*},
headers := *
}
}
},
contactParams := *
template(value) AlertInfo m_AlertInfo_Base := {
alertInfoBody := {}
}
template(value) AlertInfo m_AlertInfo(template(value) charstring p_urn) modifies m_AlertInfo_Base := {
alertInfoBody := {{p_urn, omit}}
}
template(present) AlertInfo mw_AlertInfo(template(present) charstring p_urn) modifies m_AlertInfo_Base := {
alertInfoBody := superset({p_urn, omit})
}
} //* end of group HeaderFieldTemplates
group MessageTemplates {
group dummy_templates {
group dummy_parameter_send {
template(value) RequestLine m_requestLine_dummy(template(value) Method p_method) :=
sipVersion := c_sipNameVersion
}
template(value) MessageHeader m_msgHeader_dummy :=
{
accept := omit,
acceptContact := omit,
acceptEncoding := omit,
acceptLanguage := omit,
alertInfo := omit,
allow := omit,
allowEvents := omit, //* RFC3265
authenticationInfo := omit,
authorization := omit,
callId := c_empty_CallId,
callInfo := omit,
contact := omit,
contentDisposition := omit,
contentEncoding := omit,
contentLanguage := omit,
contentLength := {fieldName := CONTENT_LENGTH_E, len:= 0},
contentType := omit, //* if message body present m, else not present
cSeq := c_empty_cSeq,
date := omit,
errorInfo := omit,
event := omit, //* RFC3265
expires := omit,
fromField := c_empty_From,
bergengruen
committed
geolocation := omit,
geolocationRouting := omit,
historyInfo := omit, //* RFC4244
inReplyTo := omit,
maxForwards := c_maxForwards70,
mimeVersion := omit,
minExpires := omit,
minSE := omit, //* RFC4028
pAccessNetworkInfo := omit, //* RFC3455
pAssertedID := omit,
pAssertedService := omit,
pAssociatedURI := omit,
path := omit, //* RFC3327
pCalledPartyID := omit, //* RFC3455
pChargingFunctionAddresses := omit, //* RFC3455
pChargingVector := omit, //* RFC3455
pEarlyMedia := omit, //* RFC5009
pMediaAuthorization := omit, //* RFC3313
bergengruen
committed
pPreferredService := omit,
priority := omit,
privacy := omit,
proxyAuthenticate := omit,
proxyAuthorization := omit,
proxyRequire := omit,
pVisitedNetworkID := omit, //* RFC3455
rAck := omit,
rSeq := omit,
reason := omit,
recordRoute := omit,
requestDisposition := omit,
referredBy := omit, //* RFC3892 - REFER method
referTo := omit, //* RFC3515 - REFER method
referSub := omit, //* RFC4488 - REFER method
replaces := omit, //* RFC3891
replyTo := omit,
require := omit,
retryAfter := omit,
route := omit,
securityClient := omit, //* RFC3329
securityServer := omit, //* RFC3329
securityVerify := omit, //* RFC3329
serviceRoute := omit, //* RFC3608
sessionExpires := omit, //* RFC4028
sessionId := omit,
sipETag := omit,
sipIfMatch := omit,
subscriptionState := omit, //* RFC3265
supported := omit,
timestamp := omit,
toField := c_empty_To,
unsupported := omit,
userAgent := omit,
via := c_empty_Via,
warning := omit,
wwwAuthenticate := omit,
undefinedHeader_List := omit
}
} //* group dummy_parameter_send
group dummy_parameter_receive {
template(present) RequestLine mw_requestLine_dummy(Method p_method) :=
requestUri := ?,
sipVersion := c_sipNameVersion
}
template(present) MessageHeader mw_msgHeader_dummy :=
{
accept := *,
acceptContact := *,
acceptEncoding := *,
acceptLanguage := *,
alertInfo := *,
allow := *,
allowEvents := *, //* RFC3265
authenticationInfo := *,
authorization := *,
callId := ?,
callInfo := *,
contact := *,
contentDisposition := *,
contentEncoding := *,
contentLanguage := *,
contentLength := ?,
contentType := *,
cSeq := ?,
date := *,
errorInfo := *,
event := *, //* RFC3265
expires := *,
fromField := ?,
bergengruen
committed
geolocation := *,
historyInfo := *, //* RFC4244
mimeVersion := *,
minExpires := *,
minSE := *, //* RFC4028
pAccessNetworkInfo := *, //* RFC3455
pAssertedID := *,
pAssertedService := *,
pAssociatedURI := *,
path := *, //* RFC3327
pCalledPartyID := *, //* RFC3455
pChargingFunctionAddresses := *, //* RFC3455
pChargingVector := *, //* RFC3455
pEarlyMedia := *, //* RFC5009
pMediaAuthorization := *, //* RFC3313
bergengruen
committed
pPreferredService := *,
priority := *,
privacy := *,
proxyAuthenticate := *,
proxyAuthorization := *,
proxyRequire := *,
pVisitedNetworkID := *, //* RFC3455
rAck := *,
rSeq := *,
reason := *,
recordRoute := *,
requestDisposition := *,
referredBy := *, //* RFC3892 - REFER method
referTo := *, //* RFC3515 - REFER method
referSub := *, //* RFC4488 - REFER method
replaces := *, //* RFC 3891
replyTo := *,
require := *,
retryAfter := *,
route := *,
securityClient := *, //* RFC3329
securityServer := *, //* RFC3329
securityVerify := *, //* RFC3329
serviceRoute := *, //* RFC3608
sessionExpires := *, //* RFC4028
sessionId := *,
sipETag := *,
sipIfMatch := *,
subscriptionState := *, //* RFC3265
supported := *,
timestamp := *,
toField := ?,
unsupported := *,
userAgent := *,
via := ?,
warning := *,
wwwAuthenticate := *,
undefinedHeader_List := *
}
}//* end group dummy_parameter_receive
group dummy_request_templates_send {
template(value) ACK_Request m_ACK_Dummy :=
requestLine := m_requestLine_dummy(ACK_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) BYE_Request m_BYE_Dummy :=
requestLine := m_requestLine_dummy(BYE_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) CANCEL_Request m_CANCEL_Dummy :=
requestLine := m_requestLine_dummy(CANCEL_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) INFO_Request m_INFO_Dummy :=
requestLine := m_requestLine_dummy(INFO_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) INVITE_Request m_INVITE_Dummy :=
requestLine := m_requestLine_dummy(INVITE_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) MESSAGE_Request m_MESSAGE_Dummy :=
requestLine := m_requestLine_dummy(MESSAGE_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) NOTIFY_Request m_NOTIFY_Dummy :=
requestLine := m_requestLine_dummy(NOTIFY_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) OPTIONS_Request m_OPTIONS_Dummy :=
{
requestLine := m_requestLine_dummy(OPTIONS_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) PRACK_Request m_PRACK_Dummy :=
requestLine := m_requestLine_dummy(PRACK_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) PUBLISH_Request m_PUBLISH_Dummy :=
requestLine := m_requestLine_dummy(PUBLISH_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) REGISTER_Request m_REGISTER_Dummy :=
requestLine := m_requestLine_dummy(REGISTER_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) REFER_Request m_REFER_Dummy :=
requestLine := m_requestLine_dummy(REFER_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) SUBSCRIBE_Request m_SUBSCRIBE_Dummy :=
requestLine := m_requestLine_dummy(SUBSCRIBE_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
template(value) UPDATE_Request m_UPDATE_Dummy :=
requestLine := m_requestLine_dummy(UPDATE_E),
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
}//* end group dummy_request_templates_send
group dummy_request_templates_receive{
template(present) ACK_Request mw_ACK_Dummy :=
requestLine := mw_requestLine_dummy(ACK_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) BYE_Request mw_BYE_Dummy :=
requestLine := mw_requestLine_dummy(BYE_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) CANCEL_Request mw_CANCEL_Dummy :=
requestLine := mw_requestLine_dummy(CANCEL_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) INFO_Request mw_INFO_Dummy :=
requestLine := mw_requestLine_dummy(INFO_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) INVITE_Request mw_INVITE_Dummy :=
requestLine := mw_requestLine_dummy(INVITE_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) MESSAGE_Request mw_MESSAGE_Dummy :=
requestLine := mw_requestLine_dummy(MESSAGE_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) OPTIONS_Request mw_OPTIONS_Dummy :=
{
requestLine := mw_requestLine_dummy(OPTIONS_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) NOTIFY_Request mw_NOTIFY_Dummy :=
requestLine := mw_requestLine_dummy(NOTIFY_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) PRACK_Request mw_PRACK_Dummy :=
requestLine := mw_requestLine_dummy(PRACK_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) PUBLISH_Request mw_PUBLISH_Dummy :=
requestLine := mw_requestLine_dummy(PUBLISH_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) REFER_Request mw_REFER_Dummy :=
requestLine := mw_requestLine_dummy(REFER_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) REGISTER_Request mw_REGISTER_Dummy :=
requestLine := mw_requestLine_dummy(REGISTER_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) SUBSCRIBE_Request mw_SUBSCRIBE_Dummy :=
requestLine := mw_requestLine_dummy(SUBSCRIBE_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
template(present) UPDATE_Request mw_UPDATE_Dummy :=
requestLine := mw_requestLine_dummy(UPDATE_E),
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
}//* end group dummy_request_templates_receive
group dummy_response_templates_send{
template(value) Response m_Response_Dummy :=
{
statusLine := c_statusLine100,
msgHeader := m_msgHeader_dummy,
messageBody := omit,
payload := omit
}
} //* group dummy_response_templates_send
group dummy_response_templates_receive{
template(present) Response mw_Response_Dummy :=
{
statusLine := ?,
msgHeader := mw_msgHeader_dummy,
messageBody := *,
payload := *
}
} //* group dummy_response_templates_receive
}
group base_templates{
//STF471 Use these 3 templates in LibIMS too
template(value) CSeq m_cSeq(template(value) integer p_seqNumber, template(value) charstring p_method) := {
fieldName:=CSEQ_E,
seqNumber:= p_seqNumber,
method:= p_method
}
template(value) ContentLength m_contentLength(template(value) integer p_len) := {
fieldName := CONTENT_LENGTH_E,
len := p_len
}
template(value) ContentType m_contentType(template(value) charstring p_mediaType) := {
fieldName := CONTENT_TYPE_E,
mediaType := p_mediaType
}
template(present) ContentType mw_contentType(in template(present) charstring p_mediaType) := {
fieldName := CONTENT_TYPE_E,
mediaType := p_mediaType
}
group request_send {
template(value) ACK_Request m_ACK_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_ACK_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := m_cSeq(p_cSeq.seqNumber, "ACK"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "ACK"},
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) ACK_Request m_ACK_Request_withRecordRoute (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(value) Route p_route) modifies m_ACK_Request_Base :=
{
msgHeader :=
{
route := p_route,
//recordRoute := p_recordRoute,
contentLength := m_contentLength(0) // STF471 {CONTENT_LENGTH_E, 0}
template(value) BYE_Request m_BYE_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_BYE_Dummy :=
{
requestLine :=
{
},
msgHeader :=
{
callId := p_callId,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) CANCEL_Request m_CANCEL_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq, template(value) From p_from, template(value) To p_to,
template(value) Via p_via) modifies m_CANCEL_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) INFO_Request m_INFO_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq, template(value) From p_from, template(value) To p_to,
template(value) Via p_via) modifies m_INFO_Dummy :=
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) INVITE_Request m_INVITE_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(value) Contact p_contact) modifies m_INVITE_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
contact := p_contact,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) MESSAGE_Request m_MESSAGE_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq, template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_MESSAGE_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) NOTIFY_Request m_NOTIFY_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_NOTIFY_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := m_cSeq(p_cSeq.seqNumber, "NOTIFY"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "NOTIFY"},
fromField := p_from,
toField := p_to,
via := p_via
template(value) OPTIONS_Request m_OPTIONS_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_OPTIONS_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := m_cSeq(p_cSeq.seqNumber, "OPTIONS"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "OPTIONS"},
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) PRACK_Request m_PRACK_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(value) RAck p_RAck)
modifies m_PRACK_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := m_cSeq(p_cSeq.seqNumber, "PRACK"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PRACK"},
fromField := p_from,
rAck := p_RAck,
toField := p_to,
via := p_via
},
messageBody := omit
}
//TODO: parameters "p_RAck" is not used, intentional or bug?
template(value) PUBLISH_Request m_PUBLISH_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(omit) Event p_event, template(omit) RAck p_RAck, template(value) MessageBody p_mb)
modifies m_PUBLISH_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
contentLength := m_contentLength(f_MessageBodyLength(p_mb)), // STF471 {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
contentType := m_contentType(c_plainText), // STF471 {fieldName := CONTENT_TYPE_E, mediaType := c_plainText/*c_sdp*/},
cSeq := m_cSeq(p_cSeq.seqNumber, "PUBLISH"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PUBLISH"},
rAck := p_RAck,//TODO: added by STF471
fromField := p_from,
toField := p_to,
via := p_via
},
messageBody := p_mb
}
template(value) REFER_Request m_REFER_Request_Base (
template(value) SipUrl p_requestUri,
template(omit) CallId p_callId,
template(omit) CSeq p_cSeq,
template(omit) Contact p_contact,
template(value) From p_from,
template(value) To p_to,
template(value) Via p_via,
template(omit) ReferTo p_referTo,
template(omit) ReferredBy p_referredBy)
modifies m_REFER_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
contact := p_contact,
cSeq := m_cSeq(p_cSeq.seqNumber, "REFER"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "REFER"},
fromField := p_from,
referTo := p_referTo,
referredBy := p_referredBy,
toField := p_to,
via := p_via
}
}
template(value) REFER_Request m_REFER_Request_replaces (
template(value) SipUrl p_requestUri,
template(omit) CallId p_callId,
template(omit) CSeq p_cSeq,
template(omit) Contact p_contact,
template(value) From p_from,
template(value) To p_to,
template(value) Via p_via,
template(value) ReferTo p_referTo,
template(value) ReferredBy p_referredBy,
template(value) Replaces p_replaces,
template(omit) Require p_require
) modifies m_REFER_Request_Base := {
msgHeader :=
{
replaces := p_replaces,
require := p_require
}
}
template(value) REGISTER_Request m_REGISTER_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(omit) Contact p_contact, template(omit) Authorization p_authorization) modifies m_REGISTER_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
authorization := p_authorization,
callId := p_callId,
contact := p_contact,
cSeq := p_cSeq,
fromField := p_from,
toField := p_to,
supported := {
fieldName := SUPPORTED_E, optionsTags := {"path"}
},
via := p_via
}
}
template(value) SUBSCRIBE_Request m_SUBSCRIBE_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId,
template(omit) CSeq p_cSeq, template(value) From p_from, template(value) To p_to, template(value) Via p_via) modifies m_SUBSCRIBE_Dummy :=
{
requestLine :=
{
requestUri := p_requestUri
},
msgHeader :=
{
callId := p_callId,
cSeq := m_cSeq(p_cSeq.seqNumber, "SUBSCRIBE"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "SUBSCRIBE"},
fromField := p_from,
toField := p_to,
via := p_via
}
}
template(value) UPDATE_Request m_UPDATE_Request_Base (template(value) SipUrl p_requestUri, template(omit) CallId p_callId, template(omit) CSeq p_cSeq,
template(value) From p_from, template(value) To p_to, template(value) Via p_via, template(omit) Contact p_contact, template(omit) MessageBody p_mb) modifies m_UPDATE_Dummy :=
{
requestLine :=
{
},
msgHeader :=
{
callId := p_callId,
contact := p_contact,
contentLength := m_contentLength(f_MessageBodyLength(p_mb)), // STF471 {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
contentType := m_contentType(c_sdpApplication), // STF471 {fieldName := CONTENT_TYPE_E, mediaType := c_sdp},
cSeq := m_cSeq(p_cSeq.seqNumber, "UPDATE"), //STF471 {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "UPDATE"},
fromField := p_from,
toField := p_to,
via := p_via
},
messageBody := p_mb
}
} //* end of group message_send
group request_receive {
template(present) ACK_Request mw_ACK_Request_Base (template CallId p_callId) modifies mw_ACK_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) BYE_Request mw_BYE_Request_Base(template CallId p_callId) modifies mw_BYE_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) CANCEL_Request mw_CANCEL_Request_Base (template CallId p_callId) modifies mw_CANCEL_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) INFO_Request mw_INFO_Request_Base(template CallId p_callId) modifies mw_INFO_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) INVITE_Request mw_INVITE_Request_Base modifies mw_INVITE_Dummy :=
{
requestLine :=
{
method := INVITE_E
}
}
template(present) MESSAGE_Request mw_MESSAGE_Request_Base modifies mw_MESSAGE_Dummy :=
{
msgHeader :=
{
template(present) NOTIFY_Request mw_NOTIFY_Request_Base (template CallId p_callId) modifies mw_NOTIFY_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) OPTIONS_Request mw_OPTIONS_Request_Base (template CallId p_callId) modifies mw_OPTIONS_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) PRACK_Request mw_PRACK_Request_Base(template CallId p_callId) modifies mw_PRACK_Dummy :=
{
msgHeader :=
{
callId := p_callId
}
}
template(present) PUBLISH_Request mw_PUBLISH_Request_Base(template CallId p_callId) modifies mw_PUBLISH_Dummy :=