/[resiprocate]/main/resip/dum/test/UserAgent.hxx
ViewVC logotype

Annotation of /main/resip/dum/test/UserAgent.hxx

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4602 - (hide annotations) (download)
Thu May 12 01:27:52 2005 UTC (14 years, 7 months ago) by derek
Original Path: main/sip/resiprocate/dum/test/UserAgent.hxx
File size: 7623 byte(s)
added missing vocal licences
1 jason 4076 #if !defined(DUM_UserAgent_hxx)
2     #define DUM_UserAgent_hxx
3    
4     #include "CommandLineParser.hxx"
5    
6 jason 4383 #include "resiprocate/StackThread.hxx"
7 jason 4076 #include "resiprocate/dum/MasterProfile.hxx"
8     #include "resiprocate/dum/RegistrationHandler.hxx"
9     #include "resiprocate/dum/SubscriptionHandler.hxx"
10     #include "resiprocate/dum/PublicationHandler.hxx"
11     #include "resiprocate/dum/OutOfDialogHandler.hxx"
12     #include "resiprocate/dum/InviteSessionHandler.hxx"
13     #include "resiprocate/dum/DialogUsageManager.hxx"
14    
15     namespace resip
16     {
17    
18     class UserAgent : public CommandLineParser,
19     public ClientRegistrationHandler,
20     public ClientSubscriptionHandler,
21     public ClientPublicationHandler,
22     public OutOfDialogHandler,
23 jason 4383 public InviteSessionHandler
24 jason 4076 {
25     public:
26     UserAgent(int argc, char** argv);
27     virtual ~UserAgent();
28    
29 jason 4078 void startup();
30     void shutdown();
31    
32 jason 4076 void process();
33    
34     public:
35     // Invite Session Handler /////////////////////////////////////////////////////
36     virtual void onNewSession(ClientInviteSessionHandle h, InviteSession::OfferAnswerType oat, const SipMessage& msg);
37     virtual void onNewSession(ServerInviteSessionHandle h, InviteSession::OfferAnswerType oat, const SipMessage& msg);
38     virtual void onFailure(ClientInviteSessionHandle h, const SipMessage& msg);
39     virtual void onEarlyMedia(ClientInviteSessionHandle, const SipMessage&, const SdpContents&);
40     virtual void onProvisional(ClientInviteSessionHandle, const SipMessage& msg);
41     virtual void onConnected(ClientInviteSessionHandle h, const SipMessage& msg);
42     virtual void onConnected(InviteSessionHandle, const SipMessage& msg);
43     virtual void onStaleCallTimeout(ClientInviteSessionHandle);
44     virtual void onTerminated(InviteSessionHandle h, InviteSessionHandler::TerminatedReason reason, const SipMessage* msg);
45     virtual void onRedirected(ClientInviteSessionHandle, const SipMessage& msg);
46     virtual void onAnswer(InviteSessionHandle, const SipMessage& msg, const SdpContents&);
47     virtual void onOffer(InviteSessionHandle handle, const SipMessage& msg, const SdpContents& offer);
48     virtual void onOfferRequired(InviteSessionHandle, const SipMessage& msg);
49     virtual void onOfferRejected(InviteSessionHandle, const SipMessage& msg);
50     virtual void onDialogModified(InviteSessionHandle, InviteSession::OfferAnswerType oat, const SipMessage& msg);
51     virtual void onInfo(InviteSessionHandle, const SipMessage& msg);
52     virtual void onInfoSuccess(InviteSessionHandle, const SipMessage& msg);
53     virtual void onInfoFailure(InviteSessionHandle, const SipMessage& msg);
54     virtual void onRefer(InviteSessionHandle, ServerSubscriptionHandle, const SipMessage& msg);
55     virtual void onReferAccepted(InviteSessionHandle, ClientSubscriptionHandle, const SipMessage& msg);
56     virtual void onReferRejected(InviteSessionHandle, const SipMessage& msg);
57    
58     // Registration Handler ////////////////////////////////////////////////////////
59     virtual void onSuccess(ClientRegistrationHandle h, const SipMessage& response);
60     virtual void onFailure(ClientRegistrationHandle h, const SipMessage& response);
61     virtual void onRemoved(ClientRegistrationHandle h);
62     virtual int onRequestRetry(ClientRegistrationHandle h, int retryMinimum, const SipMessage& msg);
63    
64     // ClientSubscriptionHandler ///////////////////////////////////////////////////
65     virtual void onRefreshRejected(ClientSubscriptionHandle h, const SipMessage& rejection);
66     virtual void onUpdatePending(ClientSubscriptionHandle h, const SipMessage& notify);
67     virtual void onUpdateActive(ClientSubscriptionHandle h, const SipMessage& notify);
68     virtual void onUpdateExtension(ClientSubscriptionHandle, const SipMessage& notify);
69     virtual void onTerminated(ClientSubscriptionHandle h, const SipMessage& notify);
70     virtual void onNewSubscription(ClientSubscriptionHandle h, const SipMessage& notify);
71     virtual int onRequestRetry(ClientSubscriptionHandle h, int retryMinimum, const SipMessage& notify);
72    
73     // ClientPublicationHandler ////////////////////////////////////////////////////
74     virtual void onSuccess(ClientPublicationHandle h, const SipMessage& status);
75     virtual void onRemove(ClientPublicationHandle h, const SipMessage& status);
76     virtual void onFailure(ClientPublicationHandle h, const SipMessage& response);
77     virtual int onRequestRetry(ClientPublicationHandle h, int retryMinimum, const SipMessage& response);
78    
79     // OutOfDialogHandler //////////////////////////////////////////////////////////
80     virtual void onSuccess(ClientOutOfDialogReqHandle, const SipMessage& response);
81     virtual void onFailure(ClientOutOfDialogReqHandle, const SipMessage& response);
82     virtual void onReceivedRequest(ServerOutOfDialogReqHandle, const SipMessage& request);
83     virtual void onForkDestroyed(ClientInviteSessionHandle);
84    
85     protected:
86     void addTransport(TransportType type, int port);
87    
88     private:
89     MasterProfile mProfile;
90 jason 4383 Security* mSecurity;
91     SipStack mStack;
92 jason 4076 DialogUsageManager mDum;
93 jason 4383 StackThread mStackThread;
94 jason 4076 };
95    
96     }
97    
98     #endif
99 derek 4602
100     /* ====================================================================
101     * The Vovida Software License, Version 1.0
102     *
103     * Copyright (c) 2000 Vovida Networks, Inc. All rights reserved.
104     *
105     * Redistribution and use in source and binary forms, with or without
106     * modification, are permitted provided that the following conditions
107     * are met:
108     *
109     * 1. Redistributions of source code must retain the above copyright
110     * notice, this list of conditions and the following disclaimer.
111     *
112     * 2. Redistributions in binary form must reproduce the above copyright
113     * notice, this list of conditions and the following disclaimer in
114     * the documentation and/or other materials provided with the
115     * distribution.
116     *
117     * 3. The names "VOCAL", "Vovida Open Communication Application Library",
118     * and "Vovida Open Communication Application Library (VOCAL)" must
119     * not be used to endorse or promote products derived from this
120     * software without prior written permission. For written
121     * permission, please contact vocal@vovida.org.
122     *
123     * 4. Products derived from this software may not be called "VOCAL", nor
124     * may "VOCAL" appear in their name, without prior written
125     * permission of Vovida Networks, Inc.
126     *
127     * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
128     * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
129     * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
130     * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA
131     * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
132     * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
133     * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
134     * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
135     * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
136     * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
137     * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
138     * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
139     * DAMAGE.
140     *
141     * ====================================================================
142     *
143     * This software consists of voluntary contributions made by Vovida
144     * Networks, Inc. and many individuals on behalf of Vovida Networks,
145     * Inc. For more information on Vovida Networks, Inc., please see
146     * <http://www.vovida.org/>.
147     *
148     */

Properties

Name Value
svn:eol-style LF

webmaster AT resiprocate DOT org
ViewVC Help
Powered by ViewVC 1.1.27