public async Task<TakeScreenshotResponse> TakeScreenShot(TakeScreenshotRequest request)
        {
            if (string.IsNullOrEmpty(request?.Url))
            {
                throw new ArgumentNullException(nameof(request));
            }

            // Fix the url
            var uriString = request.Url;
            Uri uri;
            if (!Uri.TryCreate(uriString, UriKind.Absolute, out uri))
            {
                throw new Exception("Bad url");
            }

            var filename = await this.cef.Browser.TakeScreenshot(uri.ToString());
            return new TakeScreenshotResponse { FileName = filename, Success = !string.IsNullOrEmpty(filename) };
        }
 public async Task<TakeScreenshotResponse> TakeScreenshot(TakeScreenshotRequest request)
 {
     return await this.pageTrackerService.TakeScreenShot(request);
 }