How to get macAddress property while Ranging?

Hi All,
MacAddress is always NULL in startRangingBeacons InRegion Method. And When I use startEstimoteBeaconsDiscoveryForRegion method the other properties of ESTBeacon like proximity and rssi is NUUL. How can I fix it. I need macAddress of beacon to aceess the related API call from server while ranging, I can't use major and minor values because anyone can change these values using Estimote app. Please help me..?


As for now, we don't provide access to macAddress. You have to use the startEstimoteBeaconsDiscoveryForRegion method.

Hi Ola.But when I use startEstimoteBeaconsDiscoveryForRegion method proximityUUID property of the beacon is always null,and I need both macAddress and proximityUUID,how can I get 'em both with one shot)??

Hi again!

Please use ESTBeaconManager class to discover the proximityUUID. Let me know, if it works for you.

When I use [startEstimoteBeaconsDiscoveryForRegion:] method the beacons have macAddress and measuredPower property but their proximityUUIDs are all nil,but when I use [startRangingBeaconsInRegion:] method they have proximityUUIDs but macAddresses and measuredPowers are nil,but in my app I need both properties.How can I achieve that ?

Hi again!

What we suggest is using the startEstimoteBeaconsDiscoveryForRegion method and then classes from the ESTBeaconManager class to discover the proximityUUID.

Does it help?

Hmm,now I'm doing like this,I'm begin with startEstimoteBeaconsDiscoveryForRegion and in [-(void)beaconManager:(ESTBeaconManager *)manager didDiscoverBeacons:(NSArray *)beacons inRegion:(ESTBeaconRegion *)region] I'm storing discovered beacons to array and then starting to range with startRangingBeaconsInRegion and when beacons ranged I'm storing them to another array and then if beacon exists in both arrays I'm getting macAddress from first array's beacon and proximityUUID from second array's beacon.But I'm not sure if this is the correct way !

Hey there—yes, this is a completely valid solution. In fact, our Estimote app does it almost the same way! (:

How if some one want to range multiple beacons in one region, how in "didRangeBeacons" could we know that this RSSI belong to which beacon?

Hey there—rssi is a property of an ESTBeacon object, you get an array of these in the didRangeBeacons method. Each ESTBeacon object an be uniquely identified by the proximityUUID + major + minor combo.