Geofencing Dane GeoJSON
Interfejs API geofencingu GET w usłudze Azure Maps i interfejsu API geofencingu POST umożliwia pobieranie odległości współrzędnych względem podanego ogrodzenia lub zestawu ogrodzeń. W tym artykule szczegółowo opisano sposób przygotowywania danych geofencingu, które mogą być używane w interfejsie API GET i POST usługi Azure Maps.
Dane dotyczące geofencingu lub zestawu geofencingów reprezentowanych przez Feature
obiekt i FeatureCollection
obiekt w GeoJSON
formacie są definiowane w dokumencie rfc7946. Oprócz niego:
- Typ obiektu GeoJSON może być obiektem
Feature
lub obiektemFeatureCollection
. - Typ obiektu Geometry może być
Point
typu , ,MultiPoint
,LineString
MultiLineString
,Polygon
,MultiPolygon
, iGeometryCollection
. - Wszystkie właściwości funkcji powinny zawierać
geometryId
element , który jest używany do identyfikowania geofencingu. - Funkcja z elementem
Point
, ,MultiLineString
MultiPoint
LineString
musi zawieraćradius
właściwości .radius
wartość jest mierzona w metrach,radius
a wartości wahają się od 1 do 10000. - Funkcja z typem
polygon
geometrii imultipolygon
nie ma właściwości promienia. validityTime
to opcjonalna właściwość, która umożliwia użytkownikowi ustawienie wygasłego czasu i okresu ważności danych geofencingu. Jeśli nie zostanie określony, dane nigdy nie wygasają i są zawsze prawidłowe.- To
expiredTime
data i godzina wygaśnięcia danych geofencingu. Jeśli wartośćuserTime
w żądaniu jest późniejsza niż ta wartość, odpowiednie dane geofencingu są traktowane jako wygasłe dane i nie są odpytywane. Na tym, geometryId tych danych geofencingu jest uwzględniony wexpiredGeofenceGeometryId
tablicy w odpowiedzi geofencingu. - Jest
validityPeriod
to lista okresu ważności geofencingu. Jeśli wartośćuserTime
w żądaniu wykracza poza okres ważności, odpowiednie dane geofencingu są uznawane za nieprawidłowe i nie są wykonywane zapytania. GeometryId tych danych geofencingu jest uwzględniony winvalidPeriodGeofenceGeometryId
tablicy w odpowiedzi geofencingu. W poniższej tabeli przedstawiono właściwości elementu validityPeriod.
Nazwisko | Type | Wymagania | Opis |
---|---|---|---|
startTime | Datetime | prawda | Data rozpoczęcia okresu ważności. |
endTime | Datetime | prawda | Data zakończenia okresu ważności. |
recurrenceType | string | fałsz | Typ cyklu okresu. Wartość może mieć Daily wartość , , Monthly Weekly lub Yearly . Wartość domyślna to Daily . |
businessDayOnly | Wartość logiczna | fałsz | Określ, czy dane są prawidłowe tylko w dniach roboczych. Wartość domyślna to false . |
- Wszystkie wartości współrzędnych są reprezentowane jako [długość geograficzna, szerokość geograficzna] zdefiniowana w .
WGS84
- Dla każdej funkcji, która zawiera
MultiPoint
,MultiLineString
,MultiPolygon
lubGeometryCollection
, właściwości są stosowane do wszystkich elementów. na przykład: wszystkie punkty, wMultiPoint
których znajduje się ten sam promień, tworzą wiele okręgów geofencingu. - W scenariuszu z okręgiem punktowym geometria okręgu może być reprezentowana przy użyciu
Point
obiektu geometrii z właściwościami opracowanymi w temacie Rozszerzanie geometrii GeoJSON.
Poniżej znajduje się przykładowa treść żądania dla geofencingu reprezentowanego jako geometria geofencingu okręgu przy GeoJSON
użyciu punktu środkowego i promienia. Prawidłowy okres danych geofencingu rozpoczyna się od 2018-10-22
, od 9:00 do 5PM, powtarzany codziennie z wyjątkiem weekendu. expiredTime
wskazuje, że te dane geofencingu są uznawane za wygasłe, jeśli userTime
w żądaniu jest późniejsza niż 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
}
]
}
}
}