reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
InviteSessionHandler.cxx
Go to the documentation of this file.
5#include "rutil/Logger.hxx"
6
7#define RESIPROCATE_SUBSYSTEM Subsystem::DUM
8
9using namespace resip;
10
11void
13{
14 if(!mGenericOfferAnswer)
15 {
16 const SdpContents* sdp = dynamic_cast<const SdpContents*>(&body);
17 resip_assert(sdp);
18 onEarlyMedia(h, msg, *sdp);
19 }
20}
21
22void
24{
25 InfoLog(<< "InviteSessionHandler::onStaleCallTimeout");
26}
27
28void
30{
31 h->getAppDialogSet()->end();
32}
33
34void
38
39void
41{
42 InfoLog(<< "InviteSessionHandler::onAckNotReceived");
44}
45
46void
48{
49 InfoLog(<< "InviteSessionHandler::onStaleReInviteTimeout");
51}
52
53void
55{
56 InfoLog(<< "InviteSessionHandler::onIllegalNegotiation");
57}
58
59void
61{
62 InfoLog(<< "InviteSessionHandler::onSessionExpired");
64}
65
66void
68{
69 if(!mGenericOfferAnswer)
70 {
71 const SdpContents* sdp = dynamic_cast<const SdpContents*>(&body);
72 resip_assert(sdp);
73 onAnswer(h, msg, *sdp);
74 }
75}
76
77void
79{
80 if(!mGenericOfferAnswer)
81 {
82 const SdpContents* sdp = dynamic_cast<const SdpContents*>(&body);
83 resip_assert(sdp);
84 onOffer(h, msg, *sdp);
85 }
86}
87
88void
92
93void
95{
96 if(!mGenericOfferAnswer)
97 {
98 const SdpContents* sdp = dynamic_cast<const SdpContents*>(&body);
99 resip_assert(sdp);
100 onRemoteSdpChanged(h, msg, *sdp);
101 }
102}
103
104void
106{
107 // default is to do nothing. this is for adornment
108}
109
110void
114
115void
119
120void
124
125void
127{
128 InfoLog(<< "InviteSessionHandler::onFlowTerminated");
129}
130
131
132/* ====================================================================
133 * The Vovida Software License, Version 1.0
134 *
135 * Copyright (c) 2000 Vovida Networks, Inc. All rights reserved.
136 *
137 * Redistribution and use in source and binary forms, with or without
138 * modification, are permitted provided that the following conditions
139 * are met:
140 *
141 * 1. Redistributions of source code must retain the above copyright
142 * notice, this list of conditions and the following disclaimer.
143 *
144 * 2. Redistributions in binary form must reproduce the above copyright
145 * notice, this list of conditions and the following disclaimer in
146 * the documentation and/or other materials provided with the
147 * distribution.
148 *
149 * 3. The names "VOCAL", "Vovida Open Communication Application Library",
150 * and "Vovida Open Communication Application Library (VOCAL)" must
151 * not be used to endorse or promote products derived from this
152 * software without prior written permission. For written
153 * permission, please contact vocal@vovida.org.
154 *
155 * 4. Products derived from this software may not be called "VOCAL", nor
156 * may "VOCAL" appear in their name, without prior written
157 * permission of Vovida Networks, Inc.
158 *
159 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
160 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
161 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
162 * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA
163 * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
164 * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
165 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
166 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
167 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
168 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
169 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
170 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
171 * DAMAGE.
172 *
173 * ====================================================================
174 *
175 * This software consists of voluntary contributions made by Vovida
176 * Networks, Inc. and many individuals on behalf of Vovida Networks,
177 * Inc. For more information on Vovida Networks, Inc., please see
178 * <http://www.vovida.org/>.
179 *
180 */
#define InfoLog(args_)
Definition Logger.hxx:131
#define resip_assert(x)
This file needs to work for both C and C++ code.
Base class for all SIP body types.
Definition Contents.hxx:51
virtual void onStaleReInviteTimeout(InviteSessionHandle h)
UAC gets no final response within the stale re-invite timeout (default is 40 seconds).
virtual void terminate(ClientInviteSessionHandle h)
called when an early dialog decides it wants to terminate the dialog.
virtual void onIllegalNegotiation(InviteSessionHandle, const SipMessage &msg)
will be called if reINVITE or UPDATE in dialog fails
virtual void onAckNotReceived(InviteSessionHandle)
default behaviour is to send a BYE to end the dialog
virtual void onAckReceived(InviteSessionHandle, const SipMessage &msg)
called when ACK is received
virtual void onAnswer(InviteSessionHandle, const SipMessage &msg, const SdpContents &)=0
called when an answer is received - has nothing to do with user answering the call
virtual void onEarlyMedia(ClientInviteSessionHandle, const SipMessage &, const SdpContents &)=0
called when an in-dialog provisional response is received that contains a body
virtual void onSessionExpired(InviteSessionHandle)
will be called if Session-Timers are used and Session Timer expires default behaviour is to send a BY...
virtual void onConnectedConfirmed(InviteSessionHandle, const SipMessage &msg)
called when ACK (with out an answer) is received for initial invite (UAS)
virtual void onStaleCallTimeout(ClientInviteSessionHandle h)
UAC gets no final response within the stale call timeout (default is 3 minutes).
virtual void onPrack(ServerInviteSessionHandle, const SipMessage &msg)
called when PRACK is received for a reliable provisional answer (UAS)
virtual void onOffer(InviteSessionHandle, const SipMessage &msg, const SdpContents &)=0
called when an offer is received - must send an answer soon after this
virtual void onReadyToSend(InviteSessionHandle, SipMessage &msg)
called to allow app to adorn a message. default is to send immediately
virtual void onRemoteAnswerChanged(InviteSessionHandle, const SipMessage &msg, const Contents &)
virtual void onFlowTerminated(InviteSessionHandle)
Called when a TCP or TLS flow to the server has terminated.
virtual void onOfferRequestRejected(InviteSessionHandle, const SipMessage &msg)
Called when an error response is received for a reinvite-nobody request (via requestOffer)
virtual void onRemoteSdpChanged(InviteSessionHandle, const SipMessage &msg, const SdpContents &)
called when a modified body is received in a 2xx response to a session-timer reINVITE.
virtual void end(const Data &userReason)
Makes the specific dialog end.
Provides an interface to process and generate SDP bodies (MIME content-type application/sdp).
Represents a SIP message.
dcm! – add UnusedChecking(_enum) below;