deptofdefense / AndroidTacticalAssaultKit-CIV

Other
904 stars 323 forks source link

Geofence alerting inconsistent across categories and manual placement vs streaming KML #200

Open EasternPA opened 2 years ago

EasternPA commented 2 years ago

ATAK Version: 4.6.0.4 (72eb2c83).1649938081 Plugin API: 4.6.0.CIV Device Robin Android Build: 30 LineageOS 18.1 April 17, 2022

Summary: Geofence alerting is not consistent across icon categories and does not appear to alert when objects are placed by streaming KML feeds

Steps to reproduce:

1) Add a streaming KML feed such as Active Fire Data from NASA - https://firms.modaps.eosdis.nasa.gov/active_fire/#firms-kml 2) Place an object anywhere on the map (ex. mark a structure you want to monitor for fire risk) 3) Place a circle on the map near and including the object you just added (see issue #201 for more details on this) 4) Configure the circle as a geofence 5) ATAK will alert that the geofence has been breached by the object that was defined prior to establishing the geofence 6) Create another circle that contains a fire location indicated in the fire data feed 7) Designate that circle as a geofence 8) ATAK fails to alert on objects (i.e. fire detection centroids) placed within the geofence by the KML feed

Expected behavior:

1) ATAK should alert when a point created by a streaming KML feed exists within a geofence 2) Geofence shapes attached to objects do not alert for a geofence breach triggered by the object that the geofence shape is attached to; this is preferable behavior 3) Please consider suppressing all alerts upon establishment of geofences if the objects existed prior to the establishment of the geofence; alerts are only currently suppressed when the geofence shape is attached to the object contained within the newly established geofence

I can understand why the current behavior exists. If you want to establish a perimeter around a structure, you may only wish to be immediately notified of objects within the geofence other than the structure itself. There may be one or more objects that need to be cleared from a geofence as soon as the geofence is established. That being said, attaching a geofence shape to an object is overly complicated at the moment (issue 201) and geofences are not alerting for objects placed within the geofence by a streaming KML feed (the main point of this issue).

EasternPA commented 2 years ago

Update: Not all manually placed markers trigger a geofence breach warning. Here are the categories and whether or not they trigger a breach warning and whether or not I consider that a bug:

Category Trigger (Yes/No) Bug (Yes/No/Maybe) Comments
Markers Yes No
Mission No No
Spot Map No No
Vehicle Models No Maybe You may wish to keep fuel trucks away from ordinance storage
Google Yes Yes There are too many symbols in this category that don't warrant triggering a breach
OSM Yes Yes I don't need to be alerted if someone marks a McDonald's location within a geofence
Generic Icons Yes Yes Same as Google and OSM. A rail station is not a breach of a geofence.
FEMA Icons Yes Maybe Some of the icons are worth alerting if they are placed there by a streaming KML feed
Default Yes Yes Same as Google, OSM, and Generic Icons. A good spot for downhill skiing is not a geofence breach
GeoOps / Wildfire Yes No This is probably the best case for triggering geofence breach alerts
EasternPA commented 2 years ago

The key driver behind this bug report is the fact that fire detection centroids being published by the USFS and NASA are not triggering geofence breach alerts, yet that may be one of the most useful (potential) functions of ATAK-Civ out there. Perhaps the answer is to let us choose which icon will be placed by the KML feed so we can choose one that triggers a breach alert. Another possible solution is to just give us a checkbox to let us choose whether or not objects placed by the KML stream will trigger a geofence breach alert.

bisgroves commented 2 years ago

I think the underlying issue is that anything KML objects are not considered by any geofence detetection since KML points are different than ATAK Map Items. I will file a JIRA ticket to see if it is an improvement that can be considered for the future