|
reSIProcate
SIP stack, Dialog Usage Manager and related libraries
|
Base class for class ClientInviteSession and class ServerInviteSession. More...
#include <InviteSession.hxx>
Classes | |
| class | QueuedNIT |
Public Types | |
| enum | OfferAnswerType { None , Offer , Answer } |
| enum | EndReason { NotSpecified =0 , UserHangup , AppRejectedSdp , IllegalNegotiation , AckNotReceived , SessionExpired , StaleReInvite , ENDREASON_MAX , UserSpecified } |
Public Types inherited from resip::Handled | |
| enum | { npos = 0 } |
| typedef unsigned long | Id |
Public Member Functions | |
| InviteSession (const InviteSession &)=delete | |
| InviteSession (InviteSession &&)=delete | |
| InviteSession & | operator= (const InviteSession &)=delete |
| InviteSession & | operator= (InviteSession &&)=delete |
| virtual void | provideOffer (const Contents &offer) |
| Called to set the offer that will be used in the next message that sends an offer. | |
| virtual void | provideOffer (const Contents &offer, DialogUsageManager::EncryptionLevel level, const Contents *alternative) |
| virtual void | provideAnswer (const Contents &answer) |
| Similar to provideOffer - called to set the answer to be signaled to the peer. | |
| virtual void | requestOffer () |
| Called to request that the far end provide an offer. | |
| virtual void | end (const Data &userReason) |
| Makes the specific dialog end. | |
| virtual void | end (const ParserContainer< Token > &endReasons) |
| virtual void | end (EndReason reason) |
| virtual void | end () override |
| virtual void | reject (int statusCode, WarningCategory *warning=0) |
| Rejects an offer at the SIP level. | |
| virtual void | reject (int statusCode, const Contents *contents, WarningCategory *warning=0) |
| virtual void | targetRefresh (const NameAddr &localUri) |
| will send a reINVITE (current offerAnswer) or UPDATE with new Contact header | |
| virtual void | refer (const NameAddr &referTo, bool referSub=true) |
| sends a refer request | |
| virtual void | refer (const NameAddr &referTo, const NameAddr &referredBy, bool referSub=true) |
| virtual void | refer (const NameAddr &referTo, std::unique_ptr< resip::Contents > contents, bool referSub=true) |
| virtual void | refer (const NameAddr &referTo, const NameAddr &referredBy, std::unique_ptr< resip::Contents > contents, bool referSub=true) |
| virtual void | refer (const NameAddr &referTo, InviteSessionHandle sessionToReplace, bool referSub=true) |
| sends a refer request with a replaces header | |
| virtual void | refer (const NameAddr &referTo, InviteSessionHandle sessionToReplace, std::unique_ptr< resip::Contents > contents, bool referSub=true) |
| virtual void | refer (const NameAddr &referTo, const CallId &replaces, bool referSub=true) |
| virtual void | refer (const NameAddr &referTo, const CallId &replaces, std::unique_ptr< resip::Contents > contents, bool referSub=true) |
| virtual void | info (const Contents &contents) |
| sends an info request | |
| virtual void | message (const Contents &contents) |
| sends a message request | |
| virtual void | acceptNIT (int statusCode=200, const Contents *contents=0) |
| accepts an INFO or MESSAGE request with a 2xx and an optional contents | |
| virtual void | rejectNIT (int statusCode=488) |
| rejects an INFO or MESSAGE request with an error status code | |
| std::shared_ptr< SipMessage > | getLastSentNITRequest () const |
| gets the last NIT request that was sent by the session | |
| virtual void | provideOfferCommand (const Contents &offer) |
| Provide asynchronous method access by using command. | |
| virtual void | provideOfferCommand (const Contents &offer, DialogUsageManager::EncryptionLevel level, const Contents *alternative) |
| virtual void | provideAnswerCommand (const Contents &answer) |
| virtual void | endCommand (EndReason reason=NotSpecified) |
| Asynchronously makes the specific dialog end. | |
| virtual void | endCommand (const Data &userReason) |
| virtual void | endCommand (const resip::ParserContainer< resip::Token > &endReasons) |
| virtual void | rejectCommand (int statusCode, WarningCategory *warning=0) |
| Asynchronously rejects an offer at the SIP level. | |
| virtual void | rejectCommand (int statusCode, const Contents *contents, WarningCategory *warning=0) |
| virtual void | referCommand (const NameAddr &referTo, bool referSub=true) |
| virtual void | referCommand (const NameAddr &referTo, InviteSessionHandle sessionToReplace, bool referSub=true) |
| virtual void | infoCommand (const Contents &contents) |
| virtual void | messageCommand (const Contents &contents) |
| virtual void | acceptNITCommand (int statusCode=200, const Contents *contents=0) |
| Asynchronously accepts an INFO or MESSAGE request with a 2xx and an optional contents. | |
| virtual void | rejectNITCommand (int statusCode=488) |
| Asynchronously rejects an INFO or MESSAGE request with an error status code. | |
| virtual void | acceptReferNoSub (int statusCode=200) |
| virtual void | rejectReferNoSub (int responseCode) |
| bool | hasLocalOfferAnswer () const |
| const Contents & | getLocalOfferAnswer () const |
| bool | hasRemoteOfferAnswer () const |
| const Contents & | getRemoteOfferAnswer () const |
| bool | hasProposedRemoteOfferAnswer () const |
| const Contents & | getProposedRemoteOfferAnswer () const |
| bool | hasLocalSdp () const |
| const SdpContents & | getLocalSdp () const |
| bool | hasRemoteSdp () const |
| const SdpContents & | getRemoteSdp () const |
| bool | hasProposedRemoteSdp () const |
| const SdpContents & | getProposedRemoteSdp () const |
| bool | isConnected () const |
| bool | isSessionModificationInFlight () const |
| bool | isTerminated () const |
| bool | isEarly () const |
| bool | isAccepted () const |
| Tokens & | getPeerSupportedMethods () |
| Tokens & | getPeerSupportedOptionTags () |
| Tokens & | getPeerRequiresOptionsTags () |
| Mimes & | getPeerSupportedMimeTypes () |
| Tokens & | getPeerSupportedEncodings () |
| Tokens & | getPeerSupportedLanguages () |
| Tokens & | getPeerAllowedEvents () |
| Data & | getPeerUserAgent () |
| NameAddrs & | getPeerPAssertedIdentities () |
| EncodeStream & | dump (EncodeStream &strm) const override |
| InviteSessionHandle | getSessionHandle () |
Public Member Functions inherited from resip::DialogUsage | |
| AppDialogSetHandle | getAppDialogSet () const |
| AppDialogHandle | getAppDialog () const |
| const NameAddr & | myAddr () const noexcept |
| const NameAddr & | peerAddr () const noexcept |
| const NameAddr & | remoteTarget () const noexcept |
| const NameAddr & | pendingRemoteTarget () const |
| const NameAddrs & | getRouteSet () const noexcept |
| const DialogId & | getDialogId () const |
| const Data & | getCallId () const |
| std::shared_ptr< UserProfile > | getUserProfile () const |
Public Member Functions inherited from resip::BaseUsage | |
| virtual void | postDum (Message *messageForDum) |
| posts a message on dum | |
Public Member Functions inherited from resip::Handled | |
| Handled (HandleManager &ham) | |
| virtual | ~Handled () |
Static Protected Member Functions | |
| static Data | toData (State state) |
| static std::unique_ptr< Contents > | makeOfferAnswer (const Contents &offerAnswer) |
| static std::unique_ptr< Contents > | makeOfferAnswer (const Contents &offerAnswer, const Contents *alternative) |
| static void | setOfferAnswer (SipMessage &msg, const Contents &offerAnswer, const Contents *alternative=0) |
| static void | setOfferAnswer (SipMessage &msg, const Contents *offerAnswer) |
Friends | |
| class | Dialog |
| class | DialogUsageManager |
Base class for class ClientInviteSession and class ServerInviteSession.
Implements common attributes and behavior (i.e.t post connected) of the two classes.
Definition at line 24 of file InviteSession.hxx.
|
protected |
Definition at line 449 of file InviteSession.hxx.
| Enumerator | |
|---|---|
| NotSpecified | |
| UserHangup | |
| AppRejectedSdp | |
| IllegalNegotiation | |
| AckNotReceived | |
| SessionExpired | |
| StaleReInvite | |
| ENDREASON_MAX | |
| UserSpecified | |
Definition at line 58 of file InviteSession.hxx.
|
protected |
Definition at line 261 of file InviteSession.hxx.
|
protected |
| Enumerator | |
|---|---|
| NitComplete | |
| NitProceeding | |
Definition at line 301 of file InviteSession.hxx.
| Enumerator | |
|---|---|
| None | |
| Offer | |
| Answer | |
Definition at line 49 of file InviteSession.hxx.
|
protected |
Definition at line 191 of file InviteSession.hxx.
|
delete |
|
delete |
|
protected |
Definition at line 67 of file InviteSession.cxx.
|
protectedvirtual |
Definition at line 95 of file InviteSession.cxx.
|
virtual |
accepts an INFO or MESSAGE request with a 2xx and an optional contents
Definition at line 2579 of file InviteSession.cxx.
|
virtual |
Asynchronously accepts an INFO or MESSAGE request with a 2xx and an optional contents.
Definition at line 2628 of file InviteSession.cxx.
|
virtual |
Definition at line 3694 of file InviteSession.cxx.
|
protected |
Definition at line 2904 of file InviteSession.cxx.
|
overrideprotectedvirtual |
dcm! – should this be onIllegalNegotiation?
Implements resip::BaseUsage.
Definition at line 1405 of file InviteSession.cxx.
|
overrideprotectedvirtual |
Implements resip::BaseUsage.
Definition at line 1326 of file InviteSession.cxx.
|
protected |
Definition at line 2218 of file InviteSession.cxx.
|
protected |
Definition at line 2498 of file InviteSession.cxx.
|
protected |
Definition at line 1601 of file InviteSession.cxx.
|
protected |
Definition at line 2128 of file InviteSession.cxx.
|
protected |
dcm! – toss away 1xx to an info?
Definition at line 2539 of file InviteSession.cxx.
|
protected |
dcm! – toss away 1xx to an message?
Definition at line 2686 of file InviteSession.cxx.
|
protected |
Definition at line 2423 of file InviteSession.cxx.
|
protected |
dcm! – should this be onIllegalNegotiation?
Definition at line 2063 of file InviteSession.cxx.
|
protected |
Definition at line 2177 of file InviteSession.cxx.
|
protected |
Definition at line 2153 of file InviteSession.cxx.
|
protected |
Definition at line 2015 of file InviteSession.cxx.
|
protected |
Definition at line 1774 of file InviteSession.cxx.
|
protected |
Definition at line 2232 of file InviteSession.cxx.
|
protected |
Definition at line 1917 of file InviteSession.cxx.
|
protected |
Definition at line 1682 of file InviteSession.cxx.
|
protected |
Definition at line 2334 of file InviteSession.cxx.
|
protected |
Definition at line 2305 of file InviteSession.cxx.
|
protected |
Definition at line 2246 of file InviteSession.cxx.
|
protected |
Definition at line 2261 of file InviteSession.cxx.
|
protected |
Definition at line 2275 of file InviteSession.cxx.
|
overridevirtual |
Implements resip::BaseUsage.
Definition at line 457 of file InviteSession.cxx.
|
overridevirtual |
Implements resip::BaseUsage.
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 724 of file InviteSession.cxx.
|
virtual |
Makes the specific dialog end.
Will send a BYE (not a CANCEL)
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 730 of file InviteSession.cxx.
|
virtual |
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 737 of file InviteSession.cxx.
|
virtual |
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 744 of file InviteSession.cxx.
|
virtual |
Definition at line 878 of file InviteSession.cxx.
|
virtual |
Definition at line 884 of file InviteSession.cxx.
|
virtual |
Asynchronously makes the specific dialog end.
Will send a BYE (not a CANCEL)
Definition at line 872 of file InviteSession.cxx.
|
protected |
Definition at line 2918 of file InviteSession.cxx.
|
protectedvirtual |
Definition at line 3679 of file InviteSession.cxx.
|
protected |
Definition at line 3634 of file InviteSession.cxx.
|
protected |
dcm! – necessary?
Definition at line 54 of file InviteSession.cxx.
| std::shared_ptr< SipMessage > InviteSession::getLastSentNITRequest | ( | ) | const |
gets the last NIT request that was sent by the session
Definition at line 1054 of file InviteSession.cxx.
| const Contents & InviteSession::getLocalOfferAnswer | ( | ) | const |
Definition at line 113 of file InviteSession.cxx.
| const SdpContents & InviteSession::getLocalSdp | ( | ) | const |
Definition at line 171 of file InviteSession.cxx.
|
protected |
Definition at line 3269 of file InviteSession.cxx.
|
inline |
Definition at line 182 of file InviteSession.hxx.
|
inline |
Definition at line 184 of file InviteSession.hxx.
|
inline |
Definition at line 178 of file InviteSession.hxx.
|
inline |
Definition at line 180 of file InviteSession.hxx.
|
inline |
Definition at line 181 of file InviteSession.hxx.
|
inline |
Definition at line 176 of file InviteSession.hxx.
|
inline |
Definition at line 179 of file InviteSession.hxx.
|
inline |
Definition at line 177 of file InviteSession.hxx.
|
inline |
Definition at line 183 of file InviteSession.hxx.
| const Contents & InviteSession::getProposedRemoteOfferAnswer | ( | ) | const |
Definition at line 151 of file InviteSession.cxx.
| const SdpContents & InviteSession::getProposedRemoteSdp | ( | ) | const |
Definition at line 217 of file InviteSession.cxx.
| const Contents & InviteSession::getRemoteOfferAnswer | ( | ) | const |
Definition at line 132 of file InviteSession.cxx.
| const SdpContents & InviteSession::getRemoteSdp | ( | ) | const |
Definition at line 194 of file InviteSession.cxx.
| InviteSessionHandle InviteSession::getSessionHandle | ( | ) |
Definition at line 233 of file InviteSession.cxx.
|
protected |
Definition at line 3036 of file InviteSession.cxx.
|
protected |
Definition at line 2979 of file InviteSession.cxx.
| bool InviteSession::hasLocalOfferAnswer | ( | ) | const |
Definition at line 107 of file InviteSession.cxx.
| bool InviteSession::hasLocalSdp | ( | ) | const |
Definition at line 164 of file InviteSession.cxx.
| bool InviteSession::hasProposedRemoteOfferAnswer | ( | ) | const |
Definition at line 145 of file InviteSession.cxx.
| bool InviteSession::hasProposedRemoteSdp | ( | ) | const |
Definition at line 210 of file InviteSession.cxx.
| bool InviteSession::hasRemoteOfferAnswer | ( | ) | const |
Definition at line 126 of file InviteSession.cxx.
| bool InviteSession::hasRemoteSdp | ( | ) | const |
Definition at line 187 of file InviteSession.cxx.
|
virtual |
sends an info request
Definition at line 1220 of file InviteSession.cxx.
|
virtual |
Definition at line 1266 of file InviteSession.cxx.
| bool InviteSession::isAccepted | ( | ) | const |
Definition at line 381 of file InviteSession.cxx.
|
protected |
Definition at line 2734 of file InviteSession.cxx.
| bool InviteSession::isConnected | ( | ) | const |
Definition at line 333 of file InviteSession.cxx.
| bool InviteSession::isEarly | ( | ) | const |
Definition at line 362 of file InviteSession.cxx.
|
protected |
Definition at line 3246 of file InviteSession.cxx.
| bool InviteSession::isSessionModificationInFlight | ( | ) | const |
Definition at line 423 of file InviteSession.cxx.
| bool InviteSession::isTerminated | ( | ) | const |
Definition at line 441 of file InviteSession.cxx.
|
staticprotected |
Definition at line 3285 of file InviteSession.cxx.
|
staticprotected |
Definition at line 3291 of file InviteSession.cxx.
|
virtual |
sends a message request
Definition at line 1272 of file InviteSession.cxx.
|
virtual |
Definition at line 1320 of file InviteSession.cxx.
|
protected |
Definition at line 1060 of file InviteSession.cxx.
|
overrideprotectedvirtual |
Reimplemented from resip::DialogUsage.
Definition at line 3673 of file InviteSession.cxx.
|
delete |
|
delete |
|
virtual |
Similar to provideOffer - called to set the answer to be signaled to the peer.
May result in message being sent synchronously depending on the state.
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 629 of file InviteSession.cxx.
|
virtual |
Definition at line 718 of file InviteSession.cxx.
|
virtual |
Called to set the offer that will be used in the next message that sends an offer.
If possible, this will synchronously send the appropriate request or response. In some cases, the UAS might have to call accept in order to cause the message to be sent.
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 591 of file InviteSession.cxx.
|
virtual |
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 499 of file InviteSession.cxx.
|
virtual |
Provide asynchronous method access by using command.
Definition at line 623 of file InviteSession.cxx.
|
virtual |
Definition at line 585 of file InviteSession.cxx.
|
protected |
Definition at line 3335 of file InviteSession.cxx.
|
virtual |
sends a refer request
Definition at line 1003 of file InviteSession.cxx.
|
virtual |
Definition at line 1137 of file InviteSession.cxx.
|
virtual |
Definition at line 1143 of file InviteSession.cxx.
|
virtual |
Definition at line 1008 of file InviteSession.cxx.
|
virtual |
Definition at line 1018 of file InviteSession.cxx.
|
virtual |
sends a refer request with a replaces header
Definition at line 1114 of file InviteSession.cxx.
|
virtual |
Definition at line 1120 of file InviteSession.cxx.
|
virtual |
Definition at line 1013 of file InviteSession.cxx.
|
virtual |
Definition at line 1108 of file InviteSession.cxx.
|
virtual |
Definition at line 1214 of file InviteSession.cxx.
|
protected |
Definition at line 3686 of file InviteSession.cxx.
|
virtual |
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 896 of file InviteSession.cxx.
|
virtual |
Rejects an offer at the SIP level.
Can also be used to send a 488 to a reINVITE or UPDATE
Reimplemented in resip::ServerInviteSession, and resip::ClientInviteSession.
Definition at line 890 of file InviteSession.cxx.
|
virtual |
Definition at line 982 of file InviteSession.cxx.
|
virtual |
Asynchronously rejects an offer at the SIP level.
Can also be used to send a 488 to a reINVITE or UPDATE
Definition at line 976 of file InviteSession.cxx.
|
virtual |
rejects an INFO or MESSAGE request with an error status code
Definition at line 2634 of file InviteSession.cxx.
|
virtual |
Asynchronously rejects an INFO or MESSAGE request with an error status code.
Definition at line 2680 of file InviteSession.cxx.
|
virtual |
Definition at line 3710 of file InviteSession.cxx.
|
virtual |
Called to request that the far end provide an offer.
This will cause a reinvite with no body to be sent.
Reimplemented in resip::ServerInviteSession.
Definition at line 467 of file InviteSession.cxx.
|
protected |
Definition at line 3553 of file InviteSession.cxx.
|
protected |
Definition at line 3601 of file InviteSession.cxx.
|
protected |
Definition at line 2828 of file InviteSession.cxx.
|
protected |
Definition at line 325 of file InviteSession.cxx.
|
protected |
Definition at line 3651 of file InviteSession.cxx.
|
staticprotected |
Definition at line 3308 of file InviteSession.cxx.
|
staticprotected |
Definition at line 3328 of file InviteSession.cxx.
|
protected |
Definition at line 2801 of file InviteSession.cxx.
|
protected |
Definition at line 2878 of file InviteSession.cxx.
|
protected |
Definition at line 2766 of file InviteSession.cxx.
|
protected |
Definition at line 2750 of file InviteSession.cxx.
|
protected |
Definition at line 2939 of file InviteSession.cxx.
|
protected |
Definition at line 2789 of file InviteSession.cxx.
|
protected |
Definition at line 238 of file InviteSession.cxx.
|
virtual |
will send a reINVITE (current offerAnswer) or UPDATE with new Contact header
currently only supported when in the Connected state, UAC_Early states are allowed by RFC but not yet supported
Definition at line 988 of file InviteSession.cxx.
Definition at line 3106 of file InviteSession.cxx.
|
protected |
Definition at line 3354 of file InviteSession.cxx.
|
protected |
Definition at line 3239 of file InviteSession.cxx.
|
protected |
Definition at line 313 of file InviteSession.cxx.
|
friend |
Definition at line 453 of file InviteSession.hxx.
|
friend |
Definition at line 454 of file InviteSession.hxx.
|
protected |
Definition at line 450 of file InviteSession.hxx.
|
protected |
Definition at line 439 of file InviteSession.hxx.
|
protected |
Definition at line 398 of file InviteSession.hxx.
|
protected |
Definition at line 401 of file InviteSession.hxx.
|
protected |
Definition at line 411 of file InviteSession.hxx.
|
protected |
Definition at line 442 of file InviteSession.hxx.
|
protected |
Definition at line 406 of file InviteSession.hxx.
|
protected |
Definition at line 404 of file InviteSession.hxx.
|
protected |
Definition at line 407 of file InviteSession.hxx.
|
protected |
Definition at line 409 of file InviteSession.hxx.
|
protected |
Definition at line 405 of file InviteSession.hxx.
|
protected |
Definition at line 437 of file InviteSession.hxx.
|
protected |
Definition at line 416 of file InviteSession.hxx.
|
protected |
Definition at line 434 of file InviteSession.hxx.
|
protected |
Definition at line 395 of file InviteSession.hxx.
|
protected |
Definition at line 387 of file InviteSession.hxx.
|
protected |
Definition at line 389 of file InviteSession.hxx.
|
protected |
Definition at line 383 of file InviteSession.hxx.
|
protected |
Definition at line 385 of file InviteSession.hxx.
|
protected |
Definition at line 386 of file InviteSession.hxx.
|
protected |
Definition at line 381 of file InviteSession.hxx.
|
protected |
Definition at line 384 of file InviteSession.hxx.
|
protected |
Definition at line 382 of file InviteSession.hxx.
|
protected |
Definition at line 390 of file InviteSession.hxx.
|
protected |
Definition at line 388 of file InviteSession.hxx.
|
protected |
Definition at line 440 of file InviteSession.hxx.
|
protected |
Definition at line 399 of file InviteSession.hxx.
|
protected |
Definition at line 402 of file InviteSession.hxx.
|
protected |
Definition at line 436 of file InviteSession.hxx.
|
protected |
Definition at line 396 of file InviteSession.hxx.
|
protected |
Definition at line 421 of file InviteSession.hxx.
|
protected |
Definition at line 419 of file InviteSession.hxx.
|
protected |
Definition at line 415 of file InviteSession.hxx.
|
protected |
Definition at line 417 of file InviteSession.hxx.
|
protected |
Definition at line 420 of file InviteSession.hxx.
|
protected |
Definition at line 418 of file InviteSession.hxx.
|
protected |
Definition at line 412 of file InviteSession.hxx.
|
protected |
Definition at line 394 of file InviteSession.hxx.
|
protected |
Definition at line 445 of file InviteSession.hxx.
|
protected |
Definition at line 446 of file InviteSession.hxx.