Geofencing GeoJSON-data

Med Azure Maps GET Geofence och POST Geofence-API:et kan du hämta närhet till en koordinat i förhållande till en angivet geofence eller en uppsättning staket. Den här artikeln beskriver hur du förbereder geofence-data som kan användas i Azure Maps GET- och POST-API:et.

Data för geofence eller uppsättning geofences, som representeras av Feature objektet och FeatureCollection objektet i GeoJSON formatet, definieras i rfc7946. Utöver det:

  • GeoJSON-objekttypen kan vara ett Feature objekt eller ett FeatureCollection objekt.
  • Geometriobjekttypen kan vara , PointMultiPoint, LineString, MultiLineString, Polygon, MultiPolygonoch GeometryCollection.
  • Alla funktionsegenskaper ska innehålla en geometryId, som används för att identifiera geofence.
  • Funktionen med Point, MultiPoint, LineString, MultiLineString måste innehålla radius egenskaper. radius mäts i meter radius , värdet sträcker sig från 1 till 10000.
  • Funktionen med polygon och multipolygon geometritypen har ingen radius-egenskap.
  • validityTime är en valfri egenskap som låter användaren ange förfallen tid och giltighetsperiod för geofence-data. Om de inte anges upphör data aldrig att gälla och är alltid giltiga.
  • expiredTime är förfallodatum och tid för geofencing-data. Om värdet userTime för i begäran är senare än det här värdet betraktas motsvarande geofence-data som utgångna data och efterfrågas inte. Då ingår geometryId för dessa geofence-data i expiredGeofenceGeometryId matrisen i geofence-svaret.
  • validityPeriod är en lista över giltighetsperioden för geofence. Om värdet userTime för i begäran faller utanför giltighetsperioden anses motsvarande geofence-data vara ogiltiga och efterfrågas inte. GeometryId för dessa geofence-data ingår i invalidPeriodGeofenceGeometryId matrisen i geofence-svaret. I följande tabell visas egenskaperna för elementet validityPeriod.
Namn Typ Obligatorisk Beskrivning
startTime Datumtid true Startdatumtiden för giltighetsperioden.
endTime Datumtid true Slutdatumet för giltighetsperioden.
recurrenceType sträng falskt Periodens upprepningstyp. Värdet kan vara Daily, Weekly, Monthlyeller Yearly. Standardvärdet är Daily.
businessDayOnly Boolesk falskt Ange om data bara är giltiga under arbetsdagar. Standardvärdet är false.
  • Alla koordinatvärden representeras som [longitud, latitud] som definieras i WGS84.
  • För varje funktion, som innehåller MultiPoint, MultiLineString, MultiPolygon eller GeometryCollection, tillämpas egenskaperna på alla element. Till exempel: Alla punkter i MultiPoint använder samma radie för att bilda en geofence med flera cirklar.
  • I punktcirkelscenario kan en cirkelgeometri representeras med hjälp av ett Point geometriobjekt med egenskaper som utvecklats i Utöka GeoJSON-geometrier.

Följande är ett exempel på en begärandetext för en geofence som representeras som en cirkelgeofencegeofencegeometri i GeoJSON med hjälp av en mittpunkt och en radie. Den giltiga perioden för geofence-data börjar från 2018-10-22, 9:00 till 17:00, som upprepas varje dag förutom helgen. expiredTime anger att dessa geofence-data anses ha upphört att gälla, om userTime i begäran är senare än 2019-01-01.

{
    "type": "Feature",
    "geometry": {
        "type": "Point",
        "coordinates": [-122.126986, 47.639754]
    },
    "properties": {
        "geometryId" : "1",
        "subType": "Circle",
        "radius": 500,
        "validityTime": 
        {
            "expiredTime": "2019-01-01T00:00:00",
            "validityPeriod": [
                {
                    "startTime": "2018-10-22T09:00:00",
                    "endTime": "2018-10-22T17:00:00",
                    "recurrenceType": "Daily",
                    "recurrenceFrequency": 1,
                    "businessDayOnly": true
                }
            ]
        }
    }
}