Example #1
0
        public async Task GetLightsAsyncTest()
        {
            //Get all lights
            var result = await _client.GetLightsAsync();

            Assert.IsNotNull(result);
        }
Example #2
0
        public async Task RetrieveLights()
        {
            try
            {
                var lights = await _hueClient.GetLightsAsync();

                Lights = lights.ToList().Where(l => l.Capabilities.Control.ColorGamut != null);
            }
            catch (Exception e)
            {
                Lights = new List <Light>();
            }
        }
Example #3
0
        public async Task UpdateGroupTest()
        {
            var lights = await _client.GetLightsAsync();

            List <string> newLights = new List <string>();

            newLights.Add(lights.First().Id);
            newLights.Add(lights.Last().Id);

            await _client.UpdateGroupAsync("1", newLights, "test update");

            var group = await _client.GetGroupAsync("1");

            Assert.IsNotNull(group);
            Assert.IsTrue(group.Lights.Count == 2);
        }
Example #4
0
 public async Task GetLightsAsyncTest()
 {
     //Search for new lights
     await _client.GetLightsAsync();
 }
Example #5
0
        protected async override void OnAppearing()
        {
            CrossDeviceMotion.Current.SensorValueChanged += (sender, e) => {
                CompassLabel.Text = "" + e.Value;
            };

            CrossCompass.Current.CompassChanged += async(sender, e) => {
                CompassLabel.Text = "" + e.Heading;

                if (Math.Abs(e.Heading - lastHeading) < 5)
                {
                    return;
                }
                lastHeading = e.Heading;

                try{
                    if (e.Heading > 180 && e.Heading < 360)
                    {
                        var quadracticValue = (e.Heading - 360) * (e.Heading - 180) * -1 / 8100.0;
                        var command         = GetBrightnesCommand((byte)(quadracticValue * 255));
                        var idx             = LightList.SelectedIndex;
                        await client.SendCommandAsync(command, new [] {
                            MyLights.ElementAt(idx).Id
                        });
                    }
                    else
                    {
                        var command = GetBrightnesCommand(0);
                        await client.SendCommandAsync(command, new [] { "4" });
                    }
                }catch (Exception ayy) {
                    CrossTextToSpeech.Current.Speak("Hey! Slow down. Bro.");
                }
            };

            if (client == null)
            {
                client = await GetClient();

                if (client == null)
                {
                    return;
                }
            }

                        #if !DEBUG
            if (MyScenes == null)
            {
                MyScenes = await client.GetScenesAsync();

                foreach (var light in MyScenes)
                {
                    SceneList.Items.Add(light.Name);
                }
                SceneList.SelectedIndex         = 0;
                SceneList.SelectedIndexChanged += async(object sender, EventArgs e) => {
                    var scene = MyScenes.ElementAt(SceneList.SelectedIndex);
                };
            }
                        #endif

            if (MyLights == null)
            {
                MyLights = await client.GetLightsAsync();

                foreach (var light in MyLights)
                {
                    LightList.Items.Add(light.Name);
                }
                LightList.SelectedIndex = 0;
                CrossCompass.Current.Start();
                //CrossDeviceMotion.Current.Start(MotionSensorType.Gyroscope, MotionSensorDelay.Ui);
            }
        }
Example #6
0
        public async Task <HueLight[]> GetLightsAsync(CancellationToken cancellationToken)
        {
            IEnumerable <Light> lights = await _hueClient.GetLightsAsync();

            return(lights.Select(LightMapper.Map).ToArray());
        }