I am a bit confused; I went through the tutorials and the forums and I am still not 100% sure when to use them. I get the subtle differences such as monitoring being able to run even with the app off etc, but is it safe to say that ranging is only intended for proximity-based results based on the closest individual beacon whereas monitoring is region-based?
So, to get more specific, if I want an app that notifies the user when she gets near a restaurant, then that’s monitoring. If I want the same app to capture the table she’s sitting along with her food order so that the server know where to deliver the food then that’s ranging (indoor location)?
Yup, you got that exactly right (: Monitoring’s more for binary inside/outside region, whereas ranging gives more detailed info about what beacons are nearby and which ones are closer than the others.
The other alternative categorization I’d suggest to build yourself a mental model of ranging vs monitoring is, ranging works only when the app is active and only requires the “when in use” authorization to access Location Services. Whereas monitoring works also when the app is not running, but requires the more invasive “always” authorization.
So, given the fluctuation and signal loss depending on the number of obstacles within the region, how accurately can I calculate the position of a table in a restaurant with ranging (assuming beacons and not nearables)? Are there any guides on something specific like this?
The easiest and most accurate approach would be to put a beacon on each table, set them to low broadcasting power to minimize the overlap, and then use ranging to detect the closest beacon. (Possibly with some simple filtering, to avoid a situation where, e.g., a beacon drops from the list of ranged beacons for a second or two, and suddenly the app relocates the customer to another table.)
I guess that depends on how big is the space and how spread out the tables are. In our 386 sq. meters test lab, the average accuracy is about 4 meters, and that’s using 16 beacons.