public async Task <bool> SendStatusReq() { ConnectionStatusRequest stat = new ConnectionStatusRequest(); stat.Build(_receiveEndPoint, _communicationChannel); stat.SetChannelId(_communicationChannel); await Send(stat.GetBytes()); await Task.Delay(200); return(IsConnected); }
public bool Handle(IRequestMessage msg) { Type msgType = msg.GetType(); if (typeof(IRequestMessage).IsAssignableFrom(msgType)) { if (typeof(ConnectionStatusRequest) == msgType) { ConnectionStatusRequest cs = (ConnectionStatusRequest)msg; Sessions.Push(Sessions.GetUsername(cs.ClientKey), new IResponseMessage[] { new ConnectionStatusResponse() { ClientKey = cs.ClientKey, IsConnected = true } }); return(true); } } return(false); }