Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

incomingscript.h

Go to the documentation of this file.
00001 00008 /*************************************************************************** 00009 * * 00010 * This program is free software; you can redistribute it and/or modify * 00011 * it under the terms of the GNU General Public License as published by * 00012 * the Free Software Foundation; either version 2 of the License, or * 00013 * (at your option) any later version. * 00014 * * 00015 ***************************************************************************/ 00016 00017 #ifndef INCOMINGSCRIPT_H 00018 #define INCOMINGSCRIPT_H 00019 00020 #include "applicationexception.h" 00021 #include "pythonscript.h" 00022 00023 class Connection; 00024 class PycStringIO_CAPI; 00025 00031 void* incomingscript_exec_handler(void* arg); 00032 00038 void incomingscript_cleanup_handler(void* arg); 00039 00049 class IncomingScript: public PythonScript 00050 { 00051 friend void* incomingscript_exec_handler(void*); 00052 friend void incomingscript_cleanup_handler(void*); 00053 00054 public: 00065 IncomingScript(ostream &debug, unsigned short debug_level, ostream &error, Connection *conn, string incoming_script, PycStringIO_CAPI* cStringIO) throw (ApplicationError); 00066 00069 virtual ~IncomingScript(); 00070 00071 private: 00096 virtual void run(void) throw(); 00097 00098 Connection *conn; 00099 00100 pthread_t thread_handle; 00101 }; 00102 00103 #endif 00104 00105 /* History 00106 00107 $Log: incomingscript.h,v $ 00108 Revision 1.1 2003/02/19 08:19:53 gernot 00109 Initial revision 00110 00111 Revision 1.5 2003/02/10 14:17:09 ghillie 00112 merged from NATIVE_PTHREADS to HEAD 00113 00114 Revision 1.4.2.2 2003/02/10 14:04:57 ghillie 00115 - made destructors virtual, otherwise wrong destructor is called! 00116 00117 Revision 1.4.2.1 2003/02/09 15:03:41 ghillie 00118 - rewritten to use native pthread_* calls instead of CommonC++ Thread 00119 00120 Revision 1.4 2003/01/18 12:53:06 ghillie 00121 - pass on reference to Python C API to PythonScript 00122 00123 Revision 1.3 2003/01/04 16:00:53 ghillie 00124 - log improvements: log_level, timestamp 00125 00126 Revision 1.2 2002/12/14 14:03:27 ghillie 00127 - added throw() declaration to run() method 00128 00129 Revision 1.1 2002/12/10 15:01:08 ghillie 00130 - class IncomingScript now takes over the functionality of the old CallControl 00131 class defined in callcontrol.*, but uses a base class now 00132 00133 Revision 1.17 2002/12/09 15:24:21 ghillie 00134 - new parameter debug to constructor 00135 - doc changes 00136 00137 Revision 1.16 2002/12/07 22:31:37 ghillie 00138 - remove unnecessary attributes py_state, py_dict, isRunning 00139 - added attribute incoming_script 00140 00141 Revision 1.15 2002/12/05 15:53:41 ghillie 00142 - began restructuring for COnnection to self-delete after getting OK from FlowControl / CallControl 00143 - callCompleted() removed, not needed any more 00144 00145 Revision 1.14 2002/12/02 12:23:06 ghillie 00146 - incoming_script is now a parameter to constructor 00147 - service parameter now uses constants from Connection::service_t 00148 00149 Revision 1.13 2002/11/29 11:09:04 ghillie 00150 renamed CapiCom to CapiSuite (name conflict with MS crypto API :-( ) 00151 00152 Revision 1.12 2002/11/29 10:20:44 ghillie 00153 - updated docs, use doxygen format now 00154 00155 Revision 1.11 2002/11/27 15:56:14 ghillie 00156 updated comments for doxygen 00157 00158 Revision 1.10 2002/11/23 15:55:09 ghillie 00159 added missing (?) include 00160 00161 Revision 1.9 2002/11/21 11:34:33 ghillie 00162 - new methods final() and callCompleted() 00163 00164 Revision 1.8 2002/11/18 14:21:07 ghillie 00165 - moved global severity_t to ApplicationError::severity_t 00166 - added throw() declarations to header files 00167 00168 Revision 1.7 2002/11/14 17:05:19 ghillie 00169 major structural changes - much is easier, nicer and better prepared for the future now: 00170 - added DisconnectLogical handler to CallInterface 00171 - DTMF handling moved from CallControl to Connection 00172 - new call module ConnectModule for establishing connection 00173 - python script reduced from 2 functions to one (callWaiting, callConnected 00174 merged to callIncoming) 00175 - call modules implement the CallInterface now, not CallControl any more 00176 => this freed CallControl from nearly all communication stuff 00177 00178 Revision 1.6 2002/11/13 08:34:54 ghillie 00179 moved history to the bottom 00180 00181 Revision 1.5 2002/11/12 15:48:07 ghillie 00182 added data in handler 00183 00184 Revision 1.4 2002/10/31 12:35:58 ghillie 00185 added DTMF support 00186 00187 Revision 1.3 2002/10/30 14:24:41 ghillie 00188 added support for python call handling before call is connected 00189 00190 Revision 1.2 2002/10/27 12:47:20 ghillie 00191 - added multithread support for python 00192 - changed callcontrol reference to stay in the python namespace 00193 - changed ApplicationError to support differen severity 00194 00195 Revision 1.1 2002/10/25 13:29:38 ghillie 00196 grouped files into subdirectories 00197 00198 Revision 1.6 2002/10/23 15:40:15 ghillie 00199 added python integration... 00200 00201 Revision 1.5 2002/10/23 14:17:41 ghillie 00202 added registerCallModule() 00203 00204 Revision 1.4 2002/10/09 14:36:22 gernot 00205 added CallModule base class for all call handling modules 00206 00207 Revision 1.3 2002/10/05 20:43:32 gernot 00208 quick'n'dirty, but WORKS 00209 00210 Revision 1.2 2002/10/04 15:48:03 gernot 00211 structure changes completed & compiles now! 00212 00213 Revision 1.1 2002/10/04 13:28:43 gernot 00214 CallControll class added 00215 00216 */

Generated on Sun Nov 28 14:37:44 2004 for CapiSuite by doxygen 1.3.8