Cordova – Geo-triggering

Geo-triggering allows for the automatic detection of location context change events (such as entering or exiting a geofence, or crossing a Geoline™). For this capability, the SDK needs to be initialized and the app must have been granted location permission.

Start Geo-triggering

To start geo-triggering:

function doStartGeoTriggering() 
    // The SDK needs be initialized and the app must have location permissions.
    if (device.platform === "iOS") {
            function () { console.log("Start Geotriggering Successful") },
            function (error) { console.log("Start Geotriggering Failed with error: " + error) }
    } else if (device.platform === "Android") {
        const androidNotificationParams = {
            channelId: "Bluedot Cordova",
            channelName: "Bluedot Cordova",
            title: "Bluedot Foreground Service - Geo-triggering",
              "This app is running a foreground service using location services",
            notificationId: 123,

            function () { console.log("Start Geotriggering Successful") },
            function (error) { console.log("Start Geotriggering Failed with error: " + error) },

Receiving Geo-trigger events

Register callback functions to receive Geo-triggering events.


As entry events may occur immediately upon starting Geo-triggering, it is recommended to subscribe to the events before starting the Geo-triggering service.

function subscribeToGeoTriggeringEvents() 
   // Register callbacks functions for receiving geo-triggering events
   io.bluedot.cordova.plugin.zoneInfoUpdateCallback( zoneUpdateCallbackFunction );
   io.bluedot.cordova.plugin.enteredZoneCallback( zoneEnteredCallbackFunction );
   io.bluedot.cordova.plugin.exitedZoneCallback( zoneExitedCallbackFunction );
   // Then start the Geo-triggering service.

function zoneUpdateCallbackFunction( zoneInfos )
    console.log( "Zones updated for " + zoneInfos.length + " zones" );

function zoneEntered( fenceInfo, zoneInfo, locationInfo, willCheckOut, customData )
    console.log("Zone entered");

function zoneExited( fenceInfo, zoneInfo, date, dwellTime, customData )
    console.log("Zone exited");

Stop Geo-triggering

If you only need geo-triggering for a limited period, once that period is over, you should stop the geo-triggering service.

   function () { console.log("Stop Geotriggering Successful") },
   function (error) { console.log("Stop Geotriggering Failed with error: " + error) }

Geo-triggering Status

You can use the isGeoTriggeringRunning method to check the status of the Geo-triggering service.

    function (isRunning) { console.log("Is Geo Triggering Running: " + isRunning) }
Created by Melwin Chiramel on July 30, 2021