public static async Task <TrackingResult> TrackPageViewAsync(this Tracker tracker, HttpRequestMessage httpRequest, string pageTitle, string pageUrl = null) { var pageViewParameters = new PageView { DocumentTitle = pageTitle, DocumentLocationUrl = pageUrl, UserAgent = httpRequest.Headers.UserAgent.ToString(), DocumentHostName = httpRequest.RequestUri.Host, UserLanguage = httpRequest.Headers.AcceptLanguage.ToString().ToLower(), ReferralUrl = httpRequest.Headers.Referrer != null?httpRequest.Headers.Referrer.ToString() : null, CacheBuster = tracker.AnalyticsSession.GenerateCacheBuster() }; return(await tracker.TrackAsync(pageViewParameters)); }
public static async Task <TrackingResult> TrackUserTimingAsync(this Tracker tracker, HttpRequestMessage httpRequest, string pageTitle, string pageUrl, string category, string var, long value, string label = null) { var userTimingParameters = new UserTimings { DocumentTitle = pageTitle, DocumentLocationUrl = pageUrl, UserAgent = httpRequest.Headers.UserAgent.ToString(), DocumentHostName = httpRequest.RequestUri.Host, UserLanguage = httpRequest.Headers.AcceptLanguage.ToString().ToLower(), UserTimingCategory = category, UserTimingVariable = var, UserTimingTime = value, UserTimingLabel = label, }; return(await tracker.TrackAsync(userTimingParameters)); }
public static async Task <TrackingResult> TrackPageViewAsync(this Tracker tracker, HttpRequestMessage httpRequest, string pageTitle, string pageUrl = null) { if (pageUrl == null) { pageUrl = httpRequest.RequestUri.AbsolutePath; } var pageViewParameters = new PageView { DocumentTitle = pageTitle, DocumentLocationUrl = pageUrl, UserAgent = httpRequest.Headers.UserAgent.ToString(), DocumentHostName = httpRequest.RequestUri.Host, UserLanguage = httpRequest.Headers.AcceptLanguage.ToString().ToLower(), IpOverride = WebApiHelper.GetClientIp(httpRequest) }; return(await tracker.TrackAsync(pageViewParameters)); }