Пример #1
0
        private async Task Initialize()
        {
            string bridgeIP = await GetBridgeIP();

            _client = new HueClient(bridgeIP, AppKey);

            bool registered = false;

            while (!registered)
            {
                try
                {
                    await _client.GetBridgeAsync();
                    registered = true;
                }
                catch
                {
                }

                if (!registered)
                {
                    var md = new MessageDialog("Press the button on your Hue bridge then press Connect", "Connecting");
                    md.Commands.Add(new UICommand("Connect"));
                    await md.ShowAsync();
                    
                    registered = await _client.RegisterAsync(AppName, AppKey);
                }
            }
        }
Пример #2
0
        public override int Run(string[] remainingArguments)
        {
            var hueClient = new HueClient(_ip);
            var result = hueClient.RegisterAsync(HueBuildLight.AppName, HueBuildLight.AppKey).Result;

            if (result)
            {
                Console.WriteLine("Registered correctly.");
                return 0;
            }

            //If we failed to register, attempt to initialise and see if we succeed as we may already be registered.
            hueClient.Initialize(HueBuildLight.AppKey);
            var initialised = hueClient.IsInitialized;
            Console.WriteLine(initialised ? "Already registered." : "Failed to register");
            return initialised ? 0 : 1;
        }