Ejemplo n.º 1
0
        private void SendError(HttpStatusCode code, Socket sender)
        {
            var error = new ModifyChannelResponsePacket(new ModifyChannelResponsePacketData(
                                                            (int)code, "", 0, ""
                                                            ));

            Zephy.serverSocket.SendPacket(error, sender);
        }
Ejemplo n.º 2
0
        protected override void Handle(ModifyChannelRequestPacket packet, Socket sender)
        {
            var data = packet.Data;

            if (data == null)
            {
                return;
            }

            Channel channel = channelCrud.ReadOneById(data.channel);

            if (channel == null)
            {
                SendError(HttpStatusCode.NotFound, sender);
                return;
            }

            if (data.data.Length < 2 && data.data.Length > 32)
            {
                SendError(HttpStatusCode.BadRequest, sender);
                return;
            }

            channel.name = data.data;
            channelCrud.UpdateOne(channel._id, channel);

            var response = new ModifyChannelResponsePacket(new ModifyChannelResponsePacketData(
                                                               (int)HttpStatusCode.OK, channel._id, data.action, data.data
                                                               ));

            foreach (string memberId in channel.members)
            {
                if (ActiveUsers.IsLoggedIn(memberId))
                {
                    Zephy.serverSocket.SendPacket(response, ActiveUsers.GetUser(memberId).clientSocket);
                }
            }
        }