Exemplo n.º 1
0
        /// <summary>
        /// Request to get heart rate in specific in a range time
        /// </summary>
        /// <param name="date"></param>
        /// <param name="dateRangePeriod"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public async Task <HeartActivitiesTimeSeries> GetHeartRateTimeSeries(DateTime date, DateRangePeriod dateRangePeriod, string userId = null)
        {
            if (string.IsNullOrWhiteSpace(userId))
            {
                userId = "-";
            }

            string apiCall = String.Format("https://api.fitbit.com/1.1/user/{0}/activities/heart/date/{1}/{2}.json", userId, date.ToString("yyyy-MM-dd"), dateRangePeriod.GetStringValue());

            HttpResponseMessage response = await HttpClient.GetAsync(apiCall);

            await HandleResponse(response);

            string responseBody = await response.Content.ReadAsStringAsync();

            var seralizer = new JsonDotNetSerializer();

            var fitbitResponse = seralizer.GetHeartActivitiesTimeSeries(responseBody);

            return(fitbitResponse);
        }