public static void AnswerContactRequest(byte[] data, Server server, IPEndPoint ip, bool ack)
        {
            string message = "";

            // Unpack the petition
            ContactReqPacket cPacket = Packet.Unpack <ContactReqPacket>(data);

            ClientStatus current = server.GetClient(cPacket.To);

            if (ClientsManagement.AckOrRegContactReq(cPacket, current, ack, out message))
            {
                server.DebugInfo("Answer Contact request: " + (ack
                                                                ? "Request accepted correctly."
                                                                : "Request refused correctly."));

                if (ack)
                {
                    server.DebugInfo("New Contact added: " + cPacket.From + " - " + cPacket.To);
                }

                // Send the ack
                server.Udp.SendMessage(new AckErrorPacket(PacketTypes.ContactAck, "Answered correctly").Pack(), ip);
            }
            else
            {
                server.DebugInfo("Answer Contact request: Incorrect contact request.");
                // Send error
                server.Udp.SendError(message, ip);
            }
        }
        public static void NewContactRequest(byte[] data, Server server, IPEndPoint ip)
        {
            string message = "";

            // Unpack the petition
            ContactReqPacket cPacket = Packet.Unpack <ContactReqPacket>(data);

            ClientStatus current = server.GetClient(cPacket.From);

            if (ClientsManagement.NewContactRequest(cPacket, current, out message))
            {
                server.DebugInfo(cPacket.From + " made a contact request to " + cPacket.To);

                // Send the ack
                server.Udp.SendMessage(new AckErrorPacket(PacketTypes.ContactAck, "New contact request added to database").Pack(), ip);
            }
            else
            {
                server.DebugInfo("New Contact Request: Incorrect contact request.");
                // Send error
                server.Udp.SendError(message, ip);
            }
        }