Fixed #932 and #905 in public. OpenBTS now responds negatively to SIP

re-invites, though the specific effect of this depends on the client
 sending the re-invite. In the case of FS, it causes the RTP stream to
 break. We also now complain when invites time out, sending an alert to the
 user about the proxy status.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3810 19bc5d8c-e614-43d4-8b26-e1612bc8e597
This commit is contained in:
Kurtis Heimerl 2012-06-19 20:22:20 +00:00
parent 2fe7dd1ec4
commit af13ea7902
8 changed files with 97 additions and 49 deletions

View file

@ -379,6 +379,15 @@ bool SIPInterface::checkInvite( osip_message_t * msg)
mSIPMap.remove(callIDNum);
return false;
}
//if this is not the saved invite, it's a RE-invite. Respond saying we don't support it.
if (!transaction->sameINVITE(msg)){
/* don't cancel the call */
transaction->MODSendERROR(msg, 488, "Not Acceptable Here", false);
/* I think we'd need to create a new transaction for this ack. Right now, just assume the ack makes it back.
if not, we'll hear another INVITE */
//transaction->MODWaitForERRORACK(false); //don't cancel the call
return false;
}
// There is transaction already. Send trying.
transaction->MTCSendTrying();
// And if no channel is established yet, page again.