public void CloseSession() { App.Instance.Connector.Receive <MessageRequest>(null); App.Instance.Connector.Receive <SessionCloseRequest>(null); SessionCloseRequest request = new SessionCloseRequest { Signature = new byte[1] }; Task.Run(async() => await App.Instance.Connector.SendRequest(request)); }
public SessionCloseResponse SessionClose(ClientSession session, SessionCloseRequest request) { var response = request.CreateResponse <SessionCloseResponse>(); response.Token = request.Token; try { if (session.HasChat) { session.LeaveChatSession(); } response.Success = true; return(response); } catch (Exception e) { response.Success = false; return(response); } }
public void CloseSession(ClientSession ses) { var request = new SessionCloseRequest() { Token = 0 }; if (ses != sessionCreator) { sessionCreator.Send <RequestBase>(request); } else { foreach (ClientSession sess in sessionMembers) { if (sess != null) { sess.Send <RequestBase>(request); } } ; } }