GeoEvent does not identify previous observations from current observation

382
2
Jump to solution
12-19-2022 04:36 AM
AndreasHall
Esri Contributor

Hi, we have been experimenting with a API for real-time positioning of trains called Oxyfi (Oxyfi-Realtidspositionering | Trafiklab). We have it working in our ArcGIS Enterprise 10.9.1 but there is one issue. All train positions fed to the stream service output from the GeoEvent service are interpreted as current observations. It is like every updated position would be a new unique train.

A stream service can be visualized to show previous observations as well as the current. Our service does show previous observations but visualize these as current observations. Somehow, it feels like it cannot identify which observations that origin from the same train.

Below is an example of how it should work using demodata from Esri (https://realtimegis2016.esri.com:6443/arcgis/rest/services/SandyVehicles/StreamServer) and tested in our Enterprise instance. The map shows the current and five previous observations connected by a line.

AndreasHall_0-1671452732518.png

With our stream service, these settings does not have any effect. The map shows multiple observations but they are all symbolized as current observations.

AndreasHall_1-1671452857417.png

The field that identifies unique trains is a string and have values like "9025.trains.se". In GeoEvent Manager we have tagged this field with the TRACK_ID tag.

AndreasHall_2-1671453009015.png

Does anyone know what could be causing this behavior and what we could try to solve it?

0 Kudos
1 Solution

Accepted Solutions
AndreasHall
Esri Contributor

We solved this by adding a new attribute field of type Date and tagging this as TIME_START.

View solution in original post

0 Kudos
2 Replies
AndreasHall
Esri Contributor

We solved this by adding a new attribute field of type Date and tagging this as TIME_START.

0 Kudos
ColinHLang
New Contributor II

I have had some similar issues and I have found that strings can be really bad to use as your track identifier.  Unless you have that field indexed, it will not properly do any join type operation, like identifying and overwriting the previous position for a vehicle, or using the data enrichment from a file or feature class to add additional fields to the output.  If you do add the index on everything that uses that string to join, then it seems to work ok. 

0 Kudos