www.pudn.com > acdx.rar > GkClient.h
/*============================================================= Function: Author: Leon Wang==============================================================*/ // GkClient.h: interface for the GkClient class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_GKCLIENT_H__BF1B84AD_3BCE_44DF_B3EC_B0DD7A21EEF0__INCLUDED_) #define AFX_GKCLIENT_H__BF1B84AD_3BCE_44DF_B3EC_B0DD7A21EEF0__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "Logger.h" // Added by ClassView #include class ACDX; //##ModelId=424BB64503B1 typedef std::vector cstring_vec_t ; // //#define WAIT_SEC 5 ;// wait 5 seconds before reconnecting to GnuGk //##ModelId=424BB64503E0 class GkClient { public: //##ModelId=424BB64503E1 void RUN(); //##ModelId=424BB6460007 static unsigned __stdcall _RUN(void *); //##ModelId=424BB6460017 GkClient(); //##ModelId=424BB6460018 GkClient(ACDX* p, DWORD ip, int port ); //##ModelId=424BB6460027 void routeReject(CString callingEpId, CString callRef); //##ModelId=424BB646002A void routeToAlias(CString _alias, CString callingEpId, CString callRef); //##ModelId=424BB6460039 void transferCall(CString _alias, CString _destination); //##ModelId=424BB6460048 void makeCall(CString _epid, CString _destination); //##ModelId=424BB6460055 void unregisterAlias(CString _alias); //##ModelId=424BB6460057 void disconnectAlias(CString _alias); //##ModelId=424BB6460066 void disconnectEndpoint(CString _epid); //##ModelId=424BB6460068 void getCurrentCalls(); //##ModelId=424BB6460075 void getCurrentRegistrations(); //##ModelId=424BB6460076 void refresh(); //##ModelId=424BB6460077 void splitAliases(CString aString,cstring_vec_t & splitFiles); //##ModelId=424BB6460086 void splitFields(CString aString,cstring_vec_t & splitFields); //##ModelId=424BB6460095 void close(); //##ModelId=424BB6460096 void stop(); //##ModelId=424BB64600A4 void init(ACDX* _store, CString _host, int _port); //##ModelId=424BB64600B3 virtual ~GkClient(); protected: //##ModelId=424BB64600B5 CString GKecho; //##ModelId=424BB64600C3 CString GKecho_end; //##ModelId=424BB64600C4 BOOL parseMessage(); //##ModelId=424BB64600D2 void printErrorMessage(); //##ModelId=424BB64600D3 void parseSemicolon(cstring_vec_t &semicolonlist,CString gkEcho); //##ModelId=42198D180105 //DWORD m_ip; //##ModelId=42198D180106 //int m_port; //##ModelId=42198D180114 //CCallRouter* m_CCallRouter; //ACDX* m_ACDX; private: //Logger logger; //##ModelId=424BB64600E4 void sendGkCommand(CString cmd); //##ModelId=42198D180125 //CCallRouter* router; //##ModelId=424BB64600F3 ACDX* router; //##ModelId=424BB64600F7 CString host; //##ModelId=424BB6460101 int port; // socket io to communicate with the gatekeeper //##ModelId=424BB6460112 SOCKET GK_socket; //##ModelId=424BB6460116 char FAR * m_buf; //InputStream istream; //OutputStream ostream; //##ModelId=424BB6460121 BOOL stopped ;//= FALSE; //##ModelId=424BB6460130 static long WAIT_SEC ; // wait 5 seconds before reconnecting to GnuGk // cstring_vec_t splitFields_cmd; // vector of '|' from gk cmd // cstring_vec_t splitFields_alia; // vector of '=' from alias }; #endif // !defined(AFX_GKCLIENT_H__BF1B84AD_3BCE_44DF_B3EC_B0DD7A21EEF0__INCLUDED_)