Předpoklad
Zatímco vrstvy ArcGIS Tracker („Tracks“ a „Last Known Location“) lze použít k živému streamování dat o poloze zpět do našeho webového portálu, tato data jsou chráněna dalšími bezpečnostními nastaveními, která zabraňují jejich veřejnému sdílení. Je to pochopitelně záměrné opatření na ochranu osobního soukromí a zabránění nechtěnému sdílení naší polohy s nesprávnými lidmi.
Existuje však jiná metoda, jak můžeme nakonfigurovat téměř živý stream polohy pro účely veřejného sledování... Zvažte následující účely veřejné webové aplikace:
- Sledování průvodu podél místní ulice
- Lokace školního autobusu na jeho okružní trase
- Znovu sledovat své vlastní kroky v terénu
Jedná se o poměrně jednoduché a nízké účely z hlediska úložiště (spotřeby kreditů), pro které můžeme použít sadu ArcGIS Online k řešení.
Pracovní postup v tomto blogovém příspěvku kombinuje následující produkty ArcGIS k nastavení veřejné webové aplikace pro téměř živé streamování a sledování polohy:
- ArcGIS Online
- ArcGIS QuickCapture (Field Apps Bundle)
- ArcGIS Web AppBuilder
- ArcGIS Pro (je-li nutné, viz níže „Důležité úvahy“)
Prohlášení:
ArcGIS QuickCapture je nejvhodnější pro streamování funkcí této velikosti z jednoho zařízení. Pokus o použití této metody pro více uživatelů (např. flotilu aut) v rámci jednoho projektu pravděpodobně způsobí problémy s výkonem a méně a méně „živý“ zážitek.
Pracovní postup
V tomto příkladu budeme sledovat teoretický IceCream truck, jak projíždí čtvrtí.
V ArcGIS Online chceme vytvořit bodovou vrstvu prvků – pojmenoval jsem ji „Icecream Truck“.
Poté přistoupíme k návrháři QuickCapture přes nabídku App Shortcut v ArcGIS Online nebo pomocí URL: https://www.arcgis.com/apps/quickcapture/
Vytvoření nového projektu QuickCapture je snadné:
- Klikněte na „New Project“
- Zvolte „Start from existing layers“ a vyberte svou bodovou vrstvu prvků
- Klikněte na „Next“ a „Create“ svůj projekt
- Pro více informací o návrhových funkcích projektů ArcGIS QuickCapture si prosím přečtěte „Get started with ArcGIS QuickCapture“ a „Configure a Project“
- Vyberte tlačítko pro svou bodovou vrstvu prvků, přejděte na kartu „Data“ a ujistěte se, že je vybrána možnost „Streaming points":

- Můžete také přejít do Nastavení > Obecné > a povolit/nepovolit požadovanou přesnost, stejně jako nastavit „Distance Threshold“ mezi zachycenými body.
- Poté „Save“ svůj projekt
- Nyní my (nebo pracovník v terénu) budeme muset stáhnout a nainstalovat mobilní aplikaci ArcGIS QuickCapture do našeho mobilního zařízení > přihlásit se > vybrat symbol '+' > Procházet projekty > Stáhnout projekt QuickCapture
- Poté přejděte do Nastavení QuickCapture > Autosend > povolit „On“ > a vybrat Interval = 'Immediately'
Tento poslední krok zajistí, že streamované bodové prvky budou synchronizovány zpět do vrstvy prvků v ArcGIS Online hned po jejich zachycení.
Nyní zpět v ArcGIS Online...
- Přejděte do Obsahu, poté najděte a vyberte svou bodovou vrstvu prvků
- Zvolte „Create View Layer“
- Pojmenujte novou vrstvu pohledu, přidejte Shrnutí a Tagy
- Poté zvolte „Open in Map Viewer“
- Ve své webové mapě otevřete rozbalovací nabídku pro View Layer > Set View Definition > Define Features

- Můžeme pak použít atribut 'Fix Time' (vytvořený QuickCapture) k nastavení výrazu tak, aby zobrazoval pouze body, které byly streamovány za posledních x časových jednotek, například:
Fix Time - V posledních - 5 - minutách

