developing real-time web mapping applications€¦ · web mapping applications ... senior software...
TRANSCRIPT
Developing Real-Time Web Mapping Applications
Adam Mollenkopf, Solutions Product ManagerMorakot Pilouk, Senior Software Consultant
Hanoch Kalmanovich, Tracking Development Lead
Agenda
• Real-Time Web Mapping Application Patterns
• Implementing an Event Driven Pattern w/ Esri
• Tracking Client API- Concepts- Samples
- Flex- Silverlight- Java
Real-Time Web Mapping Application Patterns
Adam Mollenkopf
Real-Time Web Mapping Application Patterns
Server
ServerPushesto Client
Real-TimeWeb Mapping Application
Event Driven Pattern
Server
ServerPolling
Database
ClientPollingServer
Real-TimeWeb Mapping Application
Query Driven Pattern
Implementing the Event Driven Pattern with Esri
Adam Mollenkopf
Implementing the Event Driven Pattern with Esri
Push
Event Driven Pattern
AnalysisData Mgmt
Tracking Server
Tracking Client API
SilverlightSilverlight .NET.NETFlexFlex JavaJava
Real-TimeWeb Mapping Application
Real-Time Data
ArcGIS Server
Feature ServicesFeature Services
Map ServicesMap Services
Geodatabase
Archive
Base-Maps andHistorical Data
ArcGIS Web API
SilverlightSilverlightFlexFlex
Implementing the Event Driven Pattern with Esri
Geodatabase
AnalysisData Mgmt
Tracking Server
ArcGIS Tracking Analyst
• Tracking Server is a centralized hub for the collection, analysis, dissemination, and archival of real-time data.
Push
PullArchive
Push
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
AnalysisData Mgmt
Tracking Server
Implementing the Event Driven Pattern with Esri
Geodatabase
ArcGIS Tracking Analyst
ApplicationsApplications
• The Tracking Client API enables applications to monitor entities through time, as they move or change.
Push
Push
PullArchive
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
AnalysisData Mgmt
Tracking Server
Implementing the Event Driven Pattern with Esri
Geodatabase
ArcGIS Tracking Analyst
Data LinksData Links
• Data Links acquire real-time messages from tracked entities and transfers them to Tracking Server.
Push
PullArchive
Push
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
ApplicationsApplications
AnalysisData Mgmt
Tracking Server
Implementing the Event Driven Pattern with Esri
Geodatabase
ArcGIS Tracking Analyst
Data LinksData Links
ActionsActions
• Actions apply analysis and operations to incoming messages as they are received by Tracking Server.
Push
PullArchive
Push
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
ApplicationsApplications
Adam Mollenkopf
Tracking Viewer for Flex Demo
Tracking Client API ConceptsAdam Mollenkopf
Tracking Client API Concepts
• The Tracking Client API allows you to enable applications with Real-Time data
• Developer libraries are available for use with Flex, Silverlight, Java, and .NET.
• Tracking Client APIs can be found on Esri Resources under ‘Solutions Products – Tracking Server’.
• http://resources.arcgis.com/
Tracking Client API Concepts
• The starting point for working with the Tracking Client API is the Connector class. Connector provides you with the ability to:
• Connect and Authenticate with a Tracking Server• Get a List of available Tracking Services• Subscribe to a Tracking Service
• The Tracking Client API uses an Asynchronous event model.
• Responses and Events are delivered on a subscription basis, so listeners need to be registered to handle them.
Tracking Client API Concepts – Connector
Tracking Client APITracking Server
connectconnect response
authenticateauthenticate response
get service definitionsservice definition response
subscribe to servicesubscribe response
observation event
Tracking Client API SamplesAdam Mollenkopf
Morakot Pilouk
Adam Mollenkopf
Tracking Client API for Flex
Morakot Pilouk
Tracking Client API for Silverlight
Adam Mollenkopf
Tracking Client API for Java
AnalysisData Mgmt
Tracking Server
Tracking Client API for Java
• Android Transponder
Geodatabase
ArcGIS Tracking Analyst
Data LinkData LinkPush
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
Push
PullArchive
AnalysisData Mgmt
Tracking Server
Tracking Client API for Java
• Android Transponder• Tracking Viewer for Android
Geodatabase
ArcGIS Tracking Analyst
Data LinkData LinkPush
Tracking Client API
SilverlightSilverlight
.NET.NET
FlexFlex
JavaJava
ApplicationsApplications
Push
PullArchive
Other ConsiderationsAdam Mollenkopf
Other Considerations
• Using Historical Data• Time Aware Layers via Feature Services
• Data Augmentation• Joining static data into Tracks – Server vs. Client
• Client Side Rendering• Temporal Renderers, Aging• Strategies for Client side purging
• Data Volume Considerations• Feature Logging• Archival Strategies• Tracking Server history – Track vs. Time
Summary
• The Tracking Client API• enables ArcGIS with Real-Time data
• offers unified functionality across a variety of developer platforms including:
• Flex, Silverlight, .NET, and Java
• works in a variety of environments including:• Desktop, Web, and Mobile
Resources to get started
• Sample Tracking Server with a Tracking Service:• host: sampletrackingserver1.arcgis.com• port: 4503• username/password: “”/””
• Tracking Client API Download: http://resources.arcgis.com/content/tracking- server/10.0/tracking-client-api
• Tracking Code Gallery Samples: http://resources.arcgis.com/gallery/file/tracking-server
• Tracking Server: http://help.arcgis.com/en/trackingserver/10.0/help/