Bagikan melalui


Azure Maps sebagai sumber Event Grid

Artikel ini menyediakan properti dan skema untuk peristiwa Azure Maps. Untuk pengantar skema peristiwa, lihat Skema peristiwa Azure Event Grid. Ini juga memberi Anda daftar mulai cepat dan tutorial untuk menggunakan Azure Maps sebagai sumber peristiwa.

Tipe kejadian yang tersedia

Akun Azure Maps mengeluarkan jenis peristiwa berikut:

Jenis peristiwa Deskripsi
Microsoft.Maps.GeofenceEntered Ditampilkan ketika koordinat yang diterima telah berpindah dari luar geofence yang diberikan ke dalam
Microsoft.Maps.GeofenceExited Ditampilkan ketika koordinat yang diterima telah berpindah dari dalam geofence yang diberikan ke luar
Microsoft.Maps.GeofenceResult Ditampilkan setiap kali kueri geofencing mengembalikan hasil, terlepas dari statusnya

Contoh kejadian

Contoh berikut menunjukkan skema peristiwa GeofenceEntered

{   
   "id":"7f8446e2-1ac7-4234-8425-303726ea3981", 
   "source":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Maps/accounts/{accountName}", 
   "subject":"/spatial/geofence/udid/{udid}/id/{eventId}", 
   "data":{   
      "geometries":[   
         {   
            "deviceId":"device_1", 
            "udId":"1a13b444-4acf-32ab-ce4e-9ca4af20b169", 
            "geometryId":"2", 
            "distance":-999.0, 
            "nearestLat":47.618786, 
            "nearestLon":-122.132151 
         } 
      ], 
      "expiredGeofenceGeometryId":[   
      ], 
      "invalidPeriodGeofenceGeometryId":[   
      ] 
   }, 
   "type":"Microsoft.Maps.GeofenceEntered", 
   "time":"2018-11-08T00:54:17.6408601Z", 
   "specversion":"1.0" 
}

Contoh berikut menunjukkan skema untuk GeofenceResult

{   
   "id":"451675de-a67d-4929-876c-5c2bf0b2c000", 
   "source":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Maps/accounts/{accountName}", 
   "subject":"/spatial/geofence/udid/{udid}/id/{eventId}", 
   "data":{   
      "geometries":[   
         {   
            "deviceId":"device_1", 
            "udId":"1a13b444-4acf-32ab-ce4e-9ca4af20b169", 
            "geometryId":"1", 
            "distance":999.0, 
            "nearestLat":47.609833, 
            "nearestLon":-122.148274 
         }, 
         {   
            "deviceId":"device_1", 
            "udId":"1a13b444-4acf-32ab-ce4e-9ca4af20b169", 
            "geometryId":"2", 
            "distance":999.0, 
            "nearestLat":47.621954, 
            "nearestLon":-122.131841 
         } 
      ], 
      "expiredGeofenceGeometryId":[   
      ], 
      "invalidPeriodGeofenceGeometryId":[   
      ] 
   }, 
   "type":"Microsoft.Maps.GeofenceResult", 
   "time":"2018-11-08T00:52:08.0954283Z", 
   "specversion":"1.0" 
}

Properti kejadian

Sebuah peristiwa memiliki data tingkat atas berikut ini:

Properti Tipe Deskripsi
source string Jalur sumber daya lengkap ke sumber kejadian. Bidang ini tidak dapat ditulis. Event Grid memberikan nilai ini.
subject string Jalur yang ditentukan penerbit ke subjek kejadian.
type string Salah satu jenis kejadian terdaftar untuk sumber kejadian ini.
time string Waktu peristiwa dibuat berdasarkan waktu UTC penyedia.
id string Pengidentifikasi unik untuk peristiwa tersebut.
data object Data peristiwa geofencing.
specversion string Versi spesifikasi skema CloudEvents.

Objek data memiliki properti berikut:

Properti Tipe Deskripsi
apiCategory string Kategori API peristiwa.
apiName string Nama API peristiwa.
issues object Mencantumkan masalah yang terjadi selama pemrosesan. Jika ada masalah yang dikembalikan, tidak akan ada geometri yang dikembalikan dengan respons.
responseCode number Kode respons HTTP
geometries object Mencantumkan geometri fence yang berisi posisi koordinat atau menimpa searchBuffer di sekitar posisi.

Objek kesalahan dikembalikan ketika terjadi kesalahan di Maps API. Objek data memiliki properti berikut:

Properti Tipe Deskripsi
error ErrorDetails Objek ini dikembalikan ketika terjadi kesalahan di Maps API

Objek ErrorDetails dikembalikan ketika terjadi kesalahan di Maps API. ErrorDetails atau objek memiliki properti berikut:

Properti Tipe Deskripsi
code string Kode status HTTP.
message string Jika tersedia, deskripsi kesalahan yang dapat dibaca manusia.
innererror InnerError Jika tersedia, objek yang berisi informasi khusus layanan tentang kesalahan tersebut.

InnerError adalah objek yang berisi informasi khusus layanan tentang kesalahan tersebut. Objek InnerError memiliki properti berikut:

Properti Tipe Deskripsi
code string Pesan kesalahan.

Objek geometri mencantumkan ID geometri dari geofence yang telah kedaluwarsa relatif terhadap waktu pengguna dalam permintaan. Objek geometri memiliki item geometri dengan properti berikut:

Properti Tipe Deskripsi
deviceid string ID perangkat.
distance string

Jarak dari koordinat ke perbatasan terdekat dari geofence. 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 keyakinan besar koordinat berada jauh di luar geofence. Nilai -999 berarti bahwa ada keyakinan besar koordinat berada dalam geofence.

geometryid string ID unik mengidentifikasi geometri geofence.
nearestlat number Garis lintang titik terdekat dari geometri.
nearestlon number Garis bujur titik terdekat dari geometri.
udId string ID unik yang dikembalikan dari layanan pengunggahan pengguna saat mengunggah geofence. Tidak akan disertakan dalam API posting geofencing.

Objek data memiliki properti berikut:

Properti Tipe Deskripsi
expiredGeofenceGeometryId string[] Daftar ID geometri geofence yang kedaluwarsa terkait waktu pengguna dalam permintaan.
geometries geometri[] Mencantumkan geometri fence yang berisi posisi koordinat atau menimpa searchBuffer di sekitar posisi.
invalidPeriodGeofenceGeometryId string[] Daftar ID geometri geofence yang dalam periode tidak valid terkait 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.

Tutorial dan cara kerja

Judul Deskripsi
Merespons peristiwa Azure Maps menggunakan Event Grid Ringkasan mengintegrasikan Azure Maps dengan Event Grid.
Tutorial: Menyiapkan geofence Tutorial ini memandu Anda melalui langkah-langkah dasar untuk menyiapkan geofence menggunakan Azure Maps. Anda menggunakan Azure Event Grid untuk melakukan streaming hasil geofence dan menyiapkan pemberitahuan berdasarkan hasil geofence.

Langkah berikutnya