public static IEnumerable <Task <DeviceTracker> > LoadAllDeviceTrackers(HomeAssistantConnector connector, params Name[] except) { foreach (Name deviceTrackerName in ((Name[])Enum.GetValues(typeof(Name))).Except(except)) { yield return(LoadFromEntityId(connector, deviceTrackerName)); } }
public AirPurifier2sSleepingRoom( ILogger <AirPurifier2sSleepingRoom> logger, HomeAssistantConnector connector, AutomationHelpersFactory automationHelpersFactory, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.dateTimeHelper = dateTimeHelper; turnOffCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTurnOffTime)); turnOnCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTurnOnTime)); silentSpeedCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(speedChangeForTime)); autoSpeedCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(speedChangeForTime)); }
public static async Task <Sun> Load(HomeAssistantConnector connector, IDateTimeHelper dateTimeHelper) { var sun = await connector.LoadEntityFromStates <Sun>(EntityId); sun.DateTimeHelper = dateTimeHelper; return(sun); }
public static IEnumerable <Task <MediaPlayer> > LoadFromEntitiesId(HomeAssistantConnector connector, params Name[] lightNames) { foreach (var lightName in lightNames) { yield return(LoadFromEntityId(connector, lightName)); } }
public static IEnumerable <Task <DeviceTracker> > LoadFromEntitiesId(HomeAssistantConnector connector, params Name[] deviceTrackerNames) { foreach (var lightName in deviceTrackerNames) { yield return(LoadFromEntityId(connector, lightName)); } }
public LightsComingHomeAutomation(ILogger <LightsComingHomeAutomation> logger, HomeAssistantConnector connector, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.dateTimeHelper = dateTimeHelper; }
public static IEnumerable <Task <Switch> > LoadFromEntitiesId(HomeAssistantConnector connector, params Name[] switchNames) { foreach (var switchName in switchNames) { yield return(LoadFromEntityId(connector, switchName)); } }
public static async Task <XiaomiAirPurifier> LoadFromEntityId(HomeAssistantConnector connector, Name entityId) { var purifier = await connector.LoadEntityFromStates <XiaomiAirPurifier>(entityId.GetEntityId()); purifier.pm25Sensor = await connector.LoadEntityFromStates <BaseEntity>($"sensor.{entityId.GetEntityId().Replace(".", "")}_pm2_5"); purifier.favoriteLevelNumber = await connector.LoadEntityFromStates <BaseEntity>($"number.{entityId.GetEntityId().Replace(".", "")}_favorite_level"); return(purifier); }
public static async Task <IList <MediaPlayer> > LoadAll(HomeAssistantConnector connector, params Name[] except) { var mediaPlayers = new List <MediaPlayer>(); foreach (Name lightName in ((Name[])Enum.GetValues(typeof(Name))).Except(except)) { mediaPlayers.Add(await LoadFromEntityId(connector, lightName)); } return(mediaPlayers); }
public ScenesActivator( ILogger <ScenesActivator> logger, IEnumerable <IScene> scenes, HomeAssistantWebSocketConnector webSocketConnector, HomeAssistantConnector connector) { this.logger = logger; this.scenes = scenes; this.webSocketConnector = webSocketConnector; this.connector = connector; }
public static async Task <IList <Light> > LoadAllLights(HomeAssistantConnector connector, params Name[] except) { var lights = new List <Light>(); foreach (Name lightName in ((Name[])Enum.GetValues(typeof(Name))).Except(except)) { lights.Add(await LoadFromEntityId(connector, lightName)); } return(lights); }
public static async Task <IList <Light> > LoadFromEntitiesId(HomeAssistantConnector connector, params Name[] lightNames) { var lights = new List <Light>(); foreach (var lightName in lightNames) { lights.Add(await LoadFromEntityId(connector, lightName)); } return(lights); }
public static async Task <bool> IsAnyoneHome(HomeAssistantConnector connector, params Name[] except) { var usersToFind = new[] { Name.Arek, Name.Patrycja }.Except(except); var deviceTrackersTasks = LoadFromEntitiesId(connector, usersToFind.ToArray()); var deviceTrackers = new List <DeviceTracker>(); foreach (var deviceTrackerTask in deviceTrackersTasks) { deviceTrackers.Add(await deviceTrackerTask); } return(deviceTrackers.Any(t => t.State == "home")); }
public AirPurifier2sTrening( ILogger <AirPurifier2sTrening> logger, HomeAssistantConnector connector, AutomationHelpersFactory automationHelpersFactory) { this.logger = logger; this.connector = connector; this.turnOffCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTurnOffTime)); this.turnOnCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTurnOnTime)); }
public AirHumidifierWaterLevelNotification( ILogger <AirHumidifierWaterLevelNotification> logger, HomeAssistantConnector connector, AutomationHelpersFactory automationHelpersFactory, NotificationPushService notificationPushService, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.notificationPushService = notificationPushService; this.dateTimeHelper = dateTimeHelper; this.notifyCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.Zero) .Name(logger, this.GetType().Name); }
public AirPurifierProAutomations( ILogger <AirPurifierProAutomations> logger, HomeAssistantConnector connector, AutomationHelpersFactory automationHelpersFactory, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.dateTimeHelper = dateTimeHelper; this.turnOffCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTime)); this.turnOnCondition = automationHelpersFactory .GetConditionHelper() .For(TimeSpan.FromMinutes(forTime)); }
public AutomationsSupervisor( ILogger <AutomationsSupervisor> logger, HomeAssistantConnector connector, HomeAssistantWebSocketConnector webSocketConnector, IEnumerable <IEntityStateAutomation> entityStateAutomations, IEnumerable <IEntitiesStateAutomation> entitiesStatesAutomations, IEnumerable <ITimeUpdate> timeUpdateAutomations, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.webSocketConnector = webSocketConnector; this.stateAutomations = entityStateAutomations; this.entitiesStatesAutomations = entitiesStatesAutomations; this.timeUpdateAutomations = timeUpdateAutomations; this.dateTimeHelper = dateTimeHelper; }
public AirHumidifierAutomations( ILogger <AirHumidifierAutomations> logger, HomeAssistantConnector connector, AutomationHelpersFactory automationHelpersFactory, IDateTimeHelper dateTimeHelper) { this.logger = logger; this.connector = connector; this.dateTimeHelper = dateTimeHelper; this.turnOffCondition = automationHelpersFactory .GetConditionHelper() .Name(logger, "Air humidifier turning off") .For(TimeSpan.FromMinutes(1)); this.turnOnCondition = automationHelpersFactory .GetConditionHelper() .Name(logger, "Air humidifier turning on") .For(TimeSpan.FromMinutes(10)); }
public static async Task <Cover> LoadFromEntityId(HomeAssistantConnector entityLoader, Name coverName) { return(await entityLoader.LoadEntityFromStates <Cover>(coverName.GetEntityId())); }
public static async Task <Light> LoadFromEntityId(HomeAssistantConnector connector, Name lightName) { return(await connector.LoadEntityFromStates <Light>(lightName.GetEntityId())); }
public static async Task <InputSelect> LoadFromEntityId(HomeAssistantConnector connector, Name inputNumberName) => await connector.LoadEntityFromStates <InputSelect>(inputNumberName.GetEntityId());
public StandardLightScene(HomeAssistantConnector connector) { this.connector = connector; }
public StopRunningScene(HomeAssistantConnector connector, OfficeLightAutomation officeLightAutomation) { this.connector = connector; this.officeLightAutomation = officeLightAutomation; }
public RunningScene(HomeAssistantConnector connector) { this.connector = connector; }
public static async Task <Switch> LoadFromEntityId(HomeAssistantConnector connector, Name switchName) { return(await connector.LoadEntityFromStates <Switch>(switchName.GetEntityId())); }
public BraviaSwitchOnLedLightsAutomation(HomeAssistantConnector connector, IDateTimeHelper dateTimeHelper) { this.connector = connector; this.dateTimeHelper = dateTimeHelper; }
public OutHomeScene(HomeAssistantConnector connector, IDateTimeHelper dateTimeHelper) { this.connector = connector; this.dateTimeHelper = dateTimeHelper; }
public NotificationPushService(HomeAssistantConnector connector) { this.connector = connector; }
public static async Task <XiaomiAirHumidifier> LoadFromEntityId(HomeAssistantConnector entityLoader, Name entityId) { return(await entityLoader.LoadEntityFromStates <XiaomiAirHumidifier>(entityId.GetEntityId())); }
public ExternalLightScene(HomeAssistantConnector connector) { this.connector = connector; }