internal void SetAll(HueSwitchLightData data) { foreach (var light in Lights.Values) { SetLightState(light.Id, data, true); } }
// [HttpPut] // [Route("{apiKey}/groups/{id}/action")] public string SetGroupsAction([FromRoute] string apiKey, [FromRoute] int id, [FromBody] HueSwitchLightData data) { LoginUser(apiKey); if (id == 0) { HueDriver.Instance.SetAll(data); return($@"[{{ ""success"": {{ ""address"": ""/groups/0/action/on"", ""value"": {data.On.ToString().ToLower()} }}}}]"); } throw new NotImplementedException(); }
public HueLight SetLightState(int light, HueSwitchLightData state, bool invoke) { if (invoke) { SwitchLight?.Invoke(this, new HueSwitchLightEventArgs(Lights[light], state.On, state.Bri)); } Lights[light].State.On = state.On; if (state.On && state.Bri == 0) { state.Bri = 100; } Lights[light].State.Bri = state.Bri; return(Lights[light]); }
internal void SetLightState(int light, HueSwitchLightData state) { _driver.SetLightState(light, state, false); }