示例#1
0
        static void Main(string[] args)
        {
            ISolarMaxRESTApiClient RESTApiClient = new SolarMaxRESTApiClient.SolarMaxRESTApiClient("https://solarpacfunction20200628145749.azurewebsites.net");
            var addSolarPacItemFunction          = new SolarMaxRESTApiClient.Models.AzureFunction()
            {
                Url = "api/AddSolarPacItem?code=sZDIHm0GLWIqROPQAUpHYqRR0QY2RDXxDlLVFjA3inqLkUNjUQAVLg==",
                Key = ""
            };
            int lastByte = 150;

            for (int i = 1; i <= 2; i++)
            {
                string baseIpAddress = $"192.168.1.{lastByte++}";

                ITransport      transport      = new NetworkTransport(baseIpAddress, 12345, TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(10), Encoding.UTF8);
                ISolarMaxClient solarMaxClient = new SolarMaxClient.SolarMaxClient(transport);
                Console.WriteLine($"Reading the PAC from {baseIpAddress} ...");
                var energyReportResult = solarMaxClient.GetEnergyReport();
                if (energyReportResult.Result)
                {
                    Console.WriteLine($"Posting the PAC {energyReportResult.PAC} for invert {i} ...");

                    var solarPacItem = new SolarMaxRESTApiClient.Models.SolarPacItem()
                    {
                        inverterId = i, pac = energyReportResult.PAC
                    };
                    var resAdd = RESTApiClient.AddSolarPacItem(addSolarPacItemFunction, solarPacItem);
                    if (resAdd)
                    {
                        Console.WriteLine($"PAC has been posted done successfully");
                    }
                    else
                    {
                        Console.WriteLine($"PAC has *NOT* been posted");
                    }
                }
            }
            Thread.Sleep(5000);
        }
示例#2
0
        static void Main(string[] args)
        {
            while (true)
            {
                int lastByte = 150;
                for (int i = 0; i < 2; i++)
                {
                    string baseIpAddress = $"192.168.0.{lastByte++}";

                    Console.WriteLine($"-------------------------------");
                    Console.WriteLine($"Data from {baseIpAddress}");
                    ITransport      transport       = new NetworkTransport(baseIpAddress, 12345, TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(10), Encoding.UTF8);
                    ISolarMaxClient solarMaxClient  = new SolarMaxClient.SolarMaxClient(transport);
                    var             getStatusResult = solarMaxClient.GetStatus();
                    if (getStatusResult.Result)
                    {
                        Console.WriteLine($"status={getStatusResult.Status}");
                    }
                    else
                    {
                        Console.WriteLine($"status. Error:{getStatusResult.ErrorDescription}");
                    }
                    var energyReportResult = solarMaxClient.GetEnergyReport();
                    if (energyReportResult.Result)
                    {
                        Console.WriteLine($"pac={energyReportResult.PAC}");
                    }
                    else
                    {
                        Console.WriteLine($"pac. Error:{getStatusResult.ErrorDescription}");
                    }
                    Console.WriteLine($"-------------------------------");
                }
                System.Threading.Thread.Sleep(2000); //2 seconds sleep
            }
        }