Get Readings on Specified Date


Static Host Value

      
            static string _host = "https://astuteincservices.com";
        
    

A method named LogMeIn() returns an instance of DGLogInRequest with your credentials.


C# HTTP

        
             static void GetReadingsOnDate(string token)
            {
                HttpClient apiClient = new HttpClient();
                string route = "/api/readings";

                var json = JsonConvert.SerializeObject(LogMeIn());
                var strContent = new StringContent(json, UnicodeEncoding.UTF8, "application/json");
                apiClient.DefaultRequestHeaders.Clear();
                apiClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);

                var response = apiClient.PostAsync(_host + route + "/getreadings/2018-09-10", strContent).Result;

                Console.WriteLine(response.StatusCode);

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    var reply = response.Content.ReadAsStringAsync().Result;

                    if (!reply.StartsWith("ERROR:"))
                        ProcessReadings(reply);
                    else
                        Console.WriteLine(reply);
                }
                else
                    Console.WriteLine("Not authorized");
            }

            void ProcessReadings(string content)
            {
                var returnReadings = JsonConvert.DeserializeObject<List<DGAstuteHub>>(content);

                foreach (var readings in returnReadings)
                {
                    Console.WriteLine("-------------------");
                    Console.WriteLine(readings.hubId);             // Hub ID
                    Console.WriteLine(readings.gatewayTimestamp);  // Reading Date
                    Console.WriteLine(readings.reading);           // Device Reading
                }
             }
        
    

C# Flurl

        
            static void FlurlGetReadingsOnDate(string token)
            {
                var response = _host.AppendPathSegment("/api/readings/getreadings/2018-09-10").WithOAuthBearerToken(token).PostJsonAsync(LogMeIn()).Result;

                Console.WriteLine(response.StatusCode);

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    var reply = response.Content.ReadAsStringAsync().Result;

                    if (!reply.StartsWith("ERROR:"))
                        ProcessReadings(reply);
                    else
                        Console.WriteLine(reply);
                }
                else
                    Console.WriteLine("Not authorized");
            }

            void ProcessReadings(string content)
            {
                var returnReadings = JsonConvert.DeserializeObject<List<DGAstuteHub>>(content);

                foreach (var readings in returnReadings)
                {
                    Console.WriteLine("-------------------");
                    Console.WriteLine(readings.hubId);             // Hub ID
                    Console.WriteLine(readings.gatewayTimestamp);  // Reading Date
                    Console.WriteLine(readings.reading);           // Device Reading
                }
             }