Skip navigation
All Places > Departments of Transportation > Blog

As part of the Waze Connected Citizen Program (CCP), partners gain access to real-time traffic congestions and incidents reported through the Waze app (in XML and JSON formats). There are already techniques and documentation on how to consume this data into an ArcGIS platform using GeoEvent.

 

In this blog, I will describe a technique for consuming this data into ArcGIS Online through Python and Windows Task Scheduler. The initial Python script was developed by Joel Meier which I modified to fit the workflow proposed. Also a special mention goes out to my colleagues Edmund Hall and Louis Tian who helped me debug. And last but not least I want to thank Andrew Stauffer for helping us parter and get the most out of Waze CCP.

 

Creating ArcGIS Online feature layers to store Traffic information

Sign into ArcGIS Online > My Content page, click Create > Feature Layer, choose From URL and enter the exact URL of the point feature layer template. Afterwards, repeat the same process for the line feature layer. This will create new empty feature layers of the schema required (field names, types and spatial reference).

Point Feature Layer Template

https://services1.arcgis.com/E5n4f1VY84i0xSjy/arcgis/rest/services/WazeTrafficAlertsEmpty/FeatureServer

Line Feature Layer Template

https://services1.arcgis.com/E5n4f1VY84i0xSjy/arcgis/rest/services/WazeTrafficJamsEmpty/FeatureServer

Alternatively, visit https://developers.arcgis.com/layers/new to create Point and Line Geometry feature layers (WKID = 4326) with the following fields.

Spatial Reference

