Kurz: Nastavení monitorované geografické zóny pomocí Azure Maps
v tomto kurzu se seznámíte se základy vytváření a používání Azure Mapsch geografických služeb.
Představte si následující scénář:
Správce staveniště musí sledovat zařízení při jeho vstupu a opustí hranice oblasti stavby. Pokaždé, když se nějaké zařízení ukončí nebo vstoupí do těchto hraničních okruhů, pošle se na Operations Manager e-mailové oznámení.
Azure Maps poskytuje řadu služeb pro podporu sledování zařízení vstupujících do oblasti stavby a jejich opuštění. V tomto kurzu:
- Upload geograficky geografická data , která definují oblasti staveniště, které chcete monitorovat. použijete rozhraní Data Upload API k nahrávání geografických zón jako souřadnic mnohoúhelníku na váš Azure Maps účet.
- Nastavte dvě Aplikace logiky , které po aktivaci odesílají e-mailová oznámení do výrobního serveru Operations Manageru, když zařízení vstoupí do oblasti geografického uspořádání a ukončí ho.
- pomocí Azure Event Grid se můžete přihlásit k odběru událostí pro Azure Maps geografické ploty. Nastavili jste dva odběry událostí Webhooku, které volají koncové body HTTP definované ve vašich dvou aplikacích logiky. Aplikace logiky pak pošle vhodná e-mailová oznámení o přemístění nebo zapisování geografického zařízení.
- Využijte Hledat geografické ploty získat rozhraní API pro příjem oznámení v případě, že se nějaké zařízení ukončí a pak vstoupí do oblastí geografické oblasti.
Požadavky
- vytvořte účet Azure Maps.
- Získejte primární klíč předplatného, označovaný také jako primární klíč nebo klíč předplatného.
V tomto kurzu se používá aplikace po aplikaci, ale můžete použít jiné vývojové prostředí API.
Upload geografických dat geografického zápisu
V tomto kurzu budete nahrávat data geografických zón JSON, která obsahují FeatureCollection . FeatureCollectionObsahuje dvě geografické ploty, které definují mnohoúhelníkové oblasti v rámci staveniště. První Geografické ohraničení nemá žádné vypršení času ani omezení. Druhý se může dotazovat jenom v pracovní době (9:00 dop. 5:00 odp v časovém pásmu tichomořského) a po 1. lednu 2022 už nebude platný. Další informace o formátu geografického JSON najdete v tématu geografická data geografických dat.
Tip
Data monitorování geografických zón můžete kdykoli aktualizovat. další informace najdete v tématu rozhraní Data Upload API.
Postup při nahrávání geografických dat pro geografickou ochranu geografických zón:
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , jako je například post data upload.
Vyberte metodu post http.
Zadejte následující adresu URL. Požadavek by měl vypadat jako následující adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného):https://us.atlas.microsoft.com/mapData?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=2.0&dataFormat=geojsongeojsonParametr v cestě URL představuje formát dat odesílaných dat.Vyberte kartu tělo .
V rozevíracích seznamech vyberte raw a JSON.
Zkopírujte následující data o zápisu dat a vložte je do okna text :
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.13393688201903, 47.63829579223815 ], [ -122.13389128446579, 47.63782047131512 ], [ -122.13240802288054, 47.63783312249837 ], [ -122.13238388299942, 47.63829037035086 ], [ -122.13393688201903, 47.63829579223815 ] ] ] }, "properties": { "geometryId": "1" } }, { "type": "Feature", "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.13374376296996, 47.63784758098976 ], [ -122.13277012109755, 47.63784577367854 ], [ -122.13314831256866, 47.6382813338708 ], [ -122.1334782242775, 47.63827591198201 ], [ -122.13374376296996, 47.63784758098976 ] ] ] }, "properties": { "geometryId": "2", "validityTime": { "expiredTime": "2022-01-01T00:00:00", "validityPeriod": [ { "startTime": "2020-07-15T16:00:00", "endTime": "2020-07-15T24:00:00", "recurrenceType": "Daily", "recurrenceFrequency": 1, "businessDayOnly": true } ] } } } ] }Vyberte Odeslat.
V okně odpověď vyberte kartu hlavičky .
Zkopírujte hodnotu klíče umístění operace , což je
status URL. Použijemestatus URLke kontrole stavu nahrání dat z rámečku JSON.https://us.atlas.microsoft.com/mapData/operations/{operationId}?api-version=2.0
Ověřte stav nahrání dat ve službě data a zjišťování.
Chcete-li ověřit stav dat typu "data a třídy. JSON" a načíst jeho jedinečné ID ( udid ):
Vyberte možnost pro novou položku.
V okně vytvořit nové vyberte požadavek HTTP.
zadejte název žádosti , například stav získat Data Upload.
Vyberte metodu Get http.
zadejte
status URLkód, který jste zkopírovali v Upload geograficky geografická data geografickéhoformátu. Požadavek by měl vypadat jako následující adresa URL (nahraďte{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného):https://us.atlas.microsoft.com/mapData/{operationId}?api-version=2.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}Vyberte Odeslat.
V okně odpověď vyberte kartu hlavičky .
Zkopírujte hodnotu klíče umístění prostředku , což je
resource location URL.resource location URLObsahuje jedinečný identifikátor (udid) nahraných dat. Uložte siudiddotaz k rozhraní API získat geografickou ochranou v poslední části tohoto kurzu.
Volitelné Načtení metadat pro data typu injson
Můžete načíst metadata z nahraných dat. Metadata obsahují informace, jako je adresa URL umístění prostředku, datum vytvoření, aktualizované datum, velikost a stav odeslání.
Načtení metadat obsahu:
Vyberte možnost pro novou položku.
V okně vytvořit nové vyberte požadavek HTTP.
zadejte název žádosti , například získat Data Upload Metadata.
Vyberte metodu Get http.
Zadejte,
resource Location URLkam jste zkopírovali, a Ověřte stav nahrání dat ve službě injson. Požadavek by měl vypadat jako následující adresa URL (nahraďte{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného):https://us.atlas.microsoft.com/mapData/metadata/{udid}?api-version=2.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}V okně odpověď vyberte kartu tělo . Metadata by měla vypadat jako následující fragment JSON:
{ "udid": "{udid}", "location": "https://us.atlas.microsoft.com/mapData/6ebf1ae1-2a66-760b-e28c-b9381fcff335?api-version=2.0", "created": "5/18/2021 8:10:32 PM +00:00", "updated": "5/18/2021 8:10:37 PM +00:00", "sizeInBytes": 946901, "uploadStatus": "Completed" }
Vytváření pracovních postupů v Azure Logic Apps
V dalším kroku vytvoříme dva koncové body Aplikace logiky , které aktivují e-mailové oznámení.
Vytvoření Logic Apps:
Přihlaste se k webu Azure Portal.
V levém horním rohu Azure Portal vyberte vytvořit prostředek.
Do pole Hledat na Marketplace zadejte Aplikace logiky.
Z výsledků vyberte Aplikace logiky. Potom vyberte Vytvořit.
Na stránce Aplikace logiky zadejte následující hodnoty:
- Předplatné , které chcete použít pro tuto aplikaci logiky.
- Název skupiny prostředků pro tuto aplikaci logiky Můžete zvolit Vytvoření nové nebo použití existující skupiny prostředků.
- Název aplikace logiky vaší aplikace logiky V takovém případě použijte
Equipment-Enterjako název.
Pro účely tohoto kurzu ponechte všechny ostatní hodnoty na jejich výchozím nastavení.
Vyberte Zkontrolovat a vytvořit. Zkontrolujte nastavení a vyberte vytvořit.
Po úspěšném dokončení nasazení vyberte Přejít k prostředku.
V Návrháři aplikace logiky se posuňte dolů k části začít s běžným triggerem . Vyberte, kdy se přijme požadavek HTTP.
V pravém horním rohu návrháře aplikace logiky vyberte Uložit. Adresa URL příspěvku http se vygeneruje automaticky. Uložte adresu URL. Budete ho potřebovat v další části, abyste vytvořili koncový bod události.
Vyberte + Nový krok.
Do vyhledávacího pole zadejte
outlook.com email. V seznamu Akce přejděte dolů a vyberte Odeslat e-mail (v2).
přihlaste se ke svému účtu Outlook. Nezapomeňte vybrat Ano , pokud chcete, aby aplikace logiky měla přístup k účtu. Vyplňte pole k odeslání e-mailu.
Tip
geometryIddeviceIdV e-mailových oznámeních můžete načíst data o neodpověďech na data typu injson, jako je například nebo. Logic Apps můžete nakonfigurovat pro čtení dat odesílaných Event Grid. Informace o tom, jak nakonfigurovat Logic Apps pro využívání a předávání dat událostí do e-mailových oznámení, najdete v tématu kurz: odesílání e-mailových oznámení o událostech Azure IoT Hub pomocí Event Grid a Logic Apps.V levém horním rohu návrháře aplikace logiky vyberte Uložit.
Pokud chcete vytvořit druhou aplikaci logiky, která upozorní správce, když zařízení opustí staveniště, opakujte stejný postup. Pojmenujte aplikaci logiky
Equipment-Exit.
vytvoření předplatných událostí Azure Maps
Azure Maps podporuje tři typy událostí. V tomto kurzu vytvoříme odběry následujících dvou událostí:
- Události zadávání geografických zón
- Události ukončení geografického výstupu
Pokud chcete vytvořit konec geografické a zadat odběr události:
v Azure Maps účtu vyberte předplatná.
Vyberte název vašeho předplatného.
V nabídce nastavení vyberte možnost události.
Na stránce události vyberte + předplatné události.
Na stránce vytvořit odběr události zadejte následující hodnoty:
- Název odběru události
- Schéma události by mělo být Event Grid schématu.
- Název systémového tématu pro toto předplatné události, v tomto případě je to
Contoso-Construction. - Pro Filtr na typy událostí vyberte
Geofence Enteredjako typ události. - Jako Typ koncového bodu vyberte
Web Hook. - Pro koncový bod zkopírujte adresu URL post protokolu HTTP pro aplikaci logiky Zadejte koncový bod, který jste vytvořili v předchozí části. Pokud jste zapomněli ho uložit, můžete se vrátit zpátky do návrháře aplikace logiky a zkopírovat ho z kroku triggeru HTTP.
Vyberte Vytvořit.
Opakujte stejný postup pro událost ukončení geografické zóny. Ujistěte se, že jste zvolili
Geofence ExitedTyp události.
Použití rozhraní API pro prostorovou geografickou práci
V dalším kroku použijeme rozhraní API pro prostorové geografické ploty k posílání e-mailových oznámení do Operations Manageru, když některý ze zařízení vstoupí nebo ukončuje geografické ploty.
Každý kus vybavení má deviceId . V tomto kurzu sledujete jedno vybavení s jedinečným ID device_1 .
Následující diagram znázorňuje pět umístění zařízení v průběhu času počínaje počátečním umístěním, které je někde mimo okolní geografické oblasti. Pro účely tohoto kurzu není umístění začátku definováno, protože v tomto umístění nebudete dotazováni na zařízení.
Při dotazování rozhraní API pro prostorové geografické rozmístění pomocí umístění zařízení, které označuje počáteční položku nebo ukončení geografické oblasti, Event Grid volá příslušný koncový bod aplikace logiky k odeslání e-mailového oznámení do nástroje Operations Manager.
Každý z následujících oddílů provede požadavky rozhraní API pomocí pěti různých souřadnic umístění tohoto zařízení.

Umístění zařízení 1 (47.638237,-122,132483)
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , například umístění 1.
Vyberte metodu Get http.
Zadejte následující adresu URL. požadavek by měl vypadat nějak takto: adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného a{udid}sudidvámi uloženou v sekci Upload geografická data geografického zápisu datv angličtině).https://atlas.microsoft.com/spatial/geofence/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&deviceId=device_01&udid={udid}&lat=47.638237&lon=-122.1324831&searchBuffer=5&isAsync=True&mode=EnterAndExitVyberte Odeslat.
Odpověď by měla vypadat jako následující zlomek pro podobné JSON:
{ "geometries": [ { "deviceId": "device_1", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "1", "distance": -999.0, "nearestLat": 47.638291, "nearestLon": -122.132483 }, { "deviceId": "device_1", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "2", "distance": 999.0, "nearestLat": 47.638053, "nearestLon": -122.13295 } ], "expiredGeofenceGeometryId": [], "invalidPeriodGeofenceGeometryId": [], "isEventPublished": true }
V předchozí geografické odpovědi se záporná vzdálenost od geografického umístění hlavní lokality znamená, že je zařízení uvnitř geografické sítě. Kladná vzdálenost od geografického umístění dílčí lokality znamená, že je zařízení mimo geografickou lokalitu. Vzhledem k tomu, že je toto zařízení poprvé umístěno v geografickém umístění hlavní lokality, isEventPublished je parametr nastaven na hodnotu true . Operations Manager dostane e-mailové oznámení, které zařízení dostalo do geografické zóny.
Umístění 2 (47.63800,-122,132531)
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , například umístění 2.
Vyberte metodu Get http.
Zadejte následující adresu URL. požadavek by měl vypadat nějak takto: adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného a{udid}sudidvámi uloženou v sekci Upload geografická data geografického zápisu datv angličtině).https://atlas.microsoft.com/spatial/geofence/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&deviceId=device_01&udId={udId}&lat=47.63800&lon=-122.132531&searchBuffer=5&isAsync=True&mode=EnterAndExitVyberte Odeslat.
Odpověď by měla vypadat jako následující zlomek pro podobné JSON:
{ "geometries": [ { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "1", "distance": -999.0, "nearestLat": 47.637997, "nearestLon": -122.132399 }, { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "2", "distance": 999.0, "nearestLat": 47.63789, "nearestLon": -122.132809 } ], "expiredGeofenceGeometryId": [], "invalidPeriodGeofenceGeometryId": [], "isEventPublished": false }
V předchozí odpovědi typu geografická odpověď se zařízení nacházelo v geografickém geografickém umístění a ještě nevstoupilo do geografické lokality. V důsledku toho isEventPublished je parametr nastaven na hodnotu false a Operations Manager neobdrží žádná e-mailová oznámení.
Umístění 3 (47.63810783315048,-122.13336020708084)
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , jako je například Location 3.
Vyberte metodu Get http.
Zadejte následující adresu URL. požadavek by měl vypadat nějak takto: adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného a{udid}sudidvámi uloženou v sekci Upload geografická data geografického zápisu datv angličtině).https://atlas.microsoft.com/spatial/geofence/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&deviceId=device_01&udid={udid}&lat=47.63810783315048&lon=-122.13336020708084&searchBuffer=5&isAsync=True&mode=EnterAndExitVyberte Odeslat.
Odpověď by měla vypadat jako následující zlomek pro podobné JSON:
{ "geometries": [ { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "1", "distance": -999.0, "nearestLat": 47.638294, "nearestLon": -122.133359 }, { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "2", "distance": -999.0, "nearestLat": 47.638161, "nearestLon": -122.133549 } ], "expiredGeofenceGeometryId": [], "invalidPeriodGeofenceGeometryId": [], "isEventPublished": true }
V předchozí odpovědi typu geografická odpověď byla zařízení v geografickém geografickém umístění, ale byla zapsána geografická lokalita. V důsledku toho isEventPublished je parametr nastaven na hodnotu true . Operations Manager dostane e-mailové oznámení oznamující, že zařízení dostalo geografickou ochranu.
Poznámka
Pokud se zařízení přesunulo do podřízené lokality po pracovní době, nebude se žádná událost publikovat a Operations Manageru by nedostal žádná oznámení.
Umístění 4 (47.637988,-122,1338344)
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , například umístění 4.
Vyberte metodu Get http.
Zadejte následující adresu URL. požadavek by měl vypadat nějak takto: adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného a{udid}sudidvámi uloženou v sekci Upload geografická data geografického zápisu datv angličtině).https://atlas.microsoft.com/spatial/geofence/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&deviceId=device_01&udid={udid}&lat=47.637988&userTime=2023-01-16&lon=-122.1338344&searchBuffer=5&isAsync=True&mode=EnterAndExitVyberte Odeslat.
Odpověď by měla vypadat jako následující zlomek pro podobné JSON:
{ "geometries": [ { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "1", "distance": -999.0, "nearestLat": 47.637985, "nearestLon": -122.133907 } ], "expiredGeofenceGeometryId": [ "2" ], "invalidPeriodGeofenceGeometryId": [], "isEventPublished": false }
V předchozí odpovědi na geografickou odpověď bylo zařízení v geografickém geografickém umístění, ale ukončilo geografickou lokalitu. Všimněte si však, že userTime hodnota je po expiredTime Definování definice v geograficky dat. V důsledku toho isEventPublished je parametr nastaven na hodnotu false a Operations Manager neobdrží e-mailové oznámení.
Umístění 5 (47,63799,-122,134505)
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti , například umístění 5.
Vyberte metodu Get http.
Zadejte následující adresu URL. požadavek by měl vypadat nějak takto: adresa URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného a{udid}sudidvámi uloženou v sekci Upload geografická data geografického zápisu datv angličtině).https://atlas.microsoft.com/spatial/geofence/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&deviceId=device_01&udid={udid}&lat=47.63799&lon=-122.134505&searchBuffer=5&isAsync=True&mode=EnterAndExitVyberte Odeslat.
Odpověď by měla vypadat jako následující zlomek pro podobné JSON:
{ "geometries": [ { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "1", "distance": -999.0, "nearestLat": 47.637985, "nearestLon": -122.133907 }, { "deviceId": "device_01", "udId": "64f71aa5-bbee-942d-e351-651a6679a7da", "geometryId": "2", "distance": 999.0, "nearestLat": 47.637945, "nearestLon": -122.133683 } ], "expiredGeofenceGeometryId": [], "invalidPeriodGeofenceGeometryId": [], "isEventPublished": true }
V předchozí odpovědi typu geografická odpověď byla zařízení ukončena geografickou lokalitou. V důsledku toho isEventPublished je parametr nastaven na hodnotu true a Operations Manager dostane e-mailové oznámení oznamující, že se zařízení ukončilo geografickou ochranou.
Můžete také Odeslat e-mailová oznámení pomocí Event Grid a Logic Apps a pomocí Azure Mapsu kontrolovat podporované obslužné rutiny událostí v Event Grid .
Vyčištění prostředků
Nejsou k dispozici žádné prostředky, které vyžadují vyčištění.