- Dále chceme nastavit náš 'Refresh Interval' na této vrstvě na nejnižší možnou hodnotu (každých 30 sekund), aby byla webová mapa co nejčastěji aktuální pro naše publikum webové aplikace...

- Znovu otevřete rozbalovací nabídku pro vrstvu pohledu a zvolte „Save Layer“
Uložte webovou mapu a dejte jí Název, Tagy a Shrnutí...
Nyní přidáme novou webovou mapu do Webové aplikace...
- Přejděte do Obsahu > Vytvořit > Web AppBuilder
- Zvolte '2D' > Dejte Webové aplikaci Název, Tagy a Shrnutí > Klikněte na "Create"
- Zvolte téma
- Přidejte svou webovou mapu
- Přidejte widgety, které by mohly být zajímavé:
- Záložky (z webové mapy)
- Filtr (můžete chtít uživateli umožnit ještě detailnější filtrování podle atributu 'Fix Time')
- Uložte Webovou aplikaci
- V ArcGIS Online > Obsah > nastavte sdílení na "Everyone (Public)" pro následující obsah:
- Vrstva prvků View
- Webová mapa
- Webová aplikace
Nyní my (nebo pracovník v terénu) můžeme začít streamovat jejich polohu z ArcGIS QuickCapture a jejich pohyb může být pozorován s aktualizací každých 30 sekund ve webové aplikaci, přičemž jejich poloha za posledních 5 minut bude za nimi!
Příklad:
Výstup příkladu: Body shromážděné v QuickCapture s prahovou hodnotou vzdálenosti 10 m a veřejná aplikace Web AppBuilder s aktivovaným widgetem filtru "za posledních 0,5 minuty", pro auto projíždějící místní čtvrtí
Další úvahy
Filtry vrstvy pohledu: Funkce zmizí z mapy poté, co uplyne časový limit naší vrstvy pohledu. Abychom tomu předešli, můžeme použít filtr "nejnovějších" funkcí ve službě prvků JSON podle pracovního postupu uvedeného zde: https://community.esri.com/t5/arcgis-online-documents/display-latest-feature-in-a-feature-service/ta-p/904523
A podle následující syntaxe jako vodítka můžeme vrátit nejnovějších 5 bodů podle uživatelského jména:
{
"viewLayerDefinition": {
"topFilter": {
"orderByFields": "OBJECTID ASC",
"groupByFields": "Creator",
"topCount": 5
}
}
}
Obavy ohledně úložiště: Streamování a ukládání funkcí ve velkém pomocí ArcGIS QuickCapture bude mít postupně rostoucí dopad na spotřebu kreditů ArcGIS Online. Musíme nezapomenout hromadně mazat shromážděné bodové funkce poté, co již nejsou relevantní pro náš účel. To lze snadno provést v ArcGIS Pro následujícím způsobem:
- Otevřete ArcGIS Pro, připojte se k ArcGIS Online jako ke svému 'Active Portal' a přihlaste se.
- Přejděte do panelu 'Catalog' a na kartě 'Portal' najděte svou streamovací vrstvu prvků.
- Přidejte tuto vrstvu do mapy, klikněte pravým tlačítkem myši v panelu 'Contents' a otevřete její atributovou tabulku.
Ctrl + A vybere všechny funkce.Klikněte na tlačítko 'Delete' pro jejich odstranění.
< P > < span class = "lia-inline-image-display-wrapper lia-image-align-center " image-alt = "GlenShepherd_0-1614128202134.png " style = "width: 999px; " > < img src = "
https://us.v-cdn.net/6038851/uploads/images/6747iC78F158EC2FEE61E/GlenShepherd_0-1614128202134.png " role = "button " title = "GlenShepherd_0-1614128202134.png " alt = "GlenShepherd_0-1614128202134.png " / > < /span ></ P >< P >& nbsp ;< / P >< P >& nbsp ;< / P >< P >& nbsp ;< / P >< P >& nbsp ;< / P >