iedata.h

Go to the documentation of this file.
00001 /*
00002  *
00003  *
00004  * Inter Asterisk Exchange 2
00005  * 
00006  * defines the different types of information elements
00007  * 
00008  * Open Phone Abstraction Library (OPAL)
00009  *
00010  * Copyright (c) 2005 Indranet Technologies Ltd.
00011  *
00012  * The contents of this file are subject to the Mozilla Public License
00013  * Version 1.0 (the "License"); you may not use this file except in
00014  * compliance with the License. You may obtain a copy of the License at
00015  * http://www.mozilla.org/MPL/
00016  *
00017  * Software distributed under the License is distributed on an "AS IS"
00018  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
00019  * the License for the specific language governing rights and limitations
00020  * under the License.
00021  *
00022  * The Original Code is Open Phone Abstraction Library.
00023  *
00024  * The Initial Developer of the Original Code is Indranet Technologies Ltd.
00025  *
00026  * The author of this code is Derek J Smithies
00027  * 
00028  * 
00029  * 
00030  * 
00031  *  $Log: iedata.h,v $
00032  *  Revision 1.3  2007/04/19 06:17:21  csoutheren
00033  *  Fixes for precompiled headers with gcc
00034  *
00035  *  Revision 1.2  2005/08/26 03:07:38  dereksmithies
00036  *  Change naming convention, so all class names contain the string "IAX2"
00037  *
00038  *  Revision 1.1  2005/07/30 07:01:32  csoutheren
00039  *  Added implementation of IAX2 (Inter Asterisk Exchange 2) protocol
00040  *  Thanks to Derek Smithies of Indranet Technologies Ltd. for
00041  *  writing and contributing this code
00042  *
00043  *
00044  *
00045  *
00046  *
00047  */
00048 
00049 #ifndef IEDATA_H
00050 #define IEDATA_H
00051 
00052 #ifndef _PTLIB_H
00053 #include <ptlib.h>
00054 #endif
00055 
00056 #include <opal/buildopts.h>
00057 
00058 #include <ptlib/sockets.h>
00059 
00060 #ifdef P_USE_PRAGMA
00061 #pragma interface
00062 #endif
00063 
00069 class IAX2IeData :  public PObject
00070 {
00071   PCLASSINFO(IAX2IeData, PObject);
00072  public:
00077   IAX2IeData();
00078      
00079      
00080   ~IAX2IeData();
00082 
00084   virtual void PrintOn(ostream & strm) const;
00085 
00086 
00087   PString            calledNumber;          
00088   PString            callingNumber;         
00089   PString            callingAni;            
00090   PString            callingName;           
00091   int                callingTon;            
00092   int                callingTns;            
00093   int                callingPres;           
00094   PString            calledContext;         
00095   PString            userName;              
00096   PString            password;              
00097   unsigned int       capability;            
00098   unsigned int       format;                
00099   PString            codecPrefs;            
00100   PString            language;              
00101   int                version;               
00102   PINDEX             adsicpe;               
00103   PString            dnid;                  
00104   PString            rdnis;                 
00105   short              authMethods;           
00106   unsigned int       encryptionMethods;     
00107   PString            challenge;             
00108   PString            md5Result;             
00109   PString            rsaResult;             
00110   PIPSocket::Address apparentAddr;          
00111   PINDEX             refresh;               
00112   PINDEX             dpStatus;              
00113   PINDEX             callNo;                
00114   PString            cause;                 
00115   BYTE               causeCode;             
00116   BYTE               iaxUnknown;            
00117   int                msgCount;              
00118   int                autoAnswer;            
00119   int                musicOnHold;           
00120   unsigned int       transferId;            
00121   PTime              dateTime;              
00122   PString            deviceType;            
00123   PString            serviceIdent;          
00124   int                firmwareVer;           
00125   unsigned int       fwBlockDesc;           
00126   PBYTEArray         fwBlockData;           
00127   PString            encKey;                
00128   unsigned int       provVer;               
00129   PINDEX             samplingRate;          
00130   int                provverPres;           
00131   unsigned int       receivedJitter;        
00132   unsigned int       receivedLoss;          
00133   unsigned int       receivedPackets;       
00134   unsigned short     receivedDelay;         
00135   unsigned int       receivedDropped;       
00136   unsigned int       receivedOoo;           
00137 };
00138 
00139 #endif // IEDATAH
00140 /* The comment below is magic for those who use emacs to edit this file. */
00141 /* With the comment below, the tab key does auto indent to 4 spaces.     */
00142 
00143 /*
00144  * Local Variables:
00145  * mode:c
00146  * c-file-style:linux
00147  * c-basic-offset:2
00148  * End:
00149  */
00150 

Generated on Mon Sep 22 12:24:50 2008 for OPAL by  doxygen 1.5.1