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); }
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 } }