IDEA
|
@Teresa_Blader Thanks so much for your suggestion! This is something we are continuing to consider for the addition of future real-time and big data tools. Here are the related tools that are already offered in the product: Calculate Density calculate a magnitude-per-unit area from point features that fall within a neighborhood around each cell https://doc.arcgis.com/en/iot/analyze/calculate-density.htm Find Hot Spots identify statistically significant hot spots and cold spots in the spatial pattern of the data using the Getis-Ord Gi* statistic https://doc.arcgis.com/en/iot/analyze/find-hot-spots.htm Generalized Linear Regression Perform Generalized Linear Regression (GLR) to generate predictions or to model a dependent variable in terms of its relationship to a set of explanatory variables. This tool can be used to fit Continuous (Gaussian), Count (Poisson), and Binary (Logistic) model types. https://doc.arcgis.com/en/iot/analyze/generalized-linear-regression.htm Forest-based Classification and Regression Create models and generates predictions using an adaptation of Leo Breiman's random forest algorithm, which is a supervised machine learning method. Predictions can be performed for categorical variables (classification) and continuous variables (regression). Explanatory variables can take the form of fields in the attribute table of the training features. In addition to validation of model performance based on the training data, predictions can be made to features. https://doc.arcgis.com/en/iot/analyze/forest-based-classification-and-regression.htm
... View more
01-04-2023
12:32 PM
|
0
|
0
|
604
|
POST
|
Hi @MattGeorge1 thanks for your reply and the info and screenshots. If your Map Fields is working with the AVL data, there is no need for us to remove or modify that tool. Multiple tools can be configured across multiple pipelines. What I would propose is adding the Filter by Geometry tool to the model, and dragging the output of your Map Fields to the top (target) input of Filter by Geometry. Then, add your Pit Stops/Depots polygon layer as a data source, and connect that to the bottom (join) input of Filter by Geometry. This must be the same spatial reference as data from your feed. If needed, you can use the Project tool on the data coming in from the feed. Then, configure Filter by Geometry with the Disjoint operator, and any outputs connected to the Filter by Geometry tool will only contain features that do not intersect with your polygons.
... View more
12-19-2022
05:14 AM
|
1
|
0
|
668
|
POST
|
@MattGeorge1 Thanks for posting your question to the Velocity community! The key component I took away from your described scenario above is "The layer has 15 polygons which represent Pit Material locations and Road shop facility’s where the plows go to get salt and sand. I want to exclude those locations from my output layers." Pit Material locations and road shop facility polygons sound like relatively static locations to me, that are not added or removed or changed that frequently. Is that correct for your case? If so, this would be best added as a data source rather than a data feed. When configured as such, this polygon data would only be fetched when you restarted the real-time analytic (or when we updated the Velocity version, a few times a year). If the goal is to simply remove any vehicle location points where they intersect with these polygons, I would utilize our Filter by Geometry tool with the Disjoint spatial operator. Disjoint is the inverse of intersects. This tool configuration could be added in any analytic pipeline where you want to keep the points that do not intersect a polygon. Here is an image of this in action. The black dots are the original points simulating AVL. The light blue points are the features that are processed and pass the Filter by Geometry disjoint.
... View more
12-16-2022
05:58 AM
|
1
|
0
|
685
|
POST
|
@JeffSilberberg Thank you for replying with the additional context! The ability to "save" source and output configurations (and possibly even tool configurations) is something that has been and will continue to be considered for a future Velocity enhancement.
... View more
12-12-2022
07:35 AM
|
1
|
0
|
400
|
POST
|
@JeffSilberberg Thanks for posting your question! I would suggest simply deleting the HTTP Output (after noting your relevant configuration details to facilitate future reconfiguration) and replacing it with a different output like a Stream Layer output. Nobody needs to use that stream layer output, but that will then preserve your analytic pipeline that led to the HTTP Output. Let me know if there are further questions related to this
... View more
12-12-2022
07:12 AM
|
1
|
2
|
406
|
POST
|
@BrynR Thanks for reaching out with this question! The short answer is that in a real-time analytic, the sources are only loaded when the real-time analytic is started. To get the latest geofences, you could stop and restart the analytic. Our Velocity operations team stops and restarts real-time analytics at minimum 3x per year with official releases that go out. If this is insufficient for your use case, the feature layer could instead be configured as a feed that polls for example every 30 minutes or once every hour or two to refresh the join features for your analysis. We are also reviewing a path to implement a real-time analytic source "refresh" parameter to trigger a source refresh every x hours for this exact case.
... View more
11-18-2022
06:00 AM
|
0
|
0
|
445
|
POST
|
When a WHERE clause is configured for a feature layer feed or source, Velocity simply passes the specified clause along to the REST API query operation when it repeatedly queries the feature layer at the designated polling interval. If you are not seeing success with this and have confirmed that these are new features being written to the output (rather than older features that were previously written), I would suggest logging a support ticket with Esri Support Services as this would require a call and screenshare to review your configuration. Additionally, I would encourage you to test your WHERE clause at the REST endpoint of the ArcGIS Online hosted feature layer to ensure that only the desired features are returned by your where clause expression directly at that query endpoint. This will help isolate if there is an issue independent of ArcGIS Velocity, or specific to ArcGIS Velocity.
... View more
11-15-2022
09:46 AM
|
1
|
0
|
878
|
POST
|
When configuring the "Where clause" parameter for an ArcGIS Velocity feature layer feed or source, Velocity is sending the exact query to the REST API query operation for the referenced service. You mentioned that you are configuring a Feature layer feed to reference an ArcGIS Online hosted feature service. Therefore I would encourage in such a circumstance testing your expression at the REST endpoint of the ArcGIS Online hosted feature service as Velocity simply hands the expression along to query at the REST call. In testing on my end, I would also expect the % characters to work with the "LIKE" operator rather than "=" operator. I confirmed success in testing with an expression such as incidentnm LIKE 'baltimore%' AND inspector = 'peter'
... View more
11-15-2022
06:56 AM
|
1
|
0
|
951
|
POST
|
Thanks for posting - I am not seeing a screenshot, can you provide a screenshot for context? Is this with a Feature layer feed/source where clause? Are you querying a Velocity layer or an ArcGIS Online or ArcGIS Server service?
... View more
11-15-2022
06:34 AM
|
0
|
2
|
965
|
POST
|
Glad to hear you had success with option 1! Currently we do not have a roadmap for Velocity published but we are happy to respond to product ideas in the Ideas space and questions/requests posted on the Esri Community. Also be sure to check out the "What's new" section of our documentation with each release, this was updated with our latest release last Wednesday 11/9/22: https://doc.arcgis.com/en/iot/reference/whats-new.htm Regarding your question on output to ArcGIS Server feature layers, there is not a mechanism to set a Track ID field therefore the keep latest workflows are limited at the 3.3 release. We are working to enhance this for our 4.1 release to relax our validation restrictions to allow this despite no track ID defined in the ArcGIS Server service schema. Additionally, ArcGIS Server versions 10.3+ should succeed with the Feature layer (existing) output to ArcGIS Server as ArcGIS Velocity is simply sending applyEdits calls over the REST API.
... View more
11-15-2022
04:40 AM
|
1
|
0
|
685
|
POST
|
Happy to clarify a few items: Velocity-backed layers (map, feature, or stream layers) cannot be shared to the public, however they can be shared to the Organization ArcGIS Velocity can write to/create new ArcGIS Online hosted feature layers (uncheck store in spatiotemporal as you had mentioned), which can be shared with the public ArcGIS Velocity can write to existing ArcGIS Online hosted feature layers which can be shared with the public, using the Feature layer (existing) output ArcGIS Velocity can write to existing ArcGIS Server feature services using the Feature layer (existing) output, and of course your ArcGIS Server feature services can be shared to the public Additionally, Feature layer (new) or Feature layer (existing) Velocity outputs to ArcGIS Online hosted feature layers only allow outputs of up to 120 records written per minute. This is an ArcGIS Online limitation.
... View more
11-14-2022
12:54 PM
|
1
|
0
|
332
|
IDEA
|
@AndrewRudin1 Thank you for submitting this idea and the use case/workflow that explains the need! We have entered this as an enhancement request in our internal system and will be reviewing a path to consider implementing this as an enhancement for a future release. This idea will be updated going forward if/when implemented.
... View more
11-14-2022
12:18 PM
|
0
|
0
|
627
|
POST
|
@BrynR Thanks for reaching out to the Velocity community with your question! At the current Velocity version (3.3), the output schema referenced by the Feature layer (existing) output must be identical to the schema going to the output in the Velocity analytic. This includes identified key fields such as "TRACK_ID / START_TIME / END_TIME". However, as you have encountered ArcGIS Online and ArcGIS Server services created by a client other than ArcGIS Velocity do not set a "TRACK_ID" field in the Time Info object. Short term resolutions: Option 1: Use ArcGIS Velocity to create the ArcGIS Online hosted feature layer, and the key fields will be maintained and generated on the ArcGIS Online layer. This can be achieved with the Feature Layer (new) output type from real-time or big data analytics Option 2: If you are not using the "keep latest features" output setting for the feature layer, simply add a Map Fields tool before the Feature layer (existing) output and remove the identified key fields. Long term resolutions: We are investigating enhancing ArcGIS Velocity to relax schema match requirements for "TRACK_ID / START_TIME / END_TIME" provided the output schema is otherwise identical, which will support add new or keep latest feature output configurations despite ArcGIS Online and ArcGIS Server not leveraging the Track ID field identification the same way as Velocity. We are targeting this for the 4.1 release.
... View more
11-14-2022
04:55 AM
|
0
|
5
|
698
|
POST
|
@brudo Thanks much for your reply and these ideas, I was just discussing with a coworker the use of a for loop workflow to generate the path array and what you proposed should work as expected. @SimonGIS As an FYI, these are alternate solutions that would better scale to variable length polylines when compared to the solution I provided that only accommodated a two-point polyline. Coming back to edit, the following Arcade structure worked in test: var path = [];
var i = 0;
var lineArray = FromJSON($feature.line)
for (var linePoint in lineArray) {
var xVal = lineArray[i]["x"];
var yVal = lineArray[i]["y"];
path[i] = [xVal, yVal]
i++
}
return Polyline({
"hasM": false,
"hasZ": false,
"paths": [path],
"spatialReference": {"wkid": 4326}
})
... View more
11-01-2022
10:48 AM
|
0
|
0
|
1255
|
POST
|
@SimonGIS Thanks for reaching out with the question! I have an answer/solution below, but it depends on a few elements. Overall, the answer is that Velocity "single geometry field" supports EsriJSON, GeoJSON, WKT, and Coordinates (point). This Waze format is not any of those, therefore you would need to use an Arcade expression to build the geometry. https://doc.arcgis.com/en/iot/ingest/define-location-properties.htm Additional considerations: This solution only takes the first two points from your "line" array object in your JSON to build a line. If there were 3+ points, the extras past the first two points would be ignored This solution expects two valid points from the "line" array object in your JSON. If there was a null, or only a first point, this could fail to calculate the geometry for the given feature This could be enhanced using the Arcade "IIf" function and other logic to handle such a case of nulls, or not two points being present, or of more than 2 points var lineArray = FromJSON($feature.line);
var x1 = lineArray[0]["x"];
var y1 = lineArray[0]["y"];
var x2 = lineArray[1]["x"];
var y2 = lineArray[1]["y"];
return Polyline({
"hasM": false,
"hasZ": false,
"paths": [
[
[x1,y1],
[x2,y2]
]
],
"spatialReference": {"wkid": 4326}
}) As you can see above, we use the "FromJSON" function to convert the JSON string to a proper object, we parse the desired elements out, and then we send that into a "Polyline" function using the EsriJSON format. This is configured in the Calculate Fields or Map Fields tool for the geometry configuration.
... View more
10-31-2022
01:08 PM
|
2
|
0
|
1270
|
Title | Kudos | Posted |
---|---|---|
1 | 08-20-2024 06:07 AM | |
1 | 07-31-2024 11:51 AM | |
1 | 07-31-2024 11:58 AM | |
1 | 07-08-2024 05:36 AM | |
1 | 03-18-2024 04:10 AM |
Online Status |
Offline
|
Date Last Visited |
a week ago
|