public override IObservable <Beacon> WhenBeaconRanged(BeaconRegion region) { var native = region.ToNative(); this.manager.StartRangingBeacons(native); return(this.gdelegate .WhenBeaconRanged() .Where(region.IsBeaconInRegion) .Finally(() => this.manager.StopRangingBeacons(native) )); }
public async Task StartMonitoring(BeaconRegion region) { await this.repository.Set(region.Identifier, region); this.manager.StartMonitoring(region.ToNative()); }
public override async Task StopMonitoring(BeaconRegion region) { await this.Repository.Remove <BeaconRegion>(region.Identifier); this.manager.StopMonitoring(region.ToNative()); }