Point - Feature Layer

  • OBJECTID (type: esriFieldTypeOID, alias: OBJECTID, SQL Type: sqlTypeOther, length: 0, nullable: false, editable: false)*
  • DateReported (type: esriFieldTypeDate, alias: DateReported, SQL Type: sqlTypeTimestamp2, length: 0, nullable: true, editable: true)
  • Title (type: esriFieldTypeString, alias: Title, SQL Type: sqlTypeOther, length: 25, nullable: true, editable: true)
  • ReportType (type: esriFieldTypeString, alias: ReportType, SQL Type: sqlTypeOther, length: 25, nullable: true, editable: true)
  • ReportSubtype (type: esriFieldTypeString, alias: ReportSubtype, SQL Type: sqlTypeOther, length: 50, nullable: true, editable: true)
  • Street (type: esriFieldTypeString, alias: Street, SQL Type: sqlTypeOther, length: 256, nullable: true, editable: true)
  • City (type: esriFieldTypeString, alias: City, SQL Type: sqlTypeOther, length: 50, nullable: true, editable: true)
  • Description (type: esriFieldTypeString, alias: Description, SQL Type: sqlTypeOther, length: 1024, nullable: true, editable: true)
  • Reliability (type: esriFieldTypeInteger, alias: Reliability, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • UUID (type: esriFieldTypeString, alias: UUID, SQL Type: sqlTypeOther, length: 100, nullable: true, editable: true)
  • CreationDate (type: esriFieldTypeDate, alias: CreationDate, SQL Type: sqlTypeOther, length: 8, nullable: true, editable: false)*
  • Creator (type: esriFieldTypeString, alias: Creator, SQL Type: sqlTypeOther, length: 128, nullable: true, editable: false)*
  • EditDate (type: esriFieldTypeDate, alias: EditDate, SQL Type: sqlTypeOther, length: 8, nullable: true, editable: false)*
  • Editor (type: esriFieldTypeString, alias: Editor, SQL Type: sqlTypeOther, length: 128, nullable: true, editable: false)*

*pre-populated fields

Line - Feature Layer

  • OBJECTID (type: esriFieldTypeOID, alias: OBJECTID, SQL Type: sqlTypeOther, length: 0, nullable: false, editable: false)*
  • DateReported (type: esriFieldTypeDate, alias: DateReported, SQL Type: sqlTypeTimestamp2, length: 0, nullable: true, editable: true)
  • Title (type: esriFieldTypeString, alias: Title, SQL Type: sqlTypeOther, length: 25, nullable: true, editable: true)
  • ReportLevel (type: esriFieldTypeInteger, alias: ReportLevel, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • ReportType (type: esriFieldTypeString, alias: ReportType, SQL Type: sqlTypeOther, length: 25, nullable: true, editable: true)
  • Street (type: esriFieldTypeString, alias: Street, SQL Type: sqlTypeOther, length: 256, nullable: true, editable: true)
  • City (type: esriFieldTypeString, alias: City, SQL Type: sqlTypeOther, length: 50, nullable: true, editable: true)
  • Speed (type: esriFieldTypeDouble, alias: Speed, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • Delay (type: esriFieldTypeInteger, alias: Delay, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • Length (type: esriFieldTypeInteger, alias: Length, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • StartNode (type: esriFieldTypeString, alias: StartNode, SQL Type: sqlTypeOther, length: 256, nullable: true, editable: true)
  • EndNode (type: esriFieldTypeString, alias: EndNode, SQL Type: sqlTypeOther, length: 256, nullable: true, editable: true)
  • Description (type: esriFieldTypeString, alias: Description, SQL Type: sqlTypeOther, length: 1024, nullable: true, editable: true)
  • UUID (type: esriFieldTypeDouble, alias: UUID, SQL Type: sqlTypeOther, nullable: true, editable: true)
  • Shape__Length (type: esriFieldTypeDouble, alias: Shape__Length, SQL Type: sqlTypeDouble, nullable: true, editable: false)*
  • CreationDate (type: esriFieldTypeDate, alias: CreationDate, SQL Type: sqlTypeOther, length: 8, nullable: true, editable: false)*
  • Creator (type: esriFieldTypeString, alias: Creator, SQL Type: sqlTypeOther, length: 128, nullable: true, editable: false)*
  • EditDate (type: esriFieldTypeDate, alias: EditDate, SQL Type: sqlTypeOther, length: 8, nullable: true, editable: false)*
  • Editor (type: esriFieldTypeString, alias: Editor, SQL Type: sqlTypeOther, length: 128, nullable: true, editable: false)*

*pre-populated fields

Please make sure to use the exact field names and types, (alternatively you'd have to adjust the script).

Once feature layers are configured, please enable editing and set them to PRIVATE.

Please refer to "Waze Feed Technical Specifications [Get Waze Data]" from the Partner's Portal for exact definitions on field descriptions.

 

Configuring the Python script

Replace the comment sections (lines 6, 9 and 10) with your own XML feed, and URLs for your point and line feature layers.

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('##URL for XML waze connection##'))
root = tree.getroot()
channel_head = []
fcp = "##URL to Point - Feature Layer##"
fcl = "##URL to Line - Feature Layer##"
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 not None:
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')

 

Scheduling the script

Once the Python script is up and running use Windows Task Scheduler to run the script at specific time intervals which will append new features to the ArcGIS Online feature layers (this technique will keep a history of all traffic information from when you first run the script).

Screenshot of traffic jams feature layer

 

Displaying Live Traffic Information

To display live traffic information - create feature layer views and define its features to only show features created in the last x number of minutes - x being how frequently you've setup the Python script to run.

I've setup the Python script to run every 4 minutes - subsequently the feature layer views to display features created in the last 4 minutes.

Define features to display live traffic information

Once setup, you can share these views publicly and display it on public facing applications.

Below are links to our feature layer views, and a map displaying these features alongside road/footpath closures.

*click here to find out more about our road/footpath work application process

Canberra Live Traffic

 

Email specific people when an Accident is reported

I used the following method, alternatively you could use similar Python scripts or create your own Python script to trigger an email when new features are added to a feature layer.

Run the email script of your choice on a new feature layer view (geometry type = point) that only displays Accidents (ReportType = "Accident"), where DateReported was in the last x number of minutes.

Define features to only display accidents for a specific time interval

And finally, setup windows task scheduler to capture any new features (accidents) that occur in the last x number of minutes.

 

I hope you can leverage these workflows to fit your own business needs. And please feel free to share your thoughts, comments or questions in the comments section below.


Cheers! - Gee Fernando

Esri is very close to the initial release of Collector for ArcGIS (Aurora) on iOS, and will be hosting a holistic testing event on October 2-3, 2018.  This is a great time to get involved if you are interested in exploring the new capabilities that Collector offers and want to test your existing data collection workflows.

 

Note:  This is a remote event and will be limited to iOS onlyFor those interested in participating, please fill out the below survey to ensure broad coverage of customers and industries:

 

https://arcg.is/1Cn01r

 

During the event, participants will have the opportunity to test their workflows and provide feedback on new capabilities, including:

 

  • Taking and working with maps offline
  • Creating and working with pre-planned offline areas
  • Improved sync workflows, including auto-sync
  • Collecting data with high-accuracy GNSS receivers (including Trimble R1/R2)
  • Copying existing features from other layers
  • All the capabilities already available in our beta release

 

Thank you!

A big thank you to our presenters from last week for ESRI Mobile Data Collection User Group - August 2018 Webinar. Thank you also to Esri for hosting and managing the recording which can be found here: http://esridotpublic.s3.amazonaws.com/Videos/MobileDataCollectionUserGroup/2018_8_24/MobileDataCollectionUGRecording_8-24-18.html

 

Ian Kidner / Tony Clark – Talking about Ohio DOT Collector Data Loss Issues Summer 2018 ian.kidner@dot.ohio.gov and Anthony.M.Clark@dot.ohio.gov https://community.esri.com/docs/DOC-12315-ohio-dot-collector-data-loss-2018

 

James Tedrick (Esri) JTedrick@esri.com– Survey123 Product Manager with an updatehttps://community.esri.com/docs/DOC-12316-esri-survey123-update

 

Tom Brenneman (ESRI) tbrenneman@esri.com– QuickCapture Introduction

https://community.esri.com/docs/DOC-12317-quickcapture-introduction

 

Our next webinar will be in mid-Nov and we are still looking for one or two more speakers.  If you are interested please let us know.

 

Thank you.

Shawn Blaesing-Thompson (Iowa DOT) shawn.blaesing-thompson@iowadot.us

Sean Dolan (Esri) Sean_Dolan@esri.com

Tom Brennaman (Esri) tbrenneman@esri.com

Thank you to all those who attended Esri’s “Conducting Safety Analysis Using GIS” webinar on Friday, August 24th.

 

For your reference, the presentation slides from the webinar can be accessed/viewed here:  https://esri.box.com/shared/static/ywefhh3de6wnv12okveb7b26iohs9wzn.pdf.

 

A full video recording of the webinar can be accessed/viewed here:  https://esri.box.com/shared/static/nroul1mf0n99b1xhaqkd48kl3xi9n24x.mp4.

 

Thank you again for your attendance and participation in this webinar, and please let me know if you have any questions or issues accessing the links above.

 

Best regards,

Sean Dolan

(sean_dolan@esri.com)

I conjunction with today's Winter Operations Webinar, I went ahead and pre-recorded all of the demos so you can watch the demos we didn't have time to show today or rewatch videos again to pick up on items you may have missed.

 

Plow Activity

 

Post Storm Analytics

 

Damage Claims

 

Granular Material Inventory

 

Operation Record

Winter is coming...so join Esri's Transportation Team on August 21st to learn how you can use GIS tools to support your real-time snow management and road maintenance operations.  Register today at: https://lnkd.in/e9Vdu33

American Association of State Highway and Transportation Officials (AASHTO) Geospatial Online Transportation User's Group (GOTUG) Webinar

 

Wednesday, June 6, 2018

1:00-3:00pm EST

 

"Prioritizing Barrier Replacement with GIS" (Kaitlin Marousis; UDOT)
The Utah Department of Transportation’s barrier and guardrail assets directly support the Department’s strategic goal of Zero Crashes, Injuries, and Fatalities. In an effort to more systematically apply limited funding to known statewide needs, including physically aging assets and hazardous or outdated designs, UDOT’s Traffic and Safety Division has leveraged GIS analysis and tools to identify and prioritize barrier replacement or upgrades based on asset design and risk exposure. This has included a suite of tools, such as geospatial analysis to assign AADT and speed limits to each barrier, weighted prioritization scoring by design and exposure, a web app to visually inspect deficient barriers and avoid field visits, and a Story Map to communicate findings to Department leadership. Using GIS tools and analysis, existing asset data was leveraged to help inform decision-making and prioritize fiscally responsible maintenance of physical assets. 

"Environmental Impact Assessment/Streamlining with GIS" (Ryan Arthur; NCDOT)
The North Carolina Department of Transportation (NCDOT) is currently modifying its approach to the project delivery process in order to reduce the time it takes for a project to move from concept to final delivery. The agency is looking to utilize GIS data analysis, application development, programmatic agreements and workflow modifications to implement automated processes to supplant many of the manual processes currently in place. This presentation will discuss in detail the overall project goals, current state of the project, obstacles, success stories and deliverables. This project is a major effort within the agency and brings together a variety of stakeholders, proving to be a model for how a large enterprise can look critically at itself and transform into a 21st century operation.

 

To register, access this link:  https://attendee.gotowebinar.com/register/1251677826459567361

Here is the summary for the May (05/17/18) Field Data Collection User group.  The next webinar will be in August so if you are interesting in presenting or would like to be added to the group let one of us noted at the bottom know.  

 

Link to the recording:

Here is the direct download link to the recording of today’s UG webinar (tell everyone to fast forward to the 1:20 mark): https://esri.box.com/shared/static/mh6hda1xuy2lm7neph9fstaa288811ni.mp4

 

 

1.       Darin Welch and HNTB team (along with INDOT Matt Cook) - Presenting on solution built for INDOT railroad crossings that leverages Collector for ArcGIS

https://community.esri.com/docs/DOC-11718-field-data-collection-webinar-on-051718-modernization-of-the-fra-grade-crossing-inventory

 

2.       Gary Bowles (Seneca Resources) - Presenting on use of Survey123 for ArcGIS to collect data for natural gas well pad inspections and environmental monitoring

https://community.esri.com/docs/DOC-11717-field-data-collection-webinar-051718-modernizing-form-based-field-workflows-using-survey123-for-arcgis

 

3.        Jeff Shaner (Esri) -  Providing product updates on Collector for ArcGIS (and possibly Workforce for ArcGIS)

https://community.esri.com/docs/DOC-11719-field-data-collection-webinar-on-051718-esri-field-collection-updates

 

Thank you!

Shawn Blaesing-Thompson shawn.blaesing-thompson@iowadot.us O 515-239-1805

Sean Dolan Sean_Dolan@esri.com C 571 485 6159

Tom Brenneman tbrenneman@esri.com C 317-361-5064

 

Govloop/Esri Webinar:  "Rebuild, Rethink, Refocus – How GIS Can Strengthen Our Nation’s Infrastructure"

Thursday, May 10, 2018

2:00pm EST

 

The nation’s infrastructure is at a critical crossroads.  Roads, sewers, bridges, and transportation networks are in major need of upgrades, and simply put, the sustainability of our infrastructure is in question.  But where do state and local governments begin when it comes to prioritizing projects or choosing to fix vs. rebuild?  Responding to the infrastructure crisis requires a different approach.  By using geodesign and geographic information systems (GIS) to transform the way governments analyze infrastructure challenges, they can find cost-effective and data-driven solutions.

 

Join the conversation on Thursday, May 10th at 2:00pm EST to learn how GIS can transform the way governments implement infrastructure improvements.

 

Specifically, you’ll learn how to:

 

  • Use GIS to rebuild with priority to maximize your investment.
  • Rethink current infrastructure to meet socioeconomic needs and changing lifestyles.
  • Refocus your ideas around an Internet of Things (IoT)-driven, future-ready agency.

 

Additional details and registration information can be found here:  https://www.govloop.com/training/rebuild-rethink-reformulate-gis-can-strengthen-nations-infrastructure/.

Here are a number of examples of agencies incorporating Waze data into their real time traffic sites:

 

Sandy Spring Georgia

Sandy springs is notifying people in their traffic management center when a crash happens in the visible range of a traffic accident. They are also archiving the video for later use. This is a map that shows their camera locations and their Waze data.

http://gis.sandyspringsga.gov/portal/home/webmap/viewer.html?webmap=c6b9e763fdfb44e9aabf678f711ba161

 

Johns Creek Georgia

Johns Creek is sending emails via GeoEvent when a disabled motorist is reported. Upon receiving the email, the team will send a vehicle out to help the motorist. It’s like a city sponsored AAA if you will.

https://gis.johnscreekga.gov/webapps/wazeData.html 

Power point of their process: https://esri.box.com/s/kndqzg2dfclj8j732mtw9pjx16dv9zco

 

The state of Georgia

This includes a layer for flight delays and the Esri Traffic Service

https://gema-soc.maps.arcgis.com/apps/opsdashboard/index.html#/018a281e10414def8b00d46702ef45e9 

 

Douglas County, Colorado

https://dougco.maps.arcgis.com/apps/opsdashboard/index.html#/ff6666bba97944fea3600c964c41a6f7

They also have a nice open data site:

https://gis-dougco.opendata.arcgis.com/

 

The latest version of our INDOT demo dashboard is available here: http://esridot.maps.arcgis.com/apps/opsdashboard/index.html#/330148753d8a42738a9c19e00c9691bd

 

Thanks to Tom Brenneman for pulling these together.

A big thank you to our presenters from last week for the Collector / Survey123 User Group Webinar.

Thank you also to Esri for hosting and managing the recording which can be found here:

https://esri.box.com/shared/static/pih1v2g6b19gr83oq6hkscb52i66jjbw.mp4

 

Kara Harmet/Shawn Blaesing (IADOT) – Talking about a Survey123 app being used by construction staff for taking field samples during construction.

Kara.Harmet@iowadot.us and Shawn.Blaesing-Thompson@iowadot.us

https://community.esri.com/docs/DOC-11413-survey-123-presentation-iowa-dot-feb-2018

 

Roberto Avila (CDOT) and James Pardue (IKEGPS) – Talking about supporting Survey123/Spike integration efforts at Colorado DOT

roberto.avila@state.co.us and  james.pardue@ikegps.com

https://community.esri.com/docs/DOC-11414-cdot-collector-survey123-ugmeeting-feb152018

 

James Tedrick (Esri) JTedrick@esri.com– Survey123 Product Manager with an update

https://community.esri.com/docs/DOC-11415-survey123-update-dotug

 

Our next webinar will be in mid-May and we are still looking for one or two more speakers.  If you are interested please let us know.

Thank you.

Shawn Blaesing-Thompson (Iowa DOT)

Sean Dolan (Esri) Sean_Dolan@esri.com

Tom Brennaman (Esri) tbrenneman@esri.com

"The quick and easy data access that Survey123 provides helps Iowa DOT determine the most cost-effective way to repair the pavement and make roads safer in the process."

 

Iowa DOT's Office of Construction and Materials is doing some great work with Esri's "Survey123 for ArcGIS" software.  Read more HERE.

I'm pretty excited to show the integration of Survey123 with Spike by Ike GPS.  This paring enables you to turn your iPhone or Android phone into a laser range finder with Spike.  Integration with Survey123 allows me to capture, GPS coordinates, distance to target, area, length and a few other measurements.  It enables me to capture data 6' up to 324' away which means I can stand at one end of a football field and capture GPS coordinates of an asset at the other end.  I think, sign inventory, culverts, drains, ADA curb ramps, crash cushions, concrete walls, control fence, and bridges are ideal candidates for an inventory or inspection with Survey123.  While concrete walls and control fencing are usually modeled as linear features, Survey123 could capture related tables with locations where fences or walls need to be repaired.   While this is in Beta you can sign up for the as a beta tester and start working with it today which I'm sure Ismael Chivite and his team would love to get as much feedback as they can.

 

My video editing prowess was certainly challenged today, as a result I'm uploading the videos as 4 separate videos.  I was also able to make use of the iOS screen recording capability which was cool.   If you have questions please don't hesitate to reach out... thanks.

 

Here is a link to the Survey123 survey I used for this demo.

 

Intro Video

Survey123 Connect - Related Tables and Spike Integration

Field Collection with iOS, Survey123 and Spike

Send Changes and view them in the Operations Dashboard

Good morning,  here is the last video in the series on ditributed collaboration and 511.  This workflow is still a prototype and has some scalability testing to go through after the new year.  I want to at least make you all aware of what we are working on and show you how 511 workflows could be enhanced to take data directly from the enterprise and pushed into the Transportation 511 solution or even the Waze Connected Citizens Program.  Enjoy

 

Syncronize Collaboration Script