Esempio n. 1
0
 public void StopServices()
 {
     this.BatteryService.ValueChangeCompleted -= BatteryService_ValueChangeCompleted;
     this.BatteryLevel = DEFAULT_BATTERYVALUE;
     BatteryService.Stop();
     LinkLossService.Stop();
     ImmediateAlertService.Stop();
 }
Esempio n. 2
0
        public async void StartServicesOnDevice(DeviceInformationItem chosenBLEDevice)
        {
            var linkLossServiceOnDevice       = chosenBLEDevice.Device.GetGattService(GattServiceUuids.LinkLoss);
            var batteryServiceOnDevice        = chosenBLEDevice.Device.GetGattService(GattServiceUuids.Battery);
            var ImmediateAlertServiceOnDevice = chosenBLEDevice.Device.GetGattService(GattServiceUuids.ImmediateAlert);
            await BatteryService.Start(batteryServiceOnDevice);

            await LinkLossService.Start(linkLossServiceOnDevice);

            LinkLossService.WriteAlertLevelCharacteristicAsync(AlertLevelEnum.HighAlert);
            await ImmediateAlertService.Start(ImmediateAlertServiceOnDevice);

            BatteryService.ValueChangeCompleted += BatteryService_ValueChangeCompleted;
        }
Esempio n. 3
0
        /// <summary>
        /// If there is any uncached task in glucoseService, we register new one.
        /// </summary>
        /// <param name="e">Existing Link Loss Task
        /// This is task is only registered through Proximity Monitor</param>
        private GattDeviceService RetrieveLinkLossService(BackgroundTaskRegistration existingLinkLossTask)
        {
            GattDeviceService gattService = null;
            KeyValuePair <GattDeviceService, BackgroundTaskRegistration> cachedTask;

            if (LinkLossService.LinkLossServiceTaskRegistrations.TryGetValue(existingLinkLossTask.Name, out cachedTask))
            {
                LinkLossService.WriteAlertLevelCharacteristicAsync(AlertLevelEnum.HighAlert);
                this.DeviceName = cachedTask.Key.Device.Name;
                gattService     = cachedTask.Key;
            }
            else
            {
                existingLinkLossTask.Unregister(true);
                DeviceName = DEFAULT_DEVICE;
            }
            return(gattService);
        }