Spatial - Post Geofence
Gunakan untuk mendapatkan kedekatan koordinat ke geofence.
Post Geofence
API adalah permintaan HTTP POST
yang mengambil kedekatan koordinat ke geofence atau set pagar yang disediakan. Dengan POST
permintaan, Anda tidak perlu mengunggah data pagar terlebih dahulu, sebagai gantinya Anda menyediakan lokasi objek yang Anda lacak dalam parameter kueri serta data pagar atau set pagar dalam isi permintaan pos. Untuk informasi selengkapnya tentang format data geofence, lihat Data GeoJSON Geofencing. Respons akan berisi informasi tentang jarak dari tepi luar geofence. Nilai negatif menandakan bahwa koordinat berada di dalam pagar sementara nilai positif berarti bahwa itu berada di luar pagar.
API ini dapat digunakan untuk berbagai skenario yang mencakup hal-hal seperti pelacakan aset, manajemen armada, atau menyiapkan pemberitahuan untuk memindahkan objek.
API mendukung integrasi dengan Event Grid. Parameter isAsync digunakan untuk mengaktifkan integrasi dengan Event Grid (dinonaktifkan secara default).
POST https://{geography}.atlas.microsoft.com/spatial/geofence/json?api-version=2022-08-01&deviceId={deviceId}&lat={lat}&lon={lon}
POST https://{geography}.atlas.microsoft.com/spatial/geofence/json?api-version=2022-08-01&deviceId={deviceId}&lat={lat}&lon={lon}&z={z}&userTime={userTime}&searchBuffer={searchBuffer}&isAsync={isAsync}&mode={mode}
Parameter URI
Nama | Dalam | Diperlukan | Jenis | Deskripsi |
---|---|---|---|---|
format
|
path | True |
Format respons yang diinginkan. Hanya |
|
geography
|
path | True |
string |
Lokasi Akun Azure Maps. Nilai yang valid adalah kita (US Timur, US Tengah Barat, AS Barat 2) dan Eropa (Eropa Utara, Eropa Barat). Parameter ini diperlukan ketika |
api-version
|
query | True |
string |
Nomor versi API Azure Maps. |
device
|
query | True |
string |
ID perangkat |
lat
|
query | True |
number |
Garis lintang lokasi yang dilewati. Contoh: 48.36. |
lon
|
query | True |
number |
Garis bujur lokasi yang dilewati. Contoh: -124.63. |
is
|
query |
boolean |
Jika true, permintaan akan menggunakan mekanisme peristiwa asinkron; jika false, permintaan akan disinkronkan dan tidak memicu peristiwa apa pun. Nilai defaultnya adalah false. |
|
mode
|
query |
Mode mekanisme peristiwa asinkron geofencing. |
||
search
|
query |
number |
Radius buffer di sekitar geofence dalam meter yang mendefinisikan seberapa jauh untuk mencari di dalam dan di luar batas pagar terhadap koordinat yang disediakan saat menghitung hasilnya. Nilai minimum adalah 0, dan maksimum adalah 500. Nilai defaultnya adalah 50. |
|
user
|
query |
string date-time |
Waktu permintaan pengguna. Jika tidak disajikan dalam permintaan, nilai defaultnya adalah DateTime.UtcNow. |
|
z
|
query |
number |
Permukaan laut dalam meter lokasi yang dilewati. Jika parameter ini disajikan, geofencing ekstrusi 2D diterapkan. Contoh: 200. |
Header Permintaan
Nama | Diperlukan | Jenis | Deskripsi |
---|---|---|---|
x-ms-client-id |
string |
Menentukan akun mana yang ditujukan untuk penggunaan bersama dengan model keamanan Microsoft Entra ID. Ini mewakili ID unik untuk akun Azure Maps dan dapat diambil dari API Akun bidang manajemen Azure Maps. Untuk menggunakan keamanan Microsoft Entra ID di Azure Maps lihat artikel berikut untuk panduan. |
Isi Permintaan
Nama | Diperlukan | Jenis | Deskripsi |
---|---|---|---|
features | True |
Berisi daftar objek yang valid |
|
type | True |
string:
Feature |
Menentukan jenisnya |
Respons
Nama | Jenis | Deskripsi |
---|---|---|
200 OK |
OK Nilai header X-Correlation-id ada dalam respons panggilan asinkron dan data peristiwa Event Grid. Ini membantu menghubungkan respons panggilan asinkron dengan peristiwa Event Grid yang sesuai. Headers X-Correlation-id: string |
|
Other Status Codes |
Terjadi kesalahan tak terduga. |
Keamanan
AADToken
Ini adalah alur OAuth 2.0 Microsoft Entra. Saat dipasangkan dengan kontrol akses berbasis peran Azure, kontrol akses tersebut dapat digunakan untuk mengontrol akses ke Azure Maps REST API. Kontrol akses berbasis peran Azure digunakan untuk menunjuk akses ke satu atau beberapa akun sumber daya atau sub-sumber daya Azure Maps. Setiap pengguna, grup, atau perwakilan layanan dapat diberikan akses melalui peran bawaan atau peran kustom yang terdiri dari satu atau beberapa izin untuk Azure Maps REST API.
Untuk menerapkan skenario, sebaiknya lihat konsep autentikasi. Singkatnya, definisi keamanan ini menyediakan solusi untuk pemodelan aplikasi melalui objek yang mampu mengontrol akses pada API dan cakupan tertentu.
Catatan
- Definisi keamanan ini memerlukan penggunaan
x-ms-client-id
header untuk menunjukkan sumber daya Azure Maps mana yang meminta akses aplikasi. Ini dapat diperoleh dari API manajemen Maps.
Authorization URL
khusus untuk instans cloud publik Azure. Sovereign cloud memiliki URL Otorisasi yang unik dan konfigurasi Microsoft Entra ID.
* Kontrol akses berbasis peran Azure dikonfigurasi dari bidang manajemen Azure melalui portal Azure, PowerShell, CLI, Azure SDK, atau REST API.
* Penggunaan Azure Maps Web SDK memungkinkan penyiapan berbasis konfigurasi aplikasi untuk beberapa kasus penggunaan.
- Untuk informasi selengkapnya tentang platform identitas Microsoft, lihat gambaran umum platform identitas Microsoft.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nama | Deskripsi |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Ini adalah kunci bersama yang disediakan saat membuat sumber daya Azure Maps melalui bidang manajemen Azure melalui portal Azure, PowerShell, CLI, Azure SDK, atau REST API.
Dengan kunci ini, aplikasi apa pun berwenang untuk mengakses semua REST API. Dengan kata lain, ini saat ini dapat diperlakukan sebagai kunci master ke akun tempat mereka dikeluarkan.
Untuk aplikasi yang diekspos secara publik, rekomendasi kami adalah menggunakan akses server-ke-server Azure Maps REST API tempat kunci ini dapat disimpan dengan aman.
Type:
apiKey
In:
header
SAS Token
Ini adalah token tanda tangan akses bersama dibuat dari operasi Daftar SAS pada sumber daya Azure Maps melalui bidang manajemen Azure melalui portal Azure, PowerShell, CLI, Azure SDK, atau REST API.
Dengan token ini, aplikasi apa pun berwenang untuk mengakses dengan kontrol akses berbasis peran Azure dan kontrol fine-grain ke kedaluwarsa, tarif, dan wilayah penggunaan untuk token tertentu. Dengan kata lain, Token SAS dapat digunakan untuk memungkinkan aplikasi mengontrol akses dengan cara yang lebih aman daripada kunci bersama.
Untuk aplikasi yang diekspos secara publik, rekomendasi kami adalah mengonfigurasi daftar spesifik asal yang diizinkan pada sumber daya akun Peta untuk membatasi penyalahgunaan penyalahgunaan dan memperbarui Token SAS secara teratur.
Type:
apiKey
In:
header
Contoh
PostGeofence
Sample Request
POST https://us.atlas.microsoft.com/spatial/geofence/json?api-version=2022-08-01&deviceId=unique_device_name_under_account&lat=48.36&lon=-124.63&userTime={userTime}&searchBuffer=50&isAsync=True&mode=EnterAndExit
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-122.13241226662022,
47.61701140091722
],
[
-122.12810106940353,
47.6169969269402
],
[
-122.12824948956276,
47.61907683751349
],
[
-122.12833297981392,
47.621929787055336
],
[
-122.12971398040168,
47.62184100705295
],
[
-122.1318413862121,
47.62195364373008
],
[
-122.13231034769727,
47.61716332618121
],
[
-122.13241226662022,
47.61701140091722
]
]
]
},
"properties": {
"geometryId": "2",
"name": "Crossroad Mall"
}
},
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-122.1534220563239,
47.60981818546625
],
[
-122.153451623509,
47.60628733146004
],
[
-122.14971782206638,
47.606250040787046
],
[
-122.14817354810637,
47.606391046012305
],
[
-122.1482735128807,
47.60983316796356
],
[
-122.15225500989803,
47.60982613678752
],
[
-122.1534220563239,
47.60981818546625
]
]
]
},
"properties": {
"geometryId": "1",
"name": "Sammamish High school"
}
}
]
}
Sample Response
{
"geometries": [
{
"deviceId": "unique_device_name_under_account",
"geometryId": "2",
"distance": -999,
"nearestLat": 47.621954,
"nearestLon": -122.131841
},
{
"deviceId": "unique_device_name_under_account",
"geometryId": "1",
"distance": 999,
"nearestLat": 47.609833,
"nearestLon": -122.148274
}
],
"expiredGeofenceGeometryId": [],
"invalidPeriodGeofenceGeometryId": [],
"isEventPublished": true
}
Definisi
Nama | Deskripsi |
---|---|
Error |
Info tambahan kesalahan manajemen sumber daya. |
Error |
Detail kesalahan. |
Error |
Respons kesalahan |
Geofence |
Objek ini dikembalikan dari panggilan kedekatan geofence. |
Geofence |
Geometri geofencing. |
Geofence |
Mode mekanisme peristiwa asinkron geofencing. |
Geo |
Jenis objek yang valid |
Geo |
Jenis objek yang valid |
Geo |
Objek geometri yang valid |
Geo |
Jenis objek yang valid |
Geo |
Jenis geometri yang valid |
Geo |
Jenis geometri yang valid |
Geo |
Jenis geometri yang valid |
Geo |
Jenis objek yang valid |
Geo |
Jenis geometri yang valid |
Geo |
Jenis geometri yang valid |
Json |
Format respons yang diinginkan. Hanya |
ErrorAdditionalInfo
Info tambahan kesalahan manajemen sumber daya.
Nama | Jenis | Deskripsi |
---|---|---|
info |
object |
Info tambahan. |
type |
string |
Jenis info tambahan. |
ErrorDetail
Detail kesalahan.
Nama | Jenis | Deskripsi |
---|---|---|
additionalInfo |
Info tambahan kesalahan. |
|
code |
string |
Kode kesalahan. |
details |
Detail kesalahan. |
|
message |
string |
Pesan kesalahan. |
target |
string |
Target kesalahan. |
ErrorResponse
Respons kesalahan
Nama | Jenis | Deskripsi |
---|---|---|
error |
Objek kesalahan. |
Geofence
Objek ini dikembalikan dari panggilan kedekatan geofence.
Nama | Jenis | Deskripsi |
---|---|---|
expiredGeofenceGeometryId |
string[] |
Lists ID geometri geofence yang kedaluwarsa relatif terhadap waktu pengguna dalam permintaan. |
geometries |
Mencantumkan geometri fence yang berisi posisi koordinat atau menimpa searchBuffer di sekitar posisi. |
|
invalidPeriodGeofenceGeometryId |
string[] |
Lists ID geometri geofence yang dalam periode tidak valid relatif terhadap waktu pengguna dalam permintaan. |
isEventPublished |
boolean |
True jika setidaknya satu peristiwa dipublikasikan ke pelanggan peristiwa Azure Maps, false jika tidak ada peristiwa yang dipublikasikan kepada pelanggan peristiwa Azure Maps. Ini hanya akan disajikan sebagai respons ketika parameter kueri 'isAsync' diatur ke true. |
GeofenceGeometry
Geometri geofencing.
Nama | Jenis | Deskripsi |
---|---|---|
deviceId |
string |
ID perangkat. |
distance |
number |
Jarak dari koordinat ke batas terdekat geofence (dalam meter kecuali ketika nilai khusus -999/999 digunakan). Positif berarti koordinat berada di luar geofence. Jika koordinat berada di luar geofence, tetapi lebih dari nilai searchBuffer yang jauh dari perbatasan geofence terdekat, nilainya adalah 999. Negatif berarti koordinat berada di dalam geofence. Jika koordinat berada di dalam poligon, tetapi lebih dari nilai searchBuffer yang jauh dari batas geofencing terdekat, nilainya adalah -999. Nilai 999 berarti bahwa ada kepercayaan besar koordinat baik di luar geofence. Nilai -999 berarti bahwa ada kepercayaan besar koordinat baik dalam geofence. |
geometryId |
string |
Id unik mengidentifikasi geometri. |
nearestLat |
number |
Garis lintang titik terdekat dari geometri. |
nearestLon |
number |
Garis bujur titik terdekat dari geometri. |
nearestZ |
number |
Permukaan laut dalam meter titik terdekat pada geometri ekstrusi 2D. Ini hanya akan disajikan sebagai respons ketika nilai disediakan untuk 'zInMeter' dalam permintaan. |
udId |
string |
Id unik yang digunakan saat membuat registri Data untuk mengunggah objek GeoJSON FeatureCollection yang valid. Silakan merujuk ke RFC 7946 untuk detailnya. Semua properti fitur harus berisi |
GeofenceMode
Mode mekanisme peristiwa asinkron geofencing.
Nama | Jenis | Deskripsi |
---|---|---|
All |
string |
Terbitkan semua hasil kueri ke langganan peristiwa akun Azure Maps. |
EnterAndExit |
string |
Hanya terbitkan hasil ketika lokasi pengguna dianggap sebagai penyeberangan geofencing boarder. |
GeoJsonFeature
Jenis objek yang valid GeoJSON Feature
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
featureType |
string |
Jenis fitur. Nilai tergantung pada model data, fitur saat ini adalah bagian dari. Beberapa model data mungkin memiliki nilai kosong. |
geometry | GeoJsonGeometry: |
Objek geometri yang valid |
id |
string |
Pengidentifikasi untuk fitur tersebut. |
type |
string:
Feature |
Menentukan jenis. |
GeoJsonFeatureCollection
Jenis objek yang valid GeoJSON FeatureCollection
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
features |
Berisi daftar objek yang valid |
|
type |
string:
Feature |
Menentukan jenis. |
GeoJsonGeometry
Objek geometri yang valid GeoJSON
. Jenisnya harus salah satu dari tujuh jenis geometri GeoJSON yang valid - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon dan GeometryCollection. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
type |
Geo |
Menentukan jenis. |
GeoJsonGeometryCollection
Jenis objek yang valid GeoJSON GeometryCollection
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
geometries | GeoJsonGeometry[]: |
Berisi daftar objek geometri yang valid |
type |
string:
Geometry |
Menentukan jenis. |
GeoJsonLineString
Jenis geometri yang valid GeoJSON LineString
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
Koordinat |
type |
string:
Line |
Menentukan jenis. |
GeoJsonMultiLineString
Jenis geometri yang valid GeoJSON MultiLineString
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
Koordinat |
type |
string:
Multi |
Menentukan jenis. |
GeoJsonMultiPoint
Jenis geometri yang valid GeoJSON MultiPoint
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
Koordinat |
type |
string:
Multi |
Menentukan jenis. |
GeoJsonMultiPolygon
Jenis objek yang valid GeoJSON MultiPolygon
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
Berisi daftar objek yang valid |
type |
string:
Multi |
Menentukan jenis. |
GeoJsonPoint
Jenis geometri yang valid GeoJSON Point
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
|
type |
string:
Point |
Menentukan jenis. |
GeoJsonPolygon
Jenis geometri yang valid GeoJSON Polygon
. Silakan merujuk ke RFC 7946 untuk detailnya.
Nama | Jenis | Deskripsi |
---|---|---|
coordinates |
number[] |
Koordinat |
type |
string:
Polygon |
Menentukan jenis. |
JsonFormat
Format respons yang diinginkan. Hanya json
format yang didukung.
Nama | Jenis | Deskripsi |
---|---|---|
json |
string |