private async Task<string> getResponseAsync(PostDataWriter args)
        {
            //Data request
            HttpClientHandler handler = new HttpClientHandler();
            handler.CookieContainer = cookies;
            handler.AllowAutoRedirect = false;
            handler.UseCookies = true;
            HttpClient client = new HttpClient(handler);

            HttpResponseMessage response = null;
            HttpRequestMessage message = new HttpRequestMessage(HttpMethod.Post, args.GetURL());

#if DEBUG
            Debug.WriteLine(args.GetURL() + " / " + args.GetPostDataString());
#endif

            StringContent content = new StringContent(args.GetPostDataString());
            content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/x-www-form-urlencoded");
            message.Content = content;
            message.Headers.AcceptCharset.Add(new StringWithQualityHeaderValue("gzip"));
            response = await client.SendAsync(message);
            string resp;
            if (response.StatusCode == HttpStatusCode.Redirect)
            {
                resp = String.Empty;
            }
            else
            {
                resp = await response.Content.ReadAsStringAsync();
            }
            return resp;
        }
        public async Task<string> makeOperationAsync(SupportedModules module, SupportedMethods method, Cours reqCours = null, string resStr = "", bool forAuth = false)
        {
            if (IsNetworkAvailable() && (forAuth || await isValidAccountAsync(forAuth)))
            {
                PostDataWriter args = new PostDataWriter() { module = module, method = method, cidReq = reqCours, resStr = resStr };

                String strContent = "";
                try
                {

                    strContent = await getResponseAsync(args);
#if DEBUG
                    Debug.WriteLine("Call for :" + module + "/" + method + "\nResponse :" + strContent + "\n");
#endif
                }
                catch (Exception ex)
                {
                    lastException = ex;
                }
                return strContent;
            }
            else
            {
                lastException = new NetworkException("Network Unavailable");
                return null;
            }
        }