public TopPageViewModel(IBandClientManager manager) { this.manager = manager; this.SelectBasicsCommand = new DelegateCommand(this.SelectBasics, () => { return(!this.ShowBasics); }); this.SelectSensorsCommand = DelegateCommand.FromAsyncHandler(this.SelectSensors, () => { return(!this.ShowSensors); }); this.SelectPersonalizeCommand = DelegateCommand.FromAsyncHandler(this.SelectPersonalize, () => { return(!this.ShowPersonalize); }); this.SelectTilesCommand = DelegateCommand.FromAsyncHandler(this.SelectTiles, () => { return(!this.ShowTiles); }); this.ConnectCommand = DelegateCommand.FromAsyncHandler(this.Connect); App.Container.RegisterType <SensorReadingViewModel>(new ContainerControlledLifetimeManager()); App.Container.RegisterType <PersonalizeViewModel>(new ContainerControlledLifetimeManager()); App.Container.RegisterType <TilesViewModel>(new ContainerControlledLifetimeManager()); }
public MainPageViewModel(IBandClientManager bandClientManager) { this.bandClientManager = bandClientManager; // Set up ICommand targets for events from the view this.OnConnect = DelegateCommand.FromAsyncHandler(OnConnectExecute); this.OnSubscribeToAccelerometer = DelegateCommand.FromAsyncHandler(OnSubscribeToAccelerometerExecute, () => IsConnected); this.OnSubscribeToHeartRate = DelegateCommand.FromAsyncHandler(OnSubscribeToHearthRateExecute, () => IsConnected); this.OnDoorbellRing = DelegateCommand.FromAsyncHandler(OnDoorbellRingExecute, () => IsConnected); this.OnGarageOpen = DelegateCommand.FromAsyncHandler(OnGarageOpenExecute, () => IsConnected); this.OnGarageClose = DelegateCommand.FromAsyncHandler(OnGarageCloseExecute, () => IsConnected); this.OnSendBarcode = DelegateCommand.FromAsyncHandler(OnSendBarcodeExecute, () => IsConnected); }
private async Task SetupBandAsync() { // Use the fake band client manager IBandClientManager clientManager = GetBandClientManager(); // -------------------------------------------------- // set up Band SDK code to start reading HR values.. var bands = await clientManager.GetBandsAsync(); _bandInfo = bands.First(); _bandClient = await clientManager.ConnectAsync(_bandInfo); await SetupSensorReadingAsync(_bandClient.SensorManager.HeartRate, async (obj, ev) => { _hrArgs.Args = ev.SensorReading; var payload = JsonConvert.SerializeObject(_hrArgs); using (var releaser = await _lockObj.LockAsync()) { await _socketWriter.WriteAsync(payload); } }); await SetupSensorReadingAsync(_bandClient.SensorManager.Gyroscope, async (obj, ev) => { _gyroArgs.Args = ev.SensorReading; var payload = JsonConvert.SerializeObject(_gyroArgs); using (var releaser = await _lockObj.LockAsync()) { await _socketWriter.WriteAsync(payload); } }); await SetupSensorReadingAsync(_bandClient.SensorManager.Accelerometer, async (obj, ev) => { _accArgs.Args = ev.SensorReading; var payload = JsonConvert.SerializeObject(_accArgs); using (var releaser = await _lockObj.LockAsync()) { await _socketWriter.WriteAsync(payload); } }); }
public async Task <bool> LoadBands() { var ret = false; _bandManager = BandClientManager.Instance; _pairedBands = await _bandManager.GetBandsAsync(); if (_pairedBands.Length == 0) { var md = new MessageDialog("no band connected"); await md.ShowAsync(); } else { await ConnectToBand(); await GetBandInformation(); ret = true; } return(ret); }
private async void MainPage_Loaded(object sender, RoutedEventArgs e) { _bandManager = BandClientManager.Instance; _pairedBands = await _bandManager.GetBandsAsync(); }
private async void OnLoad(object sender, RoutedEventArgs e) { // Set up the fake bands FakeBandClientManager.Configure(new FakeBandClientManagerOptions { Bands = new List <IBandInfo> { new FakeBandInfo(BandConnectionType.Bluetooth, "Fake Band 1"), new FakeBandInfo(BandConnectionType.Bluetooth, "Fake Band 2"), } }); // Use the fake band client manager IBandClientManager clientManager = FakeBandClientManager.Instance; // Microsoft Band SDK code var bands = await clientManager.GetBandsAsync(); var bandInfo = bands.First(); var bandClient = await FakeBandClientManager.Instance.ConnectAsync(bandInfo); var meTile = await bandClient.PersonalizationManager.GetMeTileImageAsync(); PersonalizationView.PersonalizationViewModel.MeTile = meTile.ToWriteableBitmap(); var theme = await bandClient.PersonalizationManager.GetThemeAsync(); Mapper.Map(theme, ThemeView.BandThemeViewModel); await StartSensor(bandClient, bandClient.SensorManager.HeartRate, ev => { Mapper.Map(ev.SensorReading, HeartRateView.HeartRateViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Altimeter, ev => { Mapper.Map(ev.SensorReading, AltimeterView.AltimeterViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.AmbientLight, ev => { Mapper.Map(ev.SensorReading, AmbientLightView.AmbientLightViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Accelerometer, ev => { Mapper.Map(ev.SensorReading, AccelerometerView.AccelerometerViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Calories, ev => { Mapper.Map(ev.SensorReading, CaloriesView.BandCaloriesViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Contact, ev => { Mapper.Map(ev.SensorReading, ContactView.BandDeviceContactViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Distance, ev => { Mapper.Map(ev.SensorReading, DistanceView.BandDistanceViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Gsr, ev => { Mapper.Map(ev.SensorReading, GsrView.GsrViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Gyroscope, ev => { Mapper.Map(ev.SensorReading, GyroView.GyroViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.Pedometer, ev => { Mapper.Map(ev.SensorReading, PedometerView.BandPedometerViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.RRInterval, ev => { Mapper.Map(ev.SensorReading, RRIntervalView.BandRRIntervalViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.SkinTemperature, ev => { Mapper.Map(ev.SensorReading, SkinTemperatureView.BandSkinTemperatureViewModel); }); await StartSensor(bandClient, bandClient.SensorManager.UV, ev => { Mapper.Map(ev.SensorReading, UVView.BandUVViewModel); }); }