Under this proposal, a client or proxy can communicate context through the use of a distinctive Request-URI. This document continues with examples of how ...
[RFCHome][TEXT|PDF|HTML][Tracker][IPR][Infopage]INFORMATIONALNetworkWorkingGroupB.Campbell
RequestforComments:3087R.Sparks
Category:Informationaldynamicsoft
April2001
ControlofServiceContextusingSIPRequest-URI
StatusofthisMemo
ThismemoprovidesinformationfortheInternetcommunity.Itdoes
notspecifyanInternetstandardofanykind.Distributionofthis
memoisunlimited.
CopyrightNotice
Copyright(C)TheInternetSociety(2001).AllRightsReserved.
Abstract
ThismemoprovidesinformationfortheInternetcommunity.It
describesausefulwaytoconceptualizetheuseofthestandardSIP
(SessionInitiationProtocol)Request-URI(UniformResource
Identifier)thattheauthorsandmanymembersoftheSIPcommunity
thinkissuitableasaconvention.Itdoesnotdefineanynew
protocolwithrespecttoRFC2543.
Inaconventionaltelephonyenvironment,extendedservice
applicationsoftenusecallstateinformation,suchascallingparty,
calledparty,reasonforforward,etc,toinferapplicationcontext.
InaSIP/2.0call,muchofthisinformationmaybeeithernon-
existentorunreliable.Thisdocumentproposesamechanismto
communicatecontextinformationtoanapplication.Underthis
proposal,aclientorproxycancommunicatecontextthroughtheuse
ofadistinctiveRequest-URI.Thisdocumentcontinueswithexamples
ofhowthismechanismcouldbeusedinavoicemailapplication.
Campbell&SparksInformational[Page1]
RFC3087SIPServiceControlApril2001
TableofContents
1.Introduction.......................3
2.ExampleApplication...................3
2.1UsingURIstoControlVoiceMailServiceBehavior....3
3.VoiceMailScenarioDescriptions.............5
3.1Deposits.........................5
3.1.1DirectRequesttoDeposittoaparticularmailbox....5
3.1.1.1SIPsource........................5
3.1.1.2ArbitraryPSTNsource..................5
3.1.1.3RecognizedPSTNsource..................6
3.1.2DirectRequesttoDeposit,mailboxtobedetermined...6
3.1.2.1SIPsource........................6
3.1.2.2PSTNsource.......................6
3.1.2.3IndirectRequesttoDeposit,duetofind-meproxydecision6
3.2Retrievals........................7
3.2.1RequesttoRetrievefromaparticularmailbox......7
3.2.1.1TrustedSIPsource....................7
3.2.1.2AuthenticatedSIPsource.................7
3.2.1.3UnauthenticatedSIPsource................7
3.2.1.4PSTNsource.......................7
3.2.2RequesttoRetrieve,mailboxtobedetermined......7
3.2.2.1SIPsource........................7
3.2.2.2ArbitraryPSTNsource..................8
3.2.2.3RecognizedPSTNsource..................8
4.VoiceMailCallFlowExamples..............8
4.1GenericScenario.....................8
4.1.1Directcalltothevoicemailsystem...........8
4.2MessageDepositScenarios................13
4.2.1Calltoknownsubscriberforwardedonnoanswer.....13
4.2.2Calltoknownsubscriberforwardedonbusy........19
4.2.3Directcalltoasubscriber'smailbox..........24
4.3MessageRetrievalScenarios...............29
4.3.1Calltoretrievemessagesbelievedtobefromaknown
subscriber........................29
4.3.2Calltoretrievemessagesfromanauthenticatedsubscriber33
5.SecurityConsiderations.................38
6.Acknowledgments.....................38
References........................38
Authors'Addresses....................38
FullCopyrightStatement.................39
Campbell&SparksInformational[Page2]
RFC3087SIPServiceControlApril2001
1.Introduction
Acommunicationserviceshouldmakeuseoftheinformationithasat
handwhenbeingaccessed.Forexample,inmostcurrentvoicemail
implementations,asubscriberretrievingmessagesfromhisowndesk
doesnothavetoreenterhisvoicemailboxnumber-theservice
assumesthatthestorebeingaccessedistheoneassociatedwiththe
endpointbeingusedtoaccesstheservice.Someservicesallowthe
usertovalidatethisassumptionusingIVRtechniquesbefore
promptingforaPIN.
Thisconceptofcontext-awarenesscanbecapturedinavoicemail
serviceimplementingSIPasdefinedinRFC2543[1],without
modification,throughthestandarduseofthatprotocol'sRequest-
URI.Furthermore,theconceptisapplicabletoanySIP-basedservice
whereinitialapplicationstateshouldbedeterminedfromcontext.
ThisconceptisausageconventionofstandardSIPasdefinedinRFC
2543[1]anddoesnotmodifyorextendthatprotocolinanyway.
2.ExampleApplication
Inthisdocument,weusetheexampleofvoicemailtoillustratethe
technique.Onemotivationforapplyingthistechniquetothis
problemisallowingaproxyorlocationservertocontroltheinitial
stateofavoiceservice.Forexample,avoiceclientmightregister
acontactlistendingwiththeURLthatwouldacceptvoicemessages
fortheclient.
2.1UsingURIstoControlVoiceMailServiceBehavior
Manyconventionalvoicemailsystemsusecallstateinformation,such
asthecallingparty,calledparty,reasonforforward,etc,to
decidetheinitialapplicationstate.Forexample,itmightplayone
outgoingmessageifthecallreachedvoicemailbecausethecalled
partydidnotanswerandanotherifthelinewasbusy.Itdecides
whomthemessageisforbasedonthecalledpartyinformation.If
thecalloriginatedfromasubscriber'sphonenumber,itmight
authenticatethecallerandthengodirectlytothemessageretrieval
andaccountmaintenancemenu.
Whenanewsubscriberisaddedtoasystem,asetofidentitiescould
begenerated,eachgivenauniquesipURI.Thefollowingtablesshow
someoftheidentitiesthatmightbegenerated(itisnot
exhaustive).TheexampleschemesshowthattheURIscould,butdon't
necessarilyhaveto,havemnemonicvalue.
Campbell&SparksInformational[Page3]
RFC3087SIPServiceControlApril2001
Inpracticalapplications,itisimportantthatanapplicationdoes
notapplysemanticrulestothevariousURIs.Instead,itshould
allowanyarbitrarystringtobeprovisioned,andmapthestringto
thedesiredbehavior.Theownerofthesystemmaychooseto
provisionmnemonicstrings,buttheapplicationshouldnotrequire
it.Inanylargeinstallation,thesystemownerislikelytohave
pre-existingrulesformnemonicURIs,andanyattemptbyan
applicationtodefineitsownrulesmaycreateaconflict.Forour
example,thismeansavoicemailsystemshouldallowanarbitrarymix
ofURLsfromtheseschemes,oranyotherschemethatrendersvalid
SIPURIstobeprovisioned,ratherthanenforceoneparticular
scheme.
URIIdentityExampleScheme1
ExampleScheme2
ExampleScheme3
Depositwithsip:[email protected]
standardgreetingsip:[email protected]
sip:[email protected];mode=deposit
Depositwithonsip:sub-rjs-deposit-busy.vm.wcom.com
phonegreetingsip:[email protected]
sip:[email protected];mode=3991243
Depositwithsip:[email protected]
specialgreetingsip:[email protected]
sip:[email protected];mode=sg
Retrieve-SIPsip:[email protected]
authenticationsip:[email protected]
sip:[email protected];mode=retrieve
Retrieve-promptsip:sub-rjs-retrieve-inpin.vm.wcom.com
forPINin-bandsip:[email protected]
sip:[email protected];mode=inpin
Whenaserviceisfirstsetup,identitiessuchasthefollowing
couldbecreated.
URIIdentityExampleScheme1
ExampleScheme2
ExampleScheme3
Deposit-sip:[email protected]
identifytargetsip:[email protected]
mailboxbyTo:sip:[email protected]
Campbell&SparksInformational[Page4]
RFC3087SIPServiceControlApril2001
Retrieve-sip:[email protected]
identifytargetsip:[email protected]
mailboxbySIPsip:[email protected]
authentication
Deposit-promptsip:[email protected]
fortargetsip:[email protected]
mailboxin-bandsip:[email protected];mode=inband
Retrieve-promptsip:[email protected]
fortargetsip:[email protected]
mailboxandPINsip:[email protected];mode=inband
in-band
InadditiontoprovidingthissetofURIstothesubscriber(touse
asheseesfit),anintegratedserviceprovidercouldaddtheseto
thesetofcontactsinafind-meproxy.Theproxycouldthenroute
callstotheappropriateURIbasedontheoriginoftherequest,the
subscriber'spreferencesandcurrentstate.
3.VoiceMailScenarioDescriptions
Ineachofthesescenarios,thePSTNgatewayisconfiguredto
communicateonlywithaparticularproxy-registrar.
3.1Deposits
3.1.1DirectRequesttoDeposittoaparticularmailbox
3.1.1.1SIPsource
ASIPclientthatknewtheURIforaparticulardepositmailbox
(sip:[email protected])couldplaceadirectinvitationto
thevoicemailservice,orthroughaprotectingproxy.Theproxy
couldrestrictaccesstodepositidentitieswithspecialgreetingsby
authenticatingtherequester.
3.1.1.2ArbitraryPSTNsource
Thegateway'sproxywouldmapacallfromanunrecognizedPSTNnumber
toanumberassociatedwithasubscriber'smailboxintoaninviteto
thedepositwithstandardgreetingURI(sip:sub-rjs-
[email protected]).
Campbell&SparksInformational[Page5]
RFC3087SIPServiceControlApril2001
3.1.1.3RecognizedPSTNsource
Thegateway'sproxywouldmapacallfromarecognized(exactor
patternmatch)PSTNnumbertoanumberassociatedwithasubscriber's
mailboxintoaninvitetotheappropriatespecialgreetingURI
(sip:[email protected]).Thegateway'sabilityto
identifythecallingparty(usingcallingpartynumber)istrusted,
sonofurtherauthenticationoftherequesterisperformed.
3.1.2DirectRequesttoDeposit,mailboxtobedetermined
3.1.2.1SIPsource
Avoicemailserviceoritsprotectingproxycouldexposeageneric
depositURLforusewhenacallerwishedtogodirectlytovoice
mail.TheservicewouldlikelyplayanIVRdialogtodeterminewhat
messagestoretodepositamessageinto.
AnapplicationdesignermaybetemptedtoattempttomatchtheTo:
andFrom:headersonacalltoinferinformation.However,this
approachcouldcausecomplicationswhenmultipleproxyforwardsoccur
inacall.Forexample,AcallsB,whohasallcallsforwardedtoC.
Cforwardsthecalltohervoicemailservice.Ifthevoicemail
servicematchestheTo:headertodeterminethemessagestore,it
willgettheinformationforBinsteadofC.Butthereisnoreason
toassumethatC'svoicemailservicehasanyknowledgeofB.
3.1.2.2PSTNsource
Thegateway'sproxywouldmapacallfromanunrecognizedPSTNnumber
tothetoplevelvoicemailserviceaccessnumbertoaninvitetothe
Deposit-promptfortargetmailboxin-bandURI(sip:deposit-
[email protected]).Gettingthecalltothetargetmailbox
wouldproceedasintheSIPsourcecase.
3.1.2.3IndirectRequesttoDeposit,duetofind-meproxydecision
Afind-meproxycouldmapaninvitationtoasubscriber
(sip:[email protected])totheappropriatevoicemailserviceURI
dependingonthesubscriber'scurrentstate.ThenormaldepositURI
couldbechosenifthesubscriber'scontactlisthasbeenotherwise
exhaustedwithnoanswer.Thebusy-announcementURIwouldbechosen
whenabusyeverywhereresponseisreceivedfromoneofthecontacts.
ADNDannouncementURIcouldbeselectedifthesubscriberhad
activatedDND.Callstosip:[email protected]
torolltosip:[email protected]
Campbell&SparksInformational[Page6]
RFC3087SIPServiceControlApril2001
3.2Retrievals
3.2.1RequesttoRetrievefromaparticularmailbox
3.2.1.1TrustedSIPsource
Arequesttoretrievethecontentsofaparticularmailbox(sip:sub-
[email protected])comingfromatrustedsourcecouldbe
honoredwithoutfurtherauthenticationchecks.Atrustedsourceis
onewithwhichthevoicemailservicehassecurecommunications,and
towhichitiswillingtodelegateauthentication.Thiscouldbethe
service'sprotectingproxyforexample.
3.2.1.2AuthenticatedSIPsource
Aservice,oritsprotectingproxy,couldchoosetohonoraretrieve
requestforaparticularmailbox(sip:[email protected])
basedonSIPauthentication.IfSIPlevelauthenticationfailed,the
serviceorproxycouldbeconfiguredtosendthecalltothein-band
pinpromptingURI(sip:[email protected]).
3.2.1.3UnauthenticatedSIPsource
Aservice,oritsprotectingproxy,receivingaretrieverequestfor
aparticularmailbox(sip:[email protected])withnoother
methodofauthenticatingtherequestorcouldsendtherequesttothe
in-bandpinpromptingURI(sip:[email protected]).
3.2.1.4PSTNsource
Thisscenarioassumesthattheserviceprovider'snetworkhasbeen
configuredsuchthataPSTNnumbercouldbedialedexplicitlyfor
retrievingmessagesfromaparticularmailbox.Suchservices
currentlyexist,butarenotcommon.Insuchanetwork,the
gateway'sproxywouldmapthecalltothein-bandpinpromptingURI
(sip:[email protected]).
3.2.2RequesttoRetrieve,mailboxtobedetermined
3.2.2.1SIPsource
AsintheRequesttoDepositscenario,whenaservicereceivesa
requestforthetoplevelretrieveURIitwouldmostlikelyneedto
usein-bandIVRtechniquestodeterminethetargetmailboxand
authenticatethecaller.
Campbell&SparksInformational[Page7]
RFC3087SIPServiceControlApril2001
3.2.2.2ArbitraryPSTNsource
ThisscenarioassumesthereisasinglePSTNnumberthatsubscribers
dialtoaccessthevoicemailservicetoretrievemessages.Thisis
themostcommonaccessmethodprovidedbycurrentvoicemail
services.
Thegateway'sproxywouldmapacalltothetoplevelPSTNnumberto
thetoplevelretrievein-bandpromptingURI(sip:retrieve-
[email protected]).Oncethesystemidentifiesthetargetmailbox,the
callwouldbetransferredtotheappropriatein-bandpinprompting
URI(sip:[email protected]).
3.2.2.3RecognizedPSTNsource
ThisscenarioalsoassumesthereisasinglePSTNnumberthat
subscribersdialtoaccessthevoicemailservicetoretrieve
messages.
Thegateway'sproxywouldrecognizethecallingpartynumberasa
subscriber,andmapthecalltothesubscriber'sin-bandprompting
URI(sip:[email protected])
4.VoiceMailCallFlowExamples
Thefollowingsectiondescribessomeexamplecallflowsfora
hypotheticalvoicemailservice,withthehostnameofvm.wcom.com.
Allthecallflowsassumethataproxyprotectsthevoicemail
serviceandthatatrustrelationshipexistsbetweenthevoicemail
serviceandtheproxy.
4.1GenericScenario
4.1.1Directcalltothevoicemailsystem
UserAcallsthevoicemailsystemdirectly.Thevoicemailsystem
invokesthetop-levelmenu,whichmightpromptthecallerforan
extensionorthefirstfewlettersofaname.
Campbell&SparksInformational[Page8]
RFC3087SIPServiceControlApril2001
UserAProxyVMService
|||
|INVITEF1||
|------------------>||
||INVITEF2|
|(100Trying)F3|---------------------->|
||ACKF9|
||---------------------->|
|||
|RTPEstablished-Playtoplevelmenu|
||
|||
|BYEF10||
|------------------>|BYEF11|
||---------------------->|
|||
||200OKF12|
||ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserA",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cc4e341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
Campbell&SparksInformational[Page9]
RFC3087SIPServiceControlApril2001
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
180RingingSIP/2.0180Ringing
F4Via:SIP/2.0/UDPwcom.com:5060;branch=1
VM->ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
Campbell&SparksInformational[Page10]
RFC3087SIPServiceControlApril2001
180RingingSIP/2.0180Ringing
F5Via:SIP/2.0/UDPhere.com:5060
Proxy->AFrom:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
200OKF6SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Contact:VoiceMailSystem
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF7SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
ContactVoiceMailSystem
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
Campbell&SparksInformational[Page11]
RFC3087SIPServiceControlApril2001
ACKF8ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF9ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
/*RTPstreamsareestablishedbetweenAandVM.VM
systemstartsIVRdialogfortoplevelmenu*/
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF10BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF11BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF12SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
Campbell&SparksInformational[Page12]
RFC3087SIPServiceControlApril2001
CSeq:2BYE
Content-Length:0
200OKF13SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
4.2MessageDepositScenarios
4.2.1Calltoknownsubscriberforwardedonnoanswer
UserAattemptstocallUserB,whodoesnotanswer.Thecallis
forwardedtoUserB'smailbox,andthevoicemailsystemplaysUserB's
outgoingmessageforaring-no-answer.TheflowassumesthattheURL
of"sip:[email protected]"tothedesiredbehaviorfor
depositingamessageonaforward-no-answer.
Campbell&SparksInformational[Page13]
RFC3087SIPServiceControlApril2001
UserAProxyUserBVMSystem
||||
|INVITEF1|||
|---------------->|INVITEF2||
||----------------->||
|(100Trying)F3|||
|||
||||
||200OKF7||
|||
||||
||200OKF9||
|200OKF10||ACKF12||
||---------------------------------->|
||||
|RTPEstablishedBothWays-DepositMsgforB|
||
||||
|BYEF13|||
|---------------->|BYEF14||
||---------------------------------->|
||||
||OKF15||
|OKF16|ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
Campbell&SparksInformational[Page14]
RFC3087SIPServiceControlApril2001
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserA",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
Campbell&SparksInformational[Page15]
RFC3087SIPServiceControlApril2001
180RingingSIP/2.0180Ringing
F4Via:SIP/2.0/UDPwcom.com:5060;branch=1
B1->ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
180RingingSIP/2.0180Ringing
F5Via:SIP/2.0/UDPhere.com:5060
Proxy->AFrom:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
/*B1ringsfor9seconds,thisdurationisa
configurableparameterintheProxyServer.Proxy
sendsCancelandproceedsdownthelistofroutes,
eventuallyhittingthevoicemailURIforforwardno
answer*/
CANCELF6CANCELsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1CANCEL
Content-Length:0
200OKF7SIP/2.0200OK
B1->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=1
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1CANCEL
Content-Length:0
INVITEF8INVITEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060;branch=2
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Campbell&SparksInformational[Page16]
RFC3087SIPServiceControlApril2001
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF9SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=2
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheLittleGuyVoiceMail
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF10SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheLittleGuyVoiceMail
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
Campbell&SparksInformational[Page17]
RFC3087SIPServiceControlApril2001
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
ACKF11ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF12ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
/*RTPstreamsareestablishedbetweenAandB2.VM
systemstartsIVRdialogformessage-depositonno-
answerforUserB*/
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF13BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF14BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
Campbell&SparksInformational[Page18]
RFC3087SIPServiceControlApril2001
200OKF15SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF16SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
4.2.2Calltoknownsubscriberforwardedonbusy
UserAattemptstocallUserB,whoisbusy.Thecallisforwardedto
UserB'smailbox,andthevoicemailsystemplaysUserB'soutgoing
messageforabusy.Thisflowassumesthat"sip:UserB-dep-
[email protected]"mapstoUserB'smailboxandthebehaviorof"deposit
messageonbusy."
Campbell&SparksInformational[Page19]
RFC3087SIPServiceControlApril2001
UserAProxyUserBVMSystem
||||
|INVITEF1|||
|---------------->|INVITEF2||
||----------------->||
|(100Trying)F3|||
|||
||||
||INVITEF6|
||---------------------------------->|
||||
||200OKF7||
|200OKF8||ACKF10||
||---------------------------------->|
||||
|RTPEstablishedBothWays-DepositMsgforB|
||
||||
|BYEF11|||
|---------------->|BYEF12||
||---------------------------------->|
||||
||OKF13||
|OKF14|ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserA",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
486BusySIP/2.0486BusyHere
HereF4Via:SIP/2.0/UDPwcom.com:5060;branch=1
B1->ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=123456
Campbell&SparksInformational[Page21]
RFC3087SIPServiceControlApril2001
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
ACKF5ACKsip:[email protected]/2.0
Proxy->BVia:SIP/2.0/UDPwcom.com:5060;branch=1
From:TheBigGuy
To:TheLittleGuy;tag=123456
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
INVITEF6INVITEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060;branch=2
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF7SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=2
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheLittleGuyVoiceMail
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
Campbell&SparksInformational[Page22]
RFC3087SIPServiceControlApril2001
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF8SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
ContactTheLittleGuyVoiceMail
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
ACKF9ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF10ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
/*RTPstreamsareestablishedbetweenAandB2.VM
systemstartsIVRdialogformessage-depositonbusy
forUserB*/
Campbell&SparksInformational[Page23]
RFC3087SIPServiceControlApril2001
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF11BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF12BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF13SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF14SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuy;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
4.2.3Directcalltoasubscriber'smailbox
UserAcallsUserB'smailboxdirectly.Thisflowassumesthat
"sip:[email protected]"mapstoUserB'smailboxandthebehavior
of"genericmessagedeposit"
Campbell&SparksInformational[Page24]
RFC3087SIPServiceControlApril2001
UserAProxyVMService
|||
|INVITEF1||
|------------------>||
||INVITEF2|
|(100Trying)F3|---------------------->|
||ACKF7|
||---------------------->|
|||
|RTPBothWays-DepositMsgforB|
||
|||
|BYEF8||
|------------------>|BYEF9|
||---------------------->|
|||
||200OKF10|
||ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuyVoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserA",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
Campbell&SparksInformational[Page25]
RFC3087SIPServiceControlApril2001
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuyVoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:TheLittleGuyVoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
200OKF4SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheLittleGuyVoiceMail
Content-Type:application/sdp
Campbell&SparksInformational[Page26]
RFC3087SIPServiceControlApril2001
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF5SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
ContactTheLittleGuyVoiceMail
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
ACKF6ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF7ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Campbell&SparksInformational[Page27]
RFC3087SIPServiceControlApril2001
Content-Length:0
/*RTPstreamsareestablishedbetweenAandVM.VM
systemstartsIVRdialogforgenericmessage-deposit
forUserB*/
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF8BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF9BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF10SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF11SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:TheLittleGuyVoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
Campbell&SparksInformational[Page28]
RFC3087SIPServiceControlApril2001
4.3MessageRetrievalScenarios
4.3.1Calltoretrievemessagesbelievedtobefromaknownsubscriber
SomeuserusesaSIPclientonUserA'sdesktocallthevoicemail
systemtoretrievemessages.TheSIPclienthasauthenticateditself
totheproxyusingcredentialsassignedtothedevice.Theproxycan
makeaweakassumptionthatthecalleristhedeviceowner.TheURI
of"sip:[email protected]"mapstoUserA'smailboxandthe
behaviorof"retrievemessagesafterpromptingforandverifying
PIN."TheVMSystemtruststheproxy,andwillnotacceptcallsfrom
anuntrustedsource.Theproxywillnotallowdirectcallsto
[email protected]
[email protected]@vm.wcom.comonlyforcalls
placedfromaclientdeviceassignedtoUserA.
UserAProxyVMService
|||
|INVITEF1||
|------------------>||
||INVITEF2|
|(100Trying)F3|---------------------->|
||ACKF7|
||---------------------->|
|||
|RTPBothWays-VMpromptsforPIN
||
|||
|BYEF8||
|------------------>|BYEF9|
||---------------------->|
|||
||200OKF10|
||ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserAPhone",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
Campbell&SparksInformational[Page30]
RFC3087SIPServiceControlApril2001
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
200OKF4SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Contact:VoiceMailSystem
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF5SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
ContactVoiceMailSystem
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
Campbell&SparksInformational[Page31]
RFC3087SIPServiceControlApril2001
ACKF6ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF7ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
/*RTPstreamsareestablishedbetweenAandVM.VM
determinesthatthecallislikelyfromUserA,and
startsamessageretrievalsession,promptingfor
PIN*/
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF8BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF9BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF10SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
Campbell&SparksInformational[Page32]
RFC3087SIPServiceControlApril2001
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF11SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
4.3.2Calltoretrievemessagesfromanauthenticatedsubscriber
UserAtocallthevoicemailsystemtoretrievemessages.
Assumptions:ThecallerisauthenticatedusingUserA'scredentials.
"sip:[email protected]"mapstoUserA'smailboxandthe
behaviorof"retrievemessages."Thevoicemailservicetruststhe
proxynottoforwardanycallstothatURIunlessthecallis
authenticatedtobefromUserA.
Giventheseassumptions,TheVMservicemaychoosenotrequireaPIN
forcallstothisURI.
Campbell&SparksInformational[Page33]
RFC3087SIPServiceControlApril2001
UserAProxyVMService
|||
|INVITEF1||
|------------------>||
||INVITEF2|
|(100Trying)F3|---------------------->|
||ACKF7|
||---------------------->|
|||
|RTPBothWays-DepositMsgforB|
||
|||
|BYEF8||
|------------------>|BYEF9|
||---------------------->|
|||
||200OKF10|
||ProxyVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Proxy-Authorization:Digestusername="UserA",
realm="MCIWorldComSIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359",opaque="",
uri="sip:[email protected]",response=
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
Campbell&SparksInformational[Page34]
RFC3087SIPServiceControlApril2001
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
/*ClientforApreparestoreceivedataonport49170
fromthenetwork.*/
INVITEF2INVITEsip:[email protected]/2.0
Proxy->B1Via:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Contact:TheBigGuy
Content-Type:application/sdp
Content-Length:
v=0
o=UserA28908445262890844526INIP4client.here.com
s=SessionSDP
c=INIP4100.101.102.103
t=00
m=audio49170RTP/AVP0
a=rtpmap:0PCMU/8000
(100TryingSIP/2.0100Trying
F3Via:SIP/2.0/UDPhere.com:5060
Proxy->A)From:TheBigGuy
To:VoiceMail
Call-Id:[email protected]
CSeq:1INVITE
Content-Length:0
200OKF4SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060;branch=1
Via:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
Contact:VoiceMailSystem
Content-Type:application/sdp
Content-Length:
Campbell&SparksInformational[Page35]
RFC3087SIPServiceControlApril2001
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
200OKF5SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
Record-Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1INVITE
ContactVoiceMailSystem
Content-Type:application/sdp
Content-Length:
v=0
o=UserB28908445272890844527INIP4vm.wcom.com
s=SessionSDP
c=INIP4110.111.112.114
t=00
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
ACKF6ACKsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
ACKF7ACKsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:1ACK
Content-Length:0
Campbell&SparksInformational[Page36]
RFC3087SIPServiceControlApril2001
/*RTPstreamsareestablishedbetweenAandVM.VM
determinesthatthecallislikelyfromUserA,and
startsamessageretrievalsession.Sincetheproxy
hasalreadyauthenticatedtheidentityofUserA,the
VMdoesnotneedtopromptforPIN.*/
/*UserAHangsUpwithVMsystem.Alternatively,the
VMsystemcouldinitiatetheBYE*/
BYEF8BYEsip:[email protected]/2.0
A->ProxyVia:SIP/2.0/UDPhere.com:5060
Route:
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
BYEF9BYEsip:[email protected]/2.0
Proxy->VMVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF10SIP/2.0200OK
VM->ProxyVia:SIP/2.0/UDPwcom.com:5060
Via:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail;tag=3145678
Call-Id:[email protected]
CSeq:2BYE
Content-Length:0
200OKF11SIP/2.0200OK
Proxy->AVia:SIP/2.0/UDPhere.com:5060
From:TheBigGuy
To:VoiceMail