Feature: Automated Site Information Service

Overview

The Launcher has the capability to determine the current store/branch of a device based on either its current location, IP range or connected AP Mac addresses.

How it works

A CSV file named sitelist.csv file is pushed to the device into the Launcher files folder. This file will contain the list of sites and their GPS coordinates.

On device boot the Launcher will use the device location services to determine its current GPS coordinates, and if it falls within 200m (configurable) of a site, will use that as the device site.

If multiple sites are matched, the user will be prompted to choose a site.

If no sites are matched, the user is prompted to manually set the device site.

The search algorithm looks like:

  • find nearest gps
  • find ip range
  • find subnet
  • find access point

Instructions

1. Create a Location File

Create a CSV file named sitelist.csv containing all known sites for where the device is expected to be used.

Column Header Description
siteid Unique ID of the site/store/branch. This will be used to locate the site within Support Portal
sitename The name of the site/store/branch that will be displayed on the Launcher home screen.
latitude The gps latitude of the given site
longtitude The gps longtitude of the given site
Add the following columns if using a different method of location other than GPS coordinates. These can also be used as fallback.
iprange The IP ranges for the network expected at a given site. Multiple ranges are supported by separating with a semi-colon, e.g.:
One range: 192.3.4.1-192.3.4.255
Multiple ranges: 192.3.4.1-192.3.4.255;192.3.5.1-192.3.5.200
apmacaddress The mac addresses of the APs that this device is expected to connect to, separated by semi-colons, e.g.:
6a:9c:f0:00:83:2f;c2:f5:f8:fb:15:31
subsequent columns Values that will be injected into the configuration's extended attributes for the location selected. The column name will be the field name.

Example data:

CSV Example

2. Export the File

Export the file as a CSV (comma delimited file) and push the sitelist.csv to the device folder /sdcard/Android/data/com.bluefletch.launcher/files.

The equivalent ADB command is:

adb push sitelist.csv /sdcard/Android/data/com.bluefletch.launcher/files/sitelist.csv

3. Launcher Configurations

In your launcher.json configuration file under settings, enable the useSiteInfoService flag to true. You can also change the distanceInMeters value based on the radius from the site’s GPS coordinates:

    "settings":{
        …
        "useSiteInfoService" : true,
        "distanceInMeters" : 200,
        …
    }

Feature Introduced

Feature Introduced in Launcher 2.6.x