< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate-users] How properly establish media connections?


That scheme is not quite correct. 

 

From the UAC perspective you should be opening your port for listening as soon as you send the INVITE request.  Media can make it to your endpoint before any SIP messaging.  You should start sending media as soon as you receive the 200 with SDP answer in it.  The only time you should care about the ACK is if the original INVITE does not contain an offer.

 

As a UAS you can start sending media any time after the INVITE is received, but usually this is not done until the 200 (sdp answer) is sent out, at which time you should also start listening.

 

Scott

 

From: resiprocate-users-bounces@xxxxxxxxxxxxxxx [mailto:resiprocate-users-bounces@xxxxxxxxxxxxxxx] On Behalf Of Mykhailo Parfeniuk
Sent: Monday, November 12, 2007 4:54 AM
To: resiprocate-users@xxxxxxxxxxxxxxx
Subject: [reSIProcate-users] How properly establish media connections?

 

As far as I understand media connection should start like this:
                        INVITE
                    ----------------------> making decision about call, accepting
                         200 OK
opening         <-------------------- openning port for listenning for incoming send 200
port for
listenning
for incoming
media and
starting
transfer
media                   ACK
send ACK     --------------------> starting transfer media

For session instantiation there are callbacks in resiprocate, and if sdp is sent with first
invite it is possible to implement such a scheme. But for re-INVITE or UPDATE
there are only 2 callbacks onOffer and onAnswer. I can't properly decide when start
transfer media if you are the side that answer for offer. Is there in resiprocate callback
for this purpose (as I know onConnectionConfirmed is not called)? Or what are other
schemes for implementing media transfer properly   (in synchronous way, without
situation "destination unreachable").