Is it possible to monitor multiple regions with estimote ESTBeaconManager

how to monitor multiple estimote beacon regions with estimote ESTBeaconManager.i am currently using the using code for a single beacon

self.beaconManager = [[ESTBeaconManager alloc] init];
self.beaconManager.delegate = self;
[self.beaconManager requestAlwaysAuthorization];
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:@"myuuid"];
self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:uuid
                                                            major:17644
                                                            minor:36076
                                                       identifier:@"EstimoteSampleRegion"];

self.beaconRegion.notifyOnEntry = YES;
self.beaconRegion.notifyOnExit = YES;

[self.beaconManager startMonitoringForRegion:self.beaconRegion];

Just create another region and start monitoring for it:

self.beaconRegion2 = [[CLBeaconRegion alloc]
                      initWithProximityUUID:uuid
                      major:12345
                      minor:23456
                      identifier:@"EstimoteSampleRegion2"];
[self.beaconManager startMonitoringForRegion:self.beaconRegion2];

Note that on iOS, you can only monitor for up to 20 regions at a time.

A small edition to this. I had an issue with monitoring multiple regions where only the last region added seemed to be monitored.

As it turned out the Identifier wasn’t unique for every region. Now the field being called “identifier” pretty much implies that it has to be unique however if you’re refactoring or testing this can be an oversight :slight_smile:

1 Like