이 문서에서는 Azure Maps 이벤트에 대한 속성과 스키마를 제공합니다. 이벤트 스키마에 대한 소개는 Azure Event Grid 이벤트 스키마를 참조하세요. 또한 Azure Maps를 이벤트 원본으로 사용하는 빠른 시작 및 자습서 목록을 제공합니다.
사용할 수 있는 이벤트 유형
Azure Maps 계정은 다음 이벤트 유형을 내보낸다.
| 이벤트 유형 | 설명 |
|---|---|
| Microsoft.Maps.GeofenceEntered | 받은 좌표가 지정된 지오펜스 외부에서 내부로 이동했을 때 발생합니다. |
| Microsoft.Maps.GeofenceExited | 받은 좌표가 지정된 지오펜스 내에서 외부로 이동했을 때 발생합니다. |
| Microsoft.Maps.GeofenceResult | 상태에 관계없이 지오펜싱 쿼리가 결과를 반환할 때마다 발생합니다. |
예제 이벤트
다음 예제에서는 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"
}
다음 예제에서는 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"
}
이벤트 속성
이벤트에는 다음과 같은 최상위 데이터가 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
source |
문자열 | 이벤트 원본에 대한 전체 리소스 경로입니다. 이 필드는 쓸 수 없습니다. Event Grid는 이 값을 제공합니다. |
subject |
문자열 | 이벤트 주제에 대한 경로를 게시자가 정의합니다. |
type |
문자열 | 이 이벤트 원본에 대해 등록된 이벤트 유형 중 하나입니다. |
time |
문자열 | 공급자의 UTC 시간을 기준으로 이벤트가 생성되는 시간입니다. |
id |
문자열 | 이벤트의 고유 식별자입니다. |
data |
객체 | 지오펜싱 이벤트 데이터입니다. |
specversion |
문자열 | CloudEvents 스키마 사양 버전입니다. |
데이터 개체에는 다음과 같은 속성이 있습니다:
| 재산 | 유형 | 설명 |
|---|---|---|
apiCategory |
문자열 | 이벤트의 API 범주입니다. |
apiName |
문자열 | 이벤트의 API 이름입니다. |
issues |
객체 | 처리 중에 발생한 문제를 나열합니다. 문제가 반환되면 응답과 함께 반환되는 기하 도형이 없습니다. |
responseCode |
숫자 | HTTP 응답 코드 |
geometries |
객체 | 좌표 위치를 포함하거나 위치 주위에 searchBuffer와 겹치는 펜스 형상을 나열합니다. |
Maps API에서 오류가 발생하면 오류 개체가 반환됩니다. 오류 개체에는 다음과 같은 속성이 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
error |
ErrorDetails | 이 객체는 Maps API에서 오류가 발생하면 반환됩니다 |
Maps API에서 오류가 발생하면 ErrorDetails 개체가 반환됩니다. ErrorDetails 또는 개체에는 다음과 같은 속성이 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
code |
문자열 | HTTP 상태 코드입니다. |
message |
문자열 | 사용 가능한 경우 오류에 대한 사람이 읽을 수 있는 설명입니다. |
innererror |
InnerError | 사용 가능한 경우 오류에 대한 서비스별 정보를 포함하는 개체입니다. |
InnerError는 오류에 대한 서비스별 정보를 포함하는 개체입니다. InnerError 개체에는 다음과 같은 속성이 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
code |
문자열 | 오류 메시지입니다. |
geometries 개체는 요청의 사용자 시간을 기준으로 만료된 지오펜스의 기하 도형 ID를 나열합니다. geometries 개체에는 다음 속성을 가진 기하 도형 항목이 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
deviceid |
문자열 | 디바이스의 ID입니다. |
distance |
문자열 | 좌표에서 지오펜스의 가장 가까운 테두리까지의 거리입니다. 양수는 좌표가 지오펜스 외부에 있다는 것을 의미합니다. 좌표가 지오펜스 외부에 있지만 가장 가까운 지오펜스 테두리에서 멀리 떨어진 searchBuffer 값보다 큰 경우 값은 999입니다. 음수는 좌표가 지오펜스 내부에 있다는 것을 의미합니다. 좌표가 다각형 내부에 있지만 가장 가까운 지오펜싱 경계에서 searchBuffer 값보다 큰 경우 값은 -999입니다. 값이 999이면 좌표가 지오펜스 외부에 있다는 확신이 커집니다. -999 값은 좌표가 지오펜스 내에서 잘 있다는 큰 확신이 있음을 의미합니다. |
geometryid |
문자열 | 고유 ID는 지오펜스 기하 도형을 식별합니다. |
nearestlat |
숫자 | 기하 도형의 가장 가까운 지점의 위도입니다. |
nearestlon |
숫자 | 기하 도형의 가장 가까운 지점의 경도입니다. |
udId |
문자열 | 지오펜스를 업로드할 때 사용자 업로드 서비스에서 반환된 고유 ID입니다. 지오펜싱 후 API에는 포함되지 않습니다. |
데이터 개체에는 다음과 같은 속성이 있습니다:
| 재산 | 유형 | 설명 |
|---|---|---|
expiredGeofenceGeometryId |
문자열[] | 요청의 사용자 시간을 기준으로 만료된 지오펜스의 기하 도형 ID 목록입니다. |
geometries |
geometries[] | 좌표 위치를 포함하거나 위치 주위에 searchBuffer와 겹치는 펜스 형상을 나열합니다. |
invalidPeriodGeofenceGeometryId |
문자열[] | 요청의 사용자 시간을 기준으로 잘못된 기간에 있는 지오펜스의 기하 도형 ID 목록입니다. |
isEventPublished |
부울 | True이면 하나 이상의 이벤트가 Azure Maps 이벤트 구독자에 게시되고, Azure Maps 이벤트 구독자에 이벤트가 게시되지 않으면 false입니다. |
자습서 및 방법
| Title | 설명 |
|---|---|
| Event Grid를 사용하여 Azure Maps 이벤트에 대응 | Azure Maps를 Event Grid와 통합하는 개요입니다. |
| 자습서: 지오펜스 설정 | 이 자습서에서는 Azure Maps를 사용하여 지오펜스를 설정하는 기본 단계를 안내합니다. Azure Event Grid를 사용하여 지오펜스 결과를 스트리밍하고 지오펜스 결과에 따라 알림을 설정합니다. |
다음 단계
- Azure Event Grid에 대한 소개는 Event Grid란?을 참조하세요.
- Azure Event Grid 구독을 만드는 방법에 대한 자세한 내용은 Event Grid 구독 스키마를 참조하세요.