#pragma once #include #include typedef enum MyDirect { UNKNOWN = 0, FS = 1, CTI = 2, ACD = 3, IVR = 4, WS = 5 }Direct; class IWSClient { public: typedef std::function CallBackFun; static IWSClient* GetInstance(); virtual bool init(std::string ip,uint16_t port,Direct direct = UNKNOWN) = 0; virtual bool sendMsgToFS(std::string msg) = 0; virtual bool sendMsgToCTI(std::string msg) = 0; virtual bool sendMsgToACD(std::string msg) = 0; virtual bool sendMsgToIVR(std::string msg) = 0; virtual bool sendMsgToWS(std::string msg) = 0; virtual void recvMsg(CallBackFun fun) = 0; virtual void run() = 0; virtual void close() = 0; };