< Previous by Date | Date Index | Next by Date > |
< Previous in Thread | Thread Index |
Hi,
I have made an UAS based on the DUM API. When I received an INVITE
request
with SDP data, I try to provide an answer to these SDP data in the provisional response message SIP/180. So just before to call the ServerInviteSession::provisional() method, I'm calling the ServerInviteSession::provideAnswer() with my SDP data. The problem is that my SDP data are not sent in the SIP/180 message, they are are sent after in the SIP/200 response when I call the accept() method. After having a look to the code, I think to understand why: - the ServerInviteSession::provideAnswer() store the SDP content in the InviteSession::mCurrentLocalSdp member and set the InviteSession::mState of the call to UAS_OfferProvidedAnswer. - ServerInviteSession::provisional() call the sendprovisional() method which always test and use the InviteSession::mProposedLocalSdp member to eventually send SDP content in the provsional response message. But the mProposedLocalSdp is set when we call the provideOffer() method but not when the call the provideAnswer() method. I think the sendprovisional() should test the mState of the Call to know if it has to use the mProposedLocalSdp Content or the mCurrentLocalSdp. Are you agree with that, or am I in a wrong way ? Thanks in advance, Julien
|