async Task OnBeaconDidRangeBeaconsAsync(BeaconRangedEventArgs e) { var newRoomNumber = e.beaconMinorID; if (newRoomNumber.HasValue) { cancellationTokenSource = new CancellationTokenSource(); try { if (RoomNumber.HasValue) { await rivERWebService.PostPersonnelOutOfRoom(RoomNumber.Value, Helpers.Settings.PersonnelID); } await rivERWebService.PostPersonnelIntoRoom(newRoomNumber.Value, Helpers.Settings.PersonnelID); CurrentRoom = await rivERWebService.GetRoomReadRoom(newRoomNumber.Value); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); } GetBedVacantAsync(); GetFlagsAsync(); } else { if (RoomNumber.HasValue) { try { await rivERWebService.PostPersonnelOutOfRoom(RoomNumber.Value, Helpers.Settings.PersonnelID); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); } cancellationTokenSource.Cancel(); CurrentRoom = new Room(); } } }
async void Beacon_DidRangeBeacons(object sender, BeaconRangedEventArgs e) { await OnBeaconDidRangeBeaconsAsync(e); }