Exemple #1
0
        public CoolingRequest SetFan(bool state)
        {
            CoolingRequest result;
            var            request = new HttpRequestMessage(HttpMethod.Get, $"https://localhost:{portNumber}/api/fan");

            request.Headers.Add("Accept", "application/json");
            //request.Headers.Add("User-Agent", "HttpClientFactory-Sample");

            var client = clientFactory.CreateClient();

            var response = await client.SendAsync(request);

            if (response.IsSuccessStatusCode)
            {
                using var responseStream = await response.Content.ReadAsStreamAsync();

                var options = new JsonSerializerOptions
                {
                    PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
                };
                result = await JsonSerializer.DeserializeAsync <CoolingRequest>(responseStream, options);
            }
            else
            {
                result = new CoolingRequest();
            }
            return(result);
        }
Exemple #2
0
        public CoolingRequest GetCooling()
        {
            var options = new JsonSerializerOptions
            {
                PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
            };

            if (File.Exists(FileUtil.GetFilePath(FilePath)))
            {
                CoolingRequest cooling = JsonSerializer.Deserialize <CoolingRequest>(File.ReadAllText(FileUtil.GetFilePath(FilePath)), options);
                if (cooling == null)
                {
                    return(new CoolingRequest()
                    {
                        State = "Unknown", Response = "Unknown", Succes = true
                    });
                }
                else
                {
                    return(cooling);
                }
            }
            else
            {
                return(new CoolingRequest()
                {
                    State = "Unknown", Response = "Unknown", Succes = true
                });
            }
        }
        public CoolingRequest SetFan(bool state)
        {
            CoolingRequest result = new CoolingRequest();

            try
            {
                if (!serialPort.IsOpen)
                {
                    OpenPort();
                }

                switch (state)
                {
                case true:
                    serialPort.Write("c5");
                    result.State = "on";
                    break;

                case false:
                    serialPort.Write("c6");
                    result.State = "off";
                    break;

                default:
                }

                result.Response = serialPort.ReadLine();
                Console.WriteLine(result.Response);
                return(result);
            }
            catch (Exception ex) {
                Console.WriteLine(ex);
                result.Succes = false;
                return(result);
            }
        }