private void EstablishConnection(Action <bool, string, bool> connectCompletionHandler) { Packet.Connect connReq = new Packet.Connect(); connReq.userid = AuthClientId; connReq.password = AuthPwd; byte[] data = DataTranslater.Serialize(connReq); BookRequest(typeof(Packet.Connect).Name, connectCompletionHandler); _connection.SendAsync(MsgType.CONN, data, delegate(bool succ, string msg) { if (succ) { Trace.WriteLine("Request establish connection"); } else { RemoveBookedRequest(typeof(Packet.Connect).Name); connectCompletionHandler( false, string.Format("Attempt to establish connection failed due to {0}", msg), false); } }); }
public void RequestAsync(string method, byte[] reqData, ResponseHandlerDel responseHandler) { Packet.Request req = new Packet.Request() { session = SessionId, method = method, param_data = reqData }; byte[] data = DataTranslater.Serialize(req); BookRequest(method, responseHandler); _connection.SendAsync(MsgType.REQ, data, delegate(bool succ, string msg) { if (succ) { Trace.WriteLine(string.Format("Request {0} success.", method)); } else { RemoveBookedRequest(method); responseHandler(false, null, msg); } }); }
private void HeartbeatProc(object state) { try { Packet.Heartbeat hb = new Packet.Heartbeat(); hb.timestamp = (int)DateTime.Now.TimeOfDay.TotalSeconds; byte[] data = DataTranslater.Serialize(hb); _connection.SendAsync(MsgType.HEARTBEAT, data, null); } catch (System.Exception ex) { Debug.WriteLine("Sending heartbeat failed due to {0}", ex.Message); } }