void ProcessPingRequest(TcpClient client, Packet request, byte[] buffer) { var stream = client.GetStream(); Packet response = new Packet(); JsonSharp.JsonArray descriptionLines = new JsonSharp.JsonArray(); foreach (string lines in Description) { descriptionLines.elements.Add(lines); } response["name"] = Name; response["description"] = descriptionLines; response["program"] = "Carbonate Hydro Beta"; response["online"] = 0; response["maxOnline"] = MaxOnline; if (users.ContainsKey(request["username"])) { response["existUser"] = true; var userObject = new JsonSharp.JsonObject(); var user = users[request["username"]]; userObject["nickname"] = user.nickname; userObject["permissionLevel"] = user.permissionLevel; userObject["registerTime"] = user.registerTime; response["userInfo"] = userObject; } else { response["existUser"] = false; } Packet.SendPacket(stream, response); stream.Close(); client.Close(); client.Dispose(); }
public void SendHistory(OnlineUser user) { Packet packet = new Packet(); packet["messageType"] = "history"; JsonSharp.JsonArray array = new JsonSharp.JsonArray(); foreach (Packet message in historyMessage) { array.elements.Add(message.ToJsonObject()); } packet["messages"] = array; user.Send(packet); }