Exemple #1
0
        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();
        }
Exemple #2
0
        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);
        }