Tech-
invite
3GPP
space
IETF
space
SIP
↠
Examples
Grammars
Presence
⇾
SIP
SIP‑URI
SIP Headers
SIP P‑Headers
SDP
Generic URI
ABNF Notation
ABNF for SIP Headers
(14 of 93)
SIP Header — Contact
Section 20.10 of RFC 3261
and
ABNF in RFC 3261
See also:
Accept‑Contact
Reject‑Contact
Request‑Disposition
Contact
=
( "
Contact
" / "
m
" )
HCOLON
(
STAR
/ (
contact‑param
*(
COMMA
contact‑param
) ) )
contact-param
=
(
name‑addr
/
addr‑spec
) *(
SEMI
contact‑params
)
contact-params
=
c‑p‑q
/
c‑p‑expires
/
; see RFC 3261
feature‑param
/
; see
RFC 3840
–
Section 9
c‑p‑reg
/
c‑p‑instance
/
; see
RFC 5626
–
Section 10
temp‑gruu
/
pub‑gruu
/
; see
RFC 5627
–
Section 7
temp‑gruu‑cookie
/
; see
RFC 6140
–
Section 9.3
mp‑param
/
rc‑param
/
np‑param
/
; see
RFC 7044
–
Section 14.3
contact‑extension
c-p-q
=
"
q
"
EQUAL
qvalue
c-p-expires
=
"
expires
"
EQUAL
delta‑seconds
feature-param
=
enc‑feature‑tag
[
EQUAL
LDQUOT
(
tag‑value‑list
/
string‑value
)
RDQUOT
]
enc-feature-tag
=
base‑tags
/
other‑tags
base-tags
=
"
audio
" / "
automata
" / "
class
" / "
duplex
" / "
data
" / "
control
" / "
mobility
" / "
description
" / "
events
" / "
priority
" / "
methods
" / "
schemes
" / "
application
" / "
video
" / "
language
" / "
type
" / "
isfocus
" / "
actor
" / "
text
" / "
extensions
"
other-tags
=
"
+
"
ftag‑name
ftag-name
=
ALPHA
*(
ALPHA
/
DIGIT
/ "
!
" / "
'
" / "
.
" / "
-
" / "
%
" )
tag-value-list
=
tag‑value
*( "
,
"
tag‑value
)
tag-value
=
[ "
!
" ] (
token‑nobang
/
boolean
/
numeric
)
token-nobang
=
1*(
alphanum
/ "
-
" / "
.
" / "
%
" / "
*
" / "
_
" / "
+
" / "
`
" / "
'
" / "
~
" )
boolean
=
"
TRUE
" / "
FALSE
"
numeric
=
"
#
"
numeric‑relation
number
numeric-relation
=
"
>=
" / "
<=
" / "
=
" / (
number
"
:
" )
number
=
[ "
+
" / "
-
" ] 1*
DIGIT
[ "
.
" 0*
DIGIT
]
string-value
=
"
<
" *(
qdtext‑no‑abkt
/
quoted‑pair
) "
>
"
qdtext-no-abkt
=
LWS
/ %x21 / %x23‑3B / %x3D / %x3F‑5B / %x5D‑7E /
UTF8‑NONASCII
c-p-reg
=
"
reg-id
"
EQUAL
1*
DIGIT
; 1 to (2^31 - 1)
c-p-instance
=
"
+sip.instance
"
EQUAL
LDQUOT
"
<
"
instance-val
"
>
"
RDQUOT
instance-val
=
*
uric
temp-gruu
=
"
temp-gruu
"
EQUAL
LDQUOT
*(
qdtext
/
quoted‑pair
)
RDQUOT
pub-gruu
=
"
pub‑gruu
"
EQUAL
LDQUOT
*(
qdtext
/
quoted‑pair
)
RDQUOT
contact-extension
=
generic‑param