trackerControl detailed info

trackerControl detailed info

How does it work more exactly

The app consists of a list of URIs.

If one adds a URI to the list looking like this (the part behind the hashtag is the "keyRemoteControl" (see below)):

https://YOURDOMAIN#0123456789abcdef0123456789abcdef
Then if the user hits "On", the app will make https-requests like this:
https://YOURDOMAIN?dataFromRemoteControl={"keyRemoteControl":"0123456789abcdef0123456789abcdef","iSeq":1,"boCheck":false,"boShow":true,"iRole":0,"hideTimer":15,"lat":59.8392951,"lng":17.6054841,"boAuto":false}
The querystring consist of one variable dataFromRemoteControl which in turn contains a json encoded object with the following variables:
keyRemoteControl
A 128 bit key in the form of 32 letters (0-f). It is used to recognize that the request comes from a valid "remote controller".
iSeq
A sequence number that counts upwards. To prevent man in the middle attackers from repeating old messages.
boCheck
For checking the status (typically returning "Visible" or "Hidden" and how much of the timer remains (see more below))
boShow
Make the user visible or hidden on the receiving site.
iRole
unused
hideTimer
Timer: number of seconds till the user should be automatically hidden.
lat
latitude
lng
longitude
boAuto
If the request comes as a result of the user hitting "On" (then boAuto=false) or if the request comes from the background process callback (then boAuto=true)
If boAuto==false then the controlled site should reset the "hideTimer".

What should the controlled site return

A string whose first 200 characters are displayed in the trackerControl-app.

If the string starts with "Visible" the string is colored green.

If the string starts with "Hidden" the string is colored red.

Otherwise the string is colored black.

Other

One could say that, the native app is a workaround for as long as geolocation doesn't work in service workers.