|
POST
|
Phil, That is what I was thinking my solution was going to be as well. Thanks for the input! -Eric Shreve
... View more
04-18-2019
10:22 AM
|
0
|
0
|
647
|
|
POST
|
Does anyone know if there is a workflow that allows for exporting a spreadsheet with multiple sheets/tabs if there are multiple pages created in the Survey? My example is that I have a five-page Survey that I need segmented during export into various excel sheets/tabs rather than having a spreadsheet with 50+ fields for one sheet/tab.
... View more
04-15-2019
10:18 PM
|
0
|
2
|
759
|
|
POST
|
John, When you deploy the solution through ArcGIS Pro to your organizational account it creates the web map, operations dashboard app configuration and two web layers called "Fire Incidents" & "Stations" = which represents fire service areas. You will have to add & edit the data through ArcGIS Pro, Collector, or the Web Map if you have the layers editable. If you have a CAD system I would look at seeing if you can integrate that feed into your fire incident dashboard so the data is dynamic and updates automatically. Hope that answers your question. -Eric Shreve
... View more
03-26-2019
12:01 PM
|
2
|
0
|
1284
|
|
POST
|
James, I agree this functionality would be great for Survey123 for our damage assessment workflow. I currently have one survey that combines our training & real-world survey into one. I would like to have the ability to notify the user with a disclaimer that they are not in a training survey when they begin to specify the event type. Thanks, Eric
... View more
01-23-2019
02:49 PM
|
0
|
1
|
3001
|
|
POST
|
Hello Jay, You can look at this workflow for updating & overwriting a hosted feature service through Python: overwriting_feature_layers | ArcGIS for Developers I have this process set up on my web server through the Windows Task Scheduler for processing GeoJSON based weather data into a hosted feature service. Overall a pretty simple workflow if GeoEvent isn't an option for your organization. Thanks, Eric Shreve
... View more
01-22-2019
07:39 PM
|
0
|
0
|
4164
|
|
POST
|
Phil, Thanks for the update. This would be a helpful feature for me & my end-users. Look forward to seeing the enhancement. Thanks, Eric
... View more
01-14-2019
09:01 AM
|
1
|
0
|
1787
|
|
POST
|
Is there a way in the Survey123 web browser to specify what individual fields you would like to export to excel? An example that I am encountering is that I have two surveys built within one survey by using the select_one option that will filter questions for the end user. Once a survey assignment/project has been completed the user will export the data to excel but more than half of the fields are not necessary for the end user. This has created a manual process for the user to delete fields that are not necessary. If this option was available I know our organization would benefit from it.
... View more
01-11-2019
02:37 PM
|
0
|
5
|
2035
|
|
BLOG
|
Gee, That was the trick! I appreciate the quick response to fix the code. This is a tremendous script for users trying to get Waze data that do not have access to GeoEvent Server. Thanks Gee for making this available to the community! -Eric
... View more
11-27-2018
06:47 AM
|
1
|
0
|
15962
|
|
BLOG
|
Hello Gee, This is what my option looks like in Get Waze Data Portal. Do you think the "na-georss" vs "world-georss" could be impacting the way that the python script processes the XML Data? Thank you. This is a tremendous script if I am able to get it working.
... View more
11-26-2018
02:19 PM
|
0
|
0
|
15962
|
|
BLOG
|
Gee, Thanks for the quick response. I formatted the code the way that you suggested: https://world-georss.waze.com/rtserver/web/TGeoRSS?tk=?&ccp_partner_name=My_Agency_Name&polygon=-114.047000,37.020000;-109.037000,36.994000;-109.026000,31.307000;-111.092000,31.326000;-114.794000,32.464000;-114.498000,34.126000;-114.596000,34.841000;-114.673000,36.076000;-114.047000,37.020000;-114.047000,37.020000&format=XML&types=traffic,alerts,irregularities And I am getting an HTTP Status 503 - invalid token when I attempt to run the code in Python. When I add ccp_partner function similar to how the original URL is formatted the code works but I get the "Fail Stage 0", as well as "Fail Stage 3". I also reproduced the same workflow that you mentioned when creating the Point & Line Feature Services. I am not sure what I am missing.
... View more
11-26-2018
12:55 PM
|
0
|
0
|
15962
|
|
BLOG
|
Nice article. I appreciate the time & effort that you put into this to make it work, as well as the script shareable. I just configured your code and attempted to run it and I am not getting past the 'Fail Stage 0' print function. Any clue on what I am missing? I have attached my code as well to cover up any loose ends. import xml.etree.ElementTree as ET
import urllib.request
import arcpy
from datetime import datetime
namespaces = {'georss' : 'http://www.georss.org/georss', 'linqmap':'http://www.linqmap.com' }
tree = ET.ElementTree(file=urllib.request.urlopen('https://na-georss.waze.com/rtserver/web/TGeoRSS?tk=ccp_partner&ccp_partner_name'))
root = tree.getroot()
channel_head = []
fcp = "https://services6.arcgis.com/l7uujk4hHifqabRB/arcgis/rest/services/Waze_Data_Arizona/FeatureServer"
fcl = "https://services6.arcgis.com/l7uujk4hHifqabRB/arcgis/rest/services/Waze_Data_Arizona_Line/FeatureServer/"
for member in root.findall('channel/item'):
channel = []
Title = member.find('title').text.upper()
try:
point = member.find('georss:point', namespaces)
line = member.find('georss:line', namespaces)
except:
pass
print('Fail Stage 0')
if point != None:
try:
Date = member.find('pubDate').text
DateReported = datetime.strptime(Date, '%a %b %d %H:%M:%S %z %Y')
if len(member.findall('linqmap:city', namespaces)) > 0:
City = member.find('linqmap:city', namespaces).text
else:City = ''
if len(member.findall('linqmap:street', namespaces)) > 0:
Street = member.find('linqmap:street', namespaces).text
else:Street = ''
if len(member.findall('linqmap:subtype', namespaces)) > 0 and member.find('linqmap:subtype', namespaces).text is str:
Subtype = member.find('linqmap:subtype', namespaces).text.replace('_', ' ').capitalize()
else:Subtype = ''
UUID = member.find('linqmap:uuid', namespaces).text
Reliability = member.find('linqmap:reliability', namespaces).text
if len(member.findall('linqmap:reportDescription', namespaces)) > 0:
Description = member.find('linqmap:reportDescription', namespaces).text
else:Description = ''
Type = member.find('linqmap:type', namespaces).text.replace('_', ' ').capitalize()
point = member.find('georss:point', namespaces).text.replace(' -',',-').split(' ')
row = Subtype, Type, Title, DateReported, City, Street, UUID, Reliability, Description, float(point[1]),float(point[0])
cursor = arcpy.da.InsertCursor(fcp, ["ReportSubtype","ReportType","Title","DateReported","City","Street","UUID","Reliability","Description","SHAPE@X","SHAPE@Y"])
cursor.insertRow(row)
del cursor
print('stage 1')
except:
pass
print('fail Stage 1')
elif line != None:
if Title != 'IRREGULARITY':
try:
Date = member.find('pubDate').text
DateReported = datetime.strptime(Date, '%a %b %d %H:%M:%S %z %Y')
if len(member.findall('linqmap:city', namespaces)) > 0:
City = member.find('linqmap:city', namespaces).text
else:
City = ''
if len(member.findall('linqmap:startNode', namespaces)) > 0:
StartNode = member.find('linqmap:startNode', namespaces).text
else:
StartNode = ''
if len(member.findall('linqmap:endNode', namespaces)) > 0:
EndNode = member.find('linqmap:endNode', namespaces).text
else:
EndNode = ''
if len(member.findall('linqmap:reportDescription', namespaces)) > 0:
Description = member.find('linqmap:reportDescription', namespaces).text
else:
Description = ''
if len(member.findall('linqmap:street', namespaces)) > 0:
Street = member.find('linqmap:street', namespaces).text
else:
Street = ''
UUID = member.find('linqmap:uuid', namespaces).text
Type = member.find('linqmap:type', namespaces).text.replace('_', ' ').capitalize()
Length = member.find('linqmap:length', namespaces).text
Level = member.find('linqmap:level', namespaces).text
line = member.find('georss:line', namespaces).text.replace('\n', '').replace(' ', '],[').replace('],[-',', -').split(', ')
Speed = member.find('linqmap:speed', namespaces).text
Delay = member.find('linqmap:delay', namespaces).text
cur = arcpy.da.InsertCursor(fcl, ["Speed","Delay","Title","ReportType","DateReported","City","Street","Length","ReportLevel","UUID","StartNode","EndNode","Description","SHAPE@"])
array = arcpy.Array()
for coords in line:
xy = coords.split('],[')
array.add(arcpy.Point(xy[1], xy[0]))
cur.insertRow([Speed,Delay,Title,Type,DateReported,City,Street,Length,Level,UUID,StartNode,EndNode,Description,arcpy.Polyline(array)])
del cur
print('stage 2')
except:
pass
print('fail Stage 2')
else:
try:
Date = member.find('updateDate').text
DateReported = datetime.strptime(Date, '%a %b %d %H:%M:%S %z %Y')
if len(member.findall('linqmap:city', namespaces)) > 0:
City = member.find('linqmap:city', namespaces).text
else:
City = ''
if len(member.findall('linqmap:startNode', namespaces)) > 0:
StartNode = member.find('linqmap:startNode', namespaces).text
else:
StartNode = ''
if len(member.findall('linqmap:endNode', namespaces)) > 0:
EndNode = member.find('linqmap:endNode', namespaces).text
else:
EndNode = ''
if len(member.findall('linqmap:reportDescription', namespaces)) > 0:
Description = member.find('linqmap:reportDescription', namespaces).text
else:
Description = ''
if len(member.findall('linqmap:street', namespaces)) > 0:
Street = member.find('linqmap:street', namespaces).text
else:
Street = ''
UUID = member.find('linqmap:id', namespaces).text
Type = member.find('linqmap:type', namespaces).text.replace('_', ' ').capitalize()
Length = member.find('linqmap:length', namespaces).text
Level = member.find('linqmap:trend', namespaces).text
line = member.find('georss:line', namespaces).text.replace('\n', '').replace(' ', '],[').replace('],[-',', -').split(', ')
Speed = member.find('linqmap:speed', namespaces).text
Delay = member.find('linqmap:delaySeconds', namespaces).text
cur = arcpy.da.InsertCursor(fcl, ["Speed","Delay","Title","ReportType","DateReported","City","Street","Length","ReportLevel","UUID","StartNode","EndNode","Description","SHAPE@"])
array = arcpy.Array()
for coords in line:
xy = coords.split('],[')
array.add(arcpy.Point(xy[1], xy[0]))
cur.insertRow([Speed,Delay,Title,Type,DateReported,City,Street,Length,Level,UUID,StartNode,EndNode,Description,arcpy.Polyline(array)])
del cur
print('stage 3')
except:
pass
print('fail Stage 3')
else:
print('Error')
... View more
11-26-2018
07:33 AM
|
0
|
0
|
15962
|
|
POST
|
You should be able to configure it through ArcGIS Server/Portal given the fact that it is already a rest service. All you would need to do is change the "Connect to GIS URL" to your Portal URL. Let me know if that helps.
... View more
11-20-2018
12:15 PM
|
0
|
0
|
1862
|
|
POST
|
I want to know if there is a way to combine multiple Survey123 Geo-Locations into one point? The damage assessment group with my organization would like to see something that can replicate this within Survey123. I am aware of the recently released FEMA PDA template that was released but unfortunately my group is hard-nosed in using this template. I have attached an example below of what I want to know if anyone has a solution for. The Site Numbers represent the various damage assessment GPS Locations.
... View more
11-20-2018
08:52 AM
|
0
|
1
|
1053
|
|
POST
|
Joe, if you try changing the symbology of your raster to bilinear interpolation that should fix it. Improving the display of raster data—Help | ArcGIS for Desktop Change the appearance of imagery—ArcGIS Pro | ArcGIS Desktop Let me know if you have any questions Thanks, Eric Shreve
... View more
11-16-2018
11:54 AM
|
1
|
0
|
1149
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 07-19-2019 08:49 AM | |
| 1 | 05-31-2018 01:58 PM | |
| 1 | 02-11-2018 02:15 PM | |
| 1 | 02-12-2018 06:29 AM | |
| 1 | 05-01-2020 09:02 AM |
| Online Status |
Offline
|
| Date Last Visited |
11-11-2020
02:24 AM
|