Bagikan melalui


Melakukan geofencing data GeoJSON

AZURE Maps GET Geofence dan POST Geofence API memungkinkan Anda untuk mengambil kedekatan koordinat yang relatif terhadap geofence atau set pagar yang disediakan. Artikel ini menjelaskan cara menyiapkan data geofence yang dapat digunakan di Azure Maps GET dan POST API.

Data untuk geofence atau set geofence, yang diwakili oleh Feature Objek dan FeatureCollection Objek dalam GeoJSON format, didefinisikan dalam rfc7946. Selain itu:

  • Jenis Objek GeoJSON dapat berupa Objek Feature atau Objek FeatureCollection.
  • Jenis Objek Geometri bisa berupa Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, dan GeometryCollection.
  • Semua properti fitur harus mengandung geometryId, yang digunakan untuk mengidentifikasi geofence.
  • Fitur dengan Point, MultiPoint, LineString, MultiLineString, harus berisi radius dalam properti. Nilai radius diukur dalam meter, nilai radius berkisar antara 1 hingga 10000.
  • Fitur dengan polygon jenis geometri dan multipolygon tidak memiliki properti radius.
  • validityTime adalah properti opsional yang memungkinkan pengguna menetapkan waktu kedaluwarsa dan periode waktu validitas untuk data geofence. Jika tidak ditentukan, data tidak pernah kedaluwarsa dan selalu valid.
  • expiredTime adalah tanggal kedaluwarsa dan waktu data geofencing. Jika nilai dalam permintaan lebih lambat dari userTime nilai ini, data geofence yang sesuai dianggap sebagai data kedaluwarsa dan tidak dikueri. Di mana, geometryId dari data geofence ini disertakan dalam array dalam expiredGeofenceGeometryId respons geofence.
  • validityPeriod adalah daftar periode waktu validitas geofence. Jika nilai userTime dalam permintaan berada di luar periode validitas, data geofence yang sesuai dianggap tidak valid dan tidak dikueri. GeometryId data geofence ini termasuk dalam larik invalidPeriodGeofenceGeometryId dalam respons geofence. Tabel berikut ini memperlihatkan properti elemen validityPeriod.
Nama Tipe Wajib Deskripsi
startTime Tanggalwaktu benar Waktu tanggal mulai periode waktu validitas.
endTime Tanggalwaktu benar Waktu tanggal berakhir periode waktu validitas.
recurrenceType string salah Jenis pengulangan periode. Nilainya bisa Daily, Weekly, Monthly, atau Yearly. Nilai default Daily.
businessDayOnly Boolean salah Menunjukkan apakah data hanya valid selama hari kerja. Nilai default false.
  • Semua nilai koordinat direpresentasikan sebagai [bujur, lintang] yang didefinisikan dalam WGS84.
  • Untuk setiap Fitur, yang berisi MultiPoint, MultiLineString, MultiPolygon, atau GeometryCollection, properti diterapkan ke semua elemen. misalnya: Semua titik dalam MultiPoint menggunakan radius yang sama untuk membentuk beberapa geofence lingkaran.
  • Dalam skenario lingkaran titik, geometri lingkaran dapat diwakili menggunakan objek geometri Point dengan properti yang diuraikan dalam Memperluas geometri GeoJSON.

Berikut adalah isi permintaan sampel untuk geofence yang ditampilkan sebagai geofence lingkaran di GeoJSON menggunakan titik tengah dan radius. Periode valid data geofence dimulai dari 2018-10-22, 09.00 hingga 17.00, diulang setiap hari kecuali untuk akhir pekan. expiredTime menunjukkan data geofence ini dianggap kedaluwarsa, jika userTime dalam permintaan lebih lambat dari 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
                }
            ]
        }
    }
}