/// <summary> /// Initializes a new instance of the <see cref="ZipatoSensors"/> class. /// The list of UUIDs from the SettingsData is used to create the device instances. /// </summary> /// <param name="zipato"></param> public ZipatoSensors(IZipato zipato) { _zipato = zipato; foreach (var uuid in zipato.SensorsInfo.VirtualMeters) { VirtualMeters.Add(new VirtualMeter(zipato, uuid)); } foreach (var uuid in zipato.SensorsInfo.ConsumptionMeters) { ConsumptionMeters.Add(new ConsumptionMeter(zipato, uuid)); } foreach (var uuid in zipato.SensorsInfo.TemperatureSensors) { TemperatureSensors.Add(new TemperatureSensor(zipato, uuid)); } foreach (var uuid in zipato.SensorsInfo.HumiditySensors) { HumiditySensors.Add(new HumiditySensor(zipato, uuid)); } foreach (var uuid in zipato.SensorsInfo.LuminanceSensors) { LuminanceSensors.Add(new LuminanceSensor(zipato, uuid)); } Status = _zipato?.Data?.Status ?? Uncertain; }
/// <summary> /// Initializes a new instance of the <see cref="ZipatoDevices"/> class. /// The list of UUIDs from the SettingsData is used to create the device instances. /// </summary> /// <param name="zipato"></param> public ZipatoDevices(IZipato zipato) { _zipato = zipato; foreach (var uuid in zipato.DevicesInfo.Switches) { Switches.Add(new Switch(zipato, uuid)); } foreach (var uuid in zipato.DevicesInfo.OnOffSwitches) { OnOffSwitches.Add(new OnOff(zipato, uuid)); } foreach (var uuid in zipato.DevicesInfo.Wallplugs) { Wallplugs.Add(new Plug(zipato, uuid)); } foreach (var uuid in zipato.DevicesInfo.Dimmers) { Dimmers.Add(new Dimmer(zipato, uuid)); } foreach (var uuid in zipato.DevicesInfo.RGBControls) { RGBControls.Add(new RGBControl(zipato, uuid)); } Status = _zipato?.Data?.Status ?? Uncertain; }
/// <summary> /// Initializes a new instance of the <see cref="ZipatoController"/> class. /// </summary> /// <param name="zipato">The Zipato instance.</param> /// <param name="options">The application options.</param> /// <param name="logger">The application logger.</param> public ZipatoController(IZipato zipato, IOptions <AppSettings> options, ILogger <ZipatoController> logger) : base(logger, options) { _zipato = zipato; }
/// <summary> /// Initializes a new instance of the <see cref="HealthCheck"/> class. /// </summary> /// <param name="zipato">The IZipato instance.</param> /// <param name="options">The application options.</param> /// <param name="logger">The application logger.</param> public HealthCheck(IZipato zipato, IOptions <AppSettings> options, ILogger <HealthCheck> logger) : base(logger, options) { _zipato = zipato; }
/// <summary> /// Initializes an instance of the <see cref="ZipatoHub"/> class. /// </summary> /// <param name="zipato">The Zipato instance.</param> /// <param name="logger">The application logger.</param> /// <param name="options">The application options.</param> public ZipatoHub(IZipato zipato, ILogger <ZipatoHub> logger, IOptions <AppSettings> options) : base(logger, options) { _zipato = zipato; }
/// <summary> /// Initializes a new instance of the <see cref="Dimmer"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public Dimmer(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Intensity = zipato.GetAttributeByName(uuid, "INTENSITY"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="HumiditySensor"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public HumiditySensor(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Humidity = zipato.GetAttributeByName(uuid, "HUMIDITY"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="LuminanceSensor"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public LuminanceSensor(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Luminance = zipato.GetAttributeByName(uuid, "LUMINANCE"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="TemperatureSensor"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public TemperatureSensor(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Temperature = zipato.GetAttributeByName(uuid, "TEMPERATURE"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="Switch"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public Switch(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; State = zipato.GetAttributeByName(uuid, "STATE"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="ConsumptionMeter"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public ConsumptionMeter(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; CummulativeConsumption = zipato.GetAttributeByName(uuid, "CUMULATIVE_CONSUMPTION"); CurrentConsumption = zipato.GetAttributeByName(uuid, "CURRENT_CONSUMPTION"); Refresh(); }
/// <summary> /// Initializes an instance of the <see cref="ZipatoMonitor"/> class. /// </summary> /// <param name="zipato">The Zipato instance.</param> /// <param name="hub">The test data SignalR hub.</param> /// <param name="logger">The application logger.</param> /// <param name="options">The application options.</param> /// <param name="environment"></param> public ZipatoMonitor(IZipato zipato, IHubContext <ZipatoHub> hub, ILogger <ZipatoMonitor> logger, IOptions <AppSettings> options, IHostingEnvironment environment) : base(logger, options, environment) { _zipato = zipato; _hub = hub; }
/// <summary> /// Initializes a new instance of the <see cref="RunCommand"/> class. /// </summary> /// <param name="zipato">The Zipato instance.</param> /// <param name="logger">The logger instance.</param> /// <param name="options">The setting options instance.</param> /// <param name="environment">The hosting environment instance.</param> public RunCommand(IZipato zipato, ILogger <RunCommand> logger, IOptions <AppSettings> options, IHostingEnvironment environment) : base(logger, options, environment) { _logger?.LogDebug("RunCommand()"); // Setting the Zipato instance. _zipato = zipato; }
/// <summary> /// Initializes a new instance of the <see cref="TestCreate"/> class. /// </summary> /// <param name="outputHelper"></param> public TestCreate(ZipatoFixture fixture, ITestOutputHelper outputHelper) { // Set the default culture. CultureInfo.CurrentCulture = new CultureInfo("en-US"); var loggerFactory = new LoggerFactory(); loggerFactory.AddProvider(new XunitLoggerProvider(outputHelper)); _logger = loggerFactory.CreateLogger <Zipato>(); _zipato = fixture.Zipato; }
/// <summary> /// Initializes a new instance of the <see cref="RGBControl"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public RGBControl(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Intensity = zipato.GetAttributeByName(uuid, "INTENSITY"); Red = zipato.GetAttributeByName(uuid, "red"); Green = zipato.GetAttributeByName(uuid, "green"); Blue = zipato.GetAttributeByName(uuid, "blue"); ColdWhite = zipato.GetAttributeByName(uuid, "coldWhite"); WarmWhite = zipato.GetAttributeByName(uuid, "warmWhite"); RGB = zipato.GetAttributeByName(uuid, "rgb"); RGBW = zipato.GetAttributeByName(uuid, "rgbw"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="ZipatoOthers"/> class. /// The list of UUIDs from the SettingsData is used to create the device instances. /// </summary> /// <param name="zipato"></param> public ZipatoOthers(IZipato zipato) { _zipato = zipato; foreach (var uuid in zipato.OthersInfo.Cameras) { Cameras.Add(new Camera(zipato, uuid)); } foreach (var uuid in zipato.OthersInfo.Scenes) { Scenes.Add(new Scene(zipato, uuid)); } Status = zipato?.Data.Status ?? Uncertain; }
/// <summary> /// Initializes a new instance of the <see cref="RootCommand"/> class. /// The RootCommand sets default values for some properties using the application settings. /// </summary> /// <param name="zipato">The Zipato instance.</param> /// <param name="logger">The logger instance.</param> /// <param name="options">The setting options instance.</param> /// <param name="environment">The hosting environment instance.</param> public RootCommand(IZipato zipato, ILogger <RootCommand> logger, IOptions <AppSettings> options, IHostingEnvironment environment) : base(logger, options, environment) { _logger?.LogDebug("RootCommand()"); // Setting default options from appsettings.json file. BaseAddress = _settings.BaseAddress; Timeout = _settings.Timeout; User = _settings.User; Password = _settings.Password; IsLocal = _settings.IsLocal; // Setting the Zipato instance. _zipato = zipato; }
/// <summary> /// Initializes a new instance of the <see cref="VirtualMeter"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public VirtualMeter(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetEndpoint(uuid)?.Name; Value1 = zipato.GetAttributeByDefinition(uuid, "value1"); Value2 = zipato.GetAttributeByDefinition(uuid, "value2"); Value3 = zipato.GetAttributeByDefinition(uuid, "value3"); Value4 = zipato.GetAttributeByDefinition(uuid, "value4"); Value5 = zipato.GetAttributeByDefinition(uuid, "value5"); Value6 = zipato.GetAttributeByDefinition(uuid, "value6"); Value7 = zipato.GetAttributeByDefinition(uuid, "value7"); Value8 = zipato.GetAttributeByDefinition(uuid, "value8"); Value9 = zipato.GetAttributeByDefinition(uuid, "value9"); Value10 = zipato.GetAttributeByDefinition(uuid, "value10"); Value11 = zipato.GetAttributeByDefinition(uuid, "value11"); Value12 = zipato.GetAttributeByDefinition(uuid, "value12"); Value13 = zipato.GetAttributeByDefinition(uuid, "value13"); Value14 = zipato.GetAttributeByDefinition(uuid, "value14"); Value15 = zipato.GetAttributeByDefinition(uuid, "value15"); Value16 = zipato.GetAttributeByDefinition(uuid, "value16"); Refresh(); }
/// <summary> /// Initializes a new instance of the <see cref="Scene"/> class. /// </summary> /// <remarks>Requires a valid list of endpoints, attributes, and values.</remarks> /// <param name="zipato"></param> /// <param name="uuid"></param> public Scene(IZipato zipato, Guid uuid) { _zipato = zipato; Uuid = uuid; Name = zipato.GetScene(uuid)?.Name; }