Remote Configuration¶
Pointr SDK is configured remotely with the configuration stored on Pointr Cloud. This document explains how to configure Pointr SDK using Pointr Cloud dashboard.
Configuration Tab¶
In Pointr Cloud Dashboard there is a configuration tab where the settings are inserted as text. The configuration text should follow this specific format:
<configuration-section>_<configuration-parameter> = <configuration-value>
UUID Parameters¶
These parameters are the unique ID of beacons. It is set under Configure → Configuration → Global. The IDs are text, an hexadecimal number with 8-4-4-4-12 characters (example: AAAAAAA0-BBB0-CCC0-DDD0-A11E00000001). There is more information in an article elsewhere in this manual.
- uuidList_1
Position Manager¶
The position manager is configured with the path Configure → Configuration → Global. Among its capabilities are deciding if positions should be tracked on foreground, background or both, enabling GPS for outdoor locations and so on.
- positionManagerConfiguration_isBackgroundPositioningEnabled Boolean value, default is false, this enables position tracking when the application is running on background, this feature in particular might not be available for you, please contact your project manager if you actually need this feature.
- positionManagerConfiguration_isFusionEnabled Boolean, default is true, controls sensor fusion for positioning, should be left enabled with very few exceptions. (we have legacy products where this must be set to false)
- positionManagerConfiguration_outdoorFacilityInternalIdentifier Integer ID, allows setting a facility to be a custom outdoors map that will be displayed for example when a user is walking between facilities.
- positionManagerConfiguration_outdoorLevelIndex Integer, level Index of the outdoors map, default value is 0.
-
positionManagerConfiguration_shouldRestartBleWhenCorrupted Boolean, default is false, if enabled this power cycle the Bluetooth system of the device when it is misbehaving, this is useful on Android.
-
positionManagerConfiguration_isGpsTrackingEnabledInForeground Boolean, default is false, when enabled this allows the mobile phone GPS to be used to track position outdoors instead of relying solely on beacons.
- positionManagerConfiguration_isGpsTrackingEnabledInBackground Boolean, default is false, when enabled this allows the mobile phone GPS to be used to track position outdoors instead of relying solely on beacons, but when the application is running on background. See isBackgroundPositioningEnabled for notes about when this is allowed.
- positionManagerConfiguration_gpsAccuracyModeInForeground Integer, sets the GPS accuracy mode, default is “2” if outdoor navigation is needed. Increasing numbers REDUCE accuracy, but save more battery. “1” means “Best for Navigation”, while 6 means “three kilometers (10 kilofeet)” and 7 means “significant updates only”.
- positionManagerConfiguration_gpsAccuracyModeInBackground Integer, sets the GPS accuracy mode, default is “2” if outdoor navigation is needed. Increasing numbers REDUCE accuracy, but save more battery. “1” means “Best for Navigation”, while 6 means “three kilometers (10 kilofeet)” and 7 means “significant updates only”. This setting is applied when application is running on background.
- gpsUpdateIntervalInSecondsInForeground Integer, seconds, set the mininum time the application will wait before asking the device to turn on GPS sensor after last usage, smaller values use more battery but increase accuracy.
- gpsUpdateIntervalInSecondsInBackground Integer, seconds, set the mininum time the application will wait before asking the device to turn on GPS sensor after last usage, smaller values use more battery but increase accuracy. This setting is applied when application is running on background.
- gpsFastestUpdateIntervalInSecondsInForeground Integer, seconds, set the mininum time the application will wait before updating GPS data, if another application used GPS sensor and caused an update. If your application is running alone on the device this setting is irrelevant, but if another application is running, this setting is used to allow faster data updates.
- gpsFastestUpdateIntervalInSecondsInBackground Integer, seconds, set the mininum time the application will wait before updating GPS data, if another application used GPS sensor and caused an update. If your application is running alone on the device this setting is irrelevant, but if another application is running, this setting is used to allow faster data updates.
Warning
DO NOT set gps intervals (any of them) to zero. Although the SDK and the Operating System will do their best to avoid issues, it can result in extreme battery drain, device overheating and potentially, bugs. Also “fast” interval must be smaller than normal one.
Fine Tuning Parameters¶
The next three parameters are used to fine tune the SDK regarding the scale of the site. To be able to accommodate clients with different sizes of buildings, i.e. offices, airports, malls, the SDK tweaks certain parameters.
Warning
These parameters are set by the Pointr R&D team, they are responsible to find the best values for your site and use case. It is strictly recommended to not touch these values unless you have very good reason and have consulted the Pointr R&D team. Changing these values on your own WILL cause unwanted behavior of Pointr SDK.
- positionManagerConfiguration_ohCloneDistributionRadius
- positionManagerConfiguration_ohMinCloneDiversity
- positionManagerConfiguration_ohMinNumClones
Augumented Reality¶
This is configured on Configure → Configuration → Global
- augmentingRealityConfiguration_isAugmentingRealityEnabled Boolean, enables AR capabilities.
Geofence Manager¶
Timing Parameters¶
These four parameters are all integers, and control how much time the application will spend checking for Geofences. Similarly, they signify how much time the SDK will wait before checking again. Pointr R&D works to find the best results with default values, raising the frequency or amount of time scanning might cause unwanted results, such as excessive battery usage or failure when calculating proper positions.
One of the reasons for these settings existance is to save power by attempting to do scans only when other applications might also attempt. This is done by setting the default scanning timing settings to be similar to the ones used by the most popular applications and OS settings, as such if all softwares scan at same time the phone need to use the sensors only once and share the data with all the applications.
- geofenceManagerConfiguration_betweenScanPeriodForeground Integer, miliseconds, this defines how much time the should wait before turning on its sensors again after last scan when application is running on foreground, smaller values increase accuracy and battery usage.
- geofenceManagerConfiguration_betweenScanPeriodBackground Integer, miliseconds, this defines how much time the should wait before turning on its sensors again after last scan when application is running on background, smaller values increase accuracy and battery usage.
- geofenceManagerConfiguration_scanPeriodForeground Integer, miliseconds, this defines how much time the phone should attempt to keep the sensors running while the application is on the foreground. Larger values increase sensor usage, increasing accuracy and battery usage.
- geofenceManagerConfiguration_scanPeriodBackground Integer, miliseconds, this defines how much time the phone should attempt to keep the sensors running while the application is on the background. Larger values increase sensor usage, increasing accuracy and battery usage.