Example #1
0
        public async Task Activated(CancellationToken cancellationToken = default)
        {
            var lightsToSwitchOn = await Light.LoadFromEntitiesId(connector, Light.Name.Halogen2, Light.Name.Halogen3);

            var allLights = await Light.LoadAllLights(connector, Light.Name.Halogen2, Light.Name.Halogen3);

            var allRgbLights = await RgbLight.LoadAllLights(connector);

            var allSwitches = await Switch.LoadAllLights(connector);

            var stairsLight = await InputNumber.LoadFromEntityId(connector, InputNumber.Name.StairsMinimumBrightness);

            var mediaPlayers = await MediaPlayer.LoadAll(connector);

            var cover = await Cover.LoadFromEntityId(connector, Cover.Name.Salon);

            await lightsToSwitchOn.TurnOnAll();

            await stairsLight.SetValue(30);

            await cover.CloseCover();

            await mediaPlayers.TurnOffAll();

            await allLights.TurnOffAll();

            await allRgbLights.TurnOffAll();

            await allSwitches.TurnOffAll();

            await Task.Delay(TimeSpan.FromSeconds(10), cancellationToken);

            await allRgbLights.TurnOffAll();

            await Task.Delay(TimeSpan.FromMinutes(5), cancellationToken);

            await lightsToSwitchOn.TurnOffAll();

            await stairsLight.SetValue(0);

            await Task.Delay(TimeSpan.FromSeconds(10), cancellationToken);

            await allLights.TurnOffAll();

            await allRgbLights.TurnOffAll();

            await lightsToSwitchOn.TurnOffAll();

            await stairsLight.SetValue(0);
        }
Example #2
0
        public async Task Activated(CancellationToken cancellationToken = default)
        {
            var lightsToSwitchOn = await Light.LoadFromEntitiesId(connector, Light.Name.Halogen2, Light.Name.Halogen3, Light.Name.ExternalLight);

            var allLights = await Light.LoadAllLights(connector, Light.Name.Halogen2, Light.Name.Halogen3);

            var allRgbLights = await RgbLight.LoadAllLights(connector);

            var allSwitches = await Switch.LoadAllLights(connector, Switch.Name.GardenLight);

            var stairsLight = await InputNumber.LoadFromEntityId(connector, InputNumber.Name.StairsMinimumBrightness);

            var mediaPlayers = await MediaPlayer.LoadAll(connector);

            var cover = await Cover.LoadFromEntityId(connector, Cover.Name.Salon);

            var gardenLight = await Switch.LoadFromEntityId(connector, Switch.Name.GardenLight);

            await lightsToSwitchOn.TurnOnAll();

            await gardenLight.TurnOn();

            var sunlight = await connector.LoadEntityFromStates <Sensor>(Sensor.Name.Sunlight.GetEntityId());

            if (int.TryParse(sunlight.State, out var result) && result < 4)
            {
                await cover.CloseCover();
            }

            await mediaPlayers.TurnOffAll();

            await allLights.TurnOffAll();

            await allRgbLights.TurnOffAll();

            await allSwitches.TurnOffAll();

            await stairsLight.SetValue(0);

            await Task.Delay(TimeSpan.FromMinutes(15), cancellationToken);

            await lightsToSwitchOn.TurnOffAll();

            await gardenLight.TurnOff();
        }