Hoppa till huvudinnehåll

Geofences

Geofences är ett sätt att definiera en virtuell perimeter runt ett verkligt område. Yggio stöder Geofence som ett eget API.

För att skapa en geofence behöver du skicka en POST-förfrågan till geofence-endpointen med ett innehåll i följande format: POST https://public.yggio.net/api/geofences

{
"fence": {
"type": "Polygon",
"coordinates": [[
[13, 55],
[33, 55],
[33, 75],
[13, 75],
[13, 55]
]]
},
"ref": "<min enhets id>", // valfritt
"refType": "enhet" // valfritt
}

Observera att koordinaterna är en array av arrayer av punkter. För närvarande stöder vi endast en enkel polygon. Polygonen måste alltid vara moturs och punkterna anges med longitud först ([longitud, latitud]).
ref och refType är valfria och kan användas för att länka geofencen till en enhet. ref är id:t för enheten och refType är referenstypen. För närvarande stöds endast device.

Mer information om detaljerna kring geofence-rutterna finns på vår swagger.

Enheter

Yggio stöder också geofencing för enheter. Om en enhet har en GPS-position (som egenskapen 'lnglat' på enheten, i GeoJSON-format) kan den efterfrågas genom att anropa det vanliga iotnodes-API:et med en geoquery-querystring. För närvarande stöds endast polygoner.
geoquery-querysträngen består av en typ och koordinater, eller ett id för en geofence. För närvarande måste typen vara contains. contains betyder att enhetens punkt måste vara helt inom geofencen.

Exempel på en geoquery contains-querystring:
GET https://public.yggio.net/api/iotnodes?geoquery=type:contains;coordinates=[[13,55],[33,55],[33,75],[13,75],[13,55]]
Observera att den sista punkten i koordinaterna måste vara densamma som den första för att stänga polygonen.

Exempel på en geoquery id-querystring:
GET https://public.yggio.net/api/iotnodes?geoquery=id:203981cd5a19c81efac16a4f