Exemplo n.º 1
0
        /// <summary>
        /// Returns the real time data for a view profile.
        /// </summary>
        /// <param name="profileId">The analytics view profile to query, in the form: ga:XXXXX.</param>
        /// <param name="metrics">A list of real time metrics. Not all dimensions and metrics can be queried together. See the GAMetrics object for details.</param>
        public GAResult GetRealtimeData(string profileId)
        {
            if (string.IsNullOrEmpty(profileId))
                throw new ArgumentException("The profile id name cannot be null or empty");

            var result = new GAResult();

            try
            {
                var query = GAService.Data.Realtime.Get(profileId, GAMetrics.RealTimeActiveUsers);
                query.Dimensions = GADimensions.RealTimeCity;
                query.Fields = "columnHeaders,rows,totalResults,totalsForAllResults";
                query.MaxResults = 10;

                var response = query.Execute();

                result.RealtimeResults.SetValues(response);
                result.Success = true;
            }
            catch (Exception ex)
            {
                result.Success = false;
                result.ErrorMessage = ex.Message;
            }

            return result;
        }
Exemplo n.º 2
0
        public GAResult GetSessions(string profileId, string startDate, string endDate, string dimensions)
        {
            var result = new GAResult();

            try
            {
                var query = GAService.Data.Ga.Get(profileId, startDate, endDate, "ga:sessions");
                query.Dimensions = dimensions;
                query.Fields = "rows,totalResults,totalsForAllResults";

                var response = query.Execute();
                result.Results.SetValues(response);
                result.Success = true;
            }
            catch(Exception ex)
            {
                result.Success = false;
                result.ErrorMessage = ex.Message;
            }

            return result;
        }