aniessen-esristaff

GeoDev Webinar Series: Extending Survey123 Field App Using AppStudio for ArcGIS

Blog Post created by aniessen-esristaff Employee on Apr 8, 2019

In March, Chris LeSueur, Erwin Soekianto, and James Tedrick presented the GeoDev Webinar, "Extending Survey123 Field App Using AppStudio for ArcGIS". Coming fresh out of DevSummit, they had a lot of new information to share and thought it would be great to do so in a webinar. 

 

There were a lot of great questions to come out of the webinar, which are shared below. You can also find a link to the recording of the webinar, along with a slide deck of their presentation after the Q&A section.

 

Q&A

Q: When using Survey123, will we always be using QML?

A: If you are going to customize the code of the Survey123 app, then you will be writing in QML & JavaScript.

 

Q: A complaint I have had for the past two years is that the buttons when you close a survey are so small. I am usually in the field with sun in my eyes, and with and huge fingers, it is difficult to choose one option to save/discard/close. Is there anything that can be done about this?

A: Thank you for the feedback. This is something that could be customized using AppStudio.

 

Q: Does it need to be driven by ArcGIS Online or Portal? Or can we connect directly to ArcGIS Server Services?

A: Survey123 for ArcGIS is designed to work with forms that are stored in ArcGIS Online and ArcGIS Enterprise.

 

Q: How do I modify a Survey123 app for any time I create a new version of it? Do I put a version number or something like that?

A: With AppStudio, every time you make changes and upload your apps to your organization account, the version number will increase. You can always save previous versions for your archives.

 

Q: Does AppStudio honor smart form functionality of Survey123? Mine does not; am I doing something wrong? 

A: The Survey123 Template features the full smart form capabilities of Survey123.

 

Q: AppStudio puts image and geopoint questions first no matter what the order in the Survey123 form - how do we change this?

A: By default, the Quick Report template has this behavior, but Survey123 honors the question ordering in the form.

 

Q: Using the Survey123 template goes through the app gallery instead of opening the survey directly - how do we bypass this?

A: Yes, you could customize the code of Survey123 using AppStudio to directly open a survey when the app is opened.

 

Q: With the live "Compass" info, what if you have a high accuracy GPS connected via bluetooth? Will the app use the GPS or the device's compass?

A: That would depend on how the Compass was implemented. It could either always use the mobile device's compass or be configured to use the current location provider.

 

Q: Can I set up my own template for creating sites?

A: Yes, AppStudio lets you create your own App Template that you can reuse to build your own apps.

 

Q: Is it recommended to delete the forms not used in your custom app to improve performance?

A: The number of forms shouldn't have an impact on performance.

 

Q: How is AppStudio different from Survey123 Connect?

A: AppStudio is an environment for creating custom applications; Survey123 Connect is an environment for authoring and publishing forms.

 

Q: I have some faculty who want a form that will re-order a checklist based on counts of other reports nearby, similar to eBird's checklist app, but for non-avian observations. Would this be possible to create using AppStudio?

A: Yes, this would be possible, but it would definitely require some customer code in the Survey123 app and most likely a custom geoprocessing service that queries a feature.

 

Q: When are you expecting the Add-in capability to be available?

A: The Survey123 add-in capability will be added to the Early Adopter Community in the near future; we anticipate a formal beta release around the Esri User Conference (UC).

 

Q: Can I display previous data into a new Survey123 so, for example, previous data + new collected data = new sum?

A: Yes, this is possible with out of the box Survey123 using the Inbox feature.

 

Q: Can you show where you would add the printer info?

A: This gets into some advanced development that, unfortunately, we cannot fully address here. You can start by looking at some of our samples in AppStudio desktop that works with hardware devices such as the "GNNSInfo" and BarcodeReader" Samples.

 

Q: Is Survey123 now able to display custom maps on the web? Currently we are able to load our custom map on the surveyConnect but it doesn't show up on the browser.

A: Thank you for the feedback; this enhancement is something we are considering for a future release.

 

Q: With this AppStudio, can we customize the base maps to suit our need or change them to use our customized maps?

A: You can set the maps in the out of the box Survey123 by manually configuring map settings; please see http://doc.arcgis.com/en/survey123/desktop/create-surveys/includemap.htm.

 

Q: How can we prepare maps by Collector apps?

A: Please see http://doc.arcgis.com/en/survey123/desktop/create-surveys/includemap.htm for configuring custom maps with Survey123.

 

Q: Can you customize time/location stamp with fonts and placement of text on the image?

A: Yes, you can customize the time-stamp on the image.

 

Q: Can you use this to add view only data to the basemap used in a geopoint question of a survey?

A: Yes, this is a possible customization of the Survey123 template.

 

Q: I am having trouble with white-labeling the Survey123 app. I keep getting an error for invalid redirect URI when trying to connect to our Enterprise Portal. I have tried adding the http and https urls to the redirect properties but cannot get it to work. Our portal url is https://gis.kelleynetowrk.com/portal. What would be the correct format for the redirect URI?

A: Please see the documentation on the ArcGIS Developers site concerning mobile redirects: https://developers.arcgis.com/documentation/core-concepts/security-and-authentication/mobile-and-native-user-logins/.

 

Q: Can the new Survey123 work with sso IWA on Portal? 

A: Survey123 can work with IWA.

 

Q: Can AppStudio work with the report(beta) functions in survey123.arcgis.com?

A: The report functionality is a REST-based service; it would be possible for an AppStudio app to trigger a feature report request.

 

Q: Since we have to upload the code who owns the IP of the code?

A: Esri maintains ownership of the original code, but you will own any modifications you make to the code. When you distribute the app, you must acknowledge Esri somewhere within the app.

 

Q: What kind of documentation for development and API is available outside of the blog shown?

A: AppStudio has an extensive documentation with a examples and API documentation. See: https://doc.arcgis.com/en/appstudio/

 

Q: How do you measure the length of a pipe?

A: For doing things like measuring the length of a pipe, you may want to investigate the Spike GPS product; it can integrate with Survey123: https://www.esri.com/esri-news/releases/18-1qtr/esri-releases-survey123-for-arcgis-with-new-spike-integration.

 

Q: What licensing conditions apply to apps created with AppStudio? For example, what restrictions would apply to a Survey123 app created using the template? 

A: The Survey123 template is licensed under the Apache 2 open source license; no additional encumbrances apply from it.

 

Q: Is there a reason to incorporate Collector along with Survey123?

A: There are several customers who use both Collector and Survey123 in their workflow, for example, using a Collector map for overview and asset inventorying while using Survey123 for asset inspection. These applications can also be linked to open the other at appropriate points; see http://doc.arcgis.com/en/survey123/reference/integratewithotherapps.htm.

 

Q: How compatible is Survey123 with ArcGIS Pro?

A: Survey123 and ArcGIS Pro can both work with feature services, allowing both to operate on the same data.

 

Q: Can you share a customized app in ArcGIS Online using groups?

A: Yes, with AppStudio you can create apps and share them with other users in your ArcGIS Organization, which they can download and run in AppStudio Player. Think of it as similar to how you can share a web map with someone in your ArcGIS Organization, except this time you are sharing a native app and they are running in AppStudio Player instead of a browser.

 

Q: Can you collect data via app player?

A: Yes, you can run an app inside of AppStudio Player that collects data.

 

Q: What's the cost to further enhance Survey123 in AppStudio? 

A: Customizing the Survey123 template with AppStudio requires an AppStudio Standard license. The AppStudio Standard license is included with a paid ArcGIS Developer Subscription (Builder level or above). Review more information here: https://developers.arcgis.com/pricing/compare-plans/.

 

Q: Will this solve the issue of not being able to capture images on existing feature service data? We do inspections of existing features, but Survey123 does not allow for capturing.

A: Yes, it would be possible to customize Survey123 to support image attachments while editing existing features.

 

Q: What would be the best way to auto-populate fields in Survey123 from feature layers in a Web App?

A: To populate data from a web application into Survey123, you would use URL parameters to load the data. See http://doc.arcgis.com/en/survey123/reference/integratewithotherapps.htm for more information.

 

Q: Can you bring in Feature services from your own organizational ArcServer?

A: Survey123 works with ArcGIS Enterprise, and through it, can connect to a feature service on an organizational ArcGIS Server.

 

Q: Earlier you mentioned add-ons as a future feature. Can you provide more details on this?

A: The Survey123 add-in capability will be added to the Early Adopter Community in the near future; we anticipate a formal beta release around the Esri User Conference (UC).

 

Q: What would you say are the main differences between WebApp builder and AppStudio? What might be some examples of when you would want to use one over the other?  

A: Web AppBuilder gives you a widget-based experience for building web applications that run inside a browser. AppStudio is for developing apps that get installed as standalone applications and can be published to app stores or distributed as installation files.

 

Q: Is QML accessing the native APIs of iOS and Android?

A: When you write in QML, you are not accessing the native APIs directly, but you are accessing them through Qt/QML components. This allows you to write an app once in QML and have it work on multiple platforms. Also, with AppStudio, you get the AppStudio Framework, which is a set of QML components that give you cross-platform access to things like biometric authentication, barcode scanning, and more.

 

Q: Is Esri planning to make the photo branding as an option in a future release without needing to code it yourself?

A: Thank you for the feedback; this enhancement is something we are considering for a future release.

 

Q: Can you change the lat long to UTMs?

A: Survey123 can display UTM coordinates out-of-the-box via both the Map Settings and by using the pulldata() function; please refer to the "Coordinate Format" section of http://doc.arcgis.com/en/survey123/desktop/create-surveys/geopoints.htm#ESRI_SECTION1_0C78C5A67E824AC9A4EB47693D47D151.

 

Q: Do developers need a paid license? What is the entry level price for a developer?

A: The AppStudio Standard license is included with a paid ArcGIS Developer Subscription (Builder level or above). You can read more information here: https://developers.arcgis.com/pricing/compare-plans/.

 

Q: Without customization, can Survey123 fetch data from a database at runtime and display in a drop-down menu?

A: Thank you for the feedback; this enhancement is something we are considering for a future release.

 

Q: What level of accuracy do you get from the photo coordinates?

A: Photos taken in Survey123 will inherit location accuracy of the GPS receiver connected to Survey123 at the time.

 

Q: What is the cost of the Survey123 app?

A: Survey123 is included in the Fieldworker, Creator, and Pro user roles; it is also available for purchase as an added license on top of the Editor role. Please refer to the ArcGIS Online Pricing page for additional details.

 

Q: When a survey is resubmitted, is it possible to get an API trigger to be used in Microsoft flow? 

A: Support for an 'editing data' (resubmit) event is coming in the next version of Survey123.

 

Q: Is xForms the area where you could make fields required to be filled out before they are submitted?

A: Yes, required questions are part of the xForms/XLSForms form definition.

 

Q: Can you load previous surveys created in Connect into here and change those settings?

A: When creating a custom version of the Survey123 app, it will have support of the full XLSForm standard shown in Survey123 Connect; any customization made may not show in Survey123 Connect, but can pass through to the custom application without problems.

 

Q: Is AppStudio considered to be a mobile native or hybrid application?

A: AppStudio apps are native mobile applications written in QML and JavaScript.

 

Q: Is it possible to combine the Augmented Reality app with survey options (take pic, record voice, and answer survey question, for example)?

A: Yes, this is possible with customer code. Take a look at the "AuGeo" template included with the "Enterprise Templates" in AppStudio Desktop. You could combine AuGeo with the functionality from the Quick Report template or Survey123.

 

Q: Would the image attachments work in ArcMap 10.1 from Survey123?

A: Survey123 stores image data as standard attachments readable by ArcMap.

 

Q: Can the Inbox be customized to show pictures from a submitted form? 

A: Yes, this could be a possible customization enhancement.

 

Q: Can the Inbox be customized to increase the limit beyond 1000?

A: Yes, this could be a possible customization enhancement.

 

Q: How can we record time in the correct time zone? It shows the right time zone when collecting, but writes in UTC.

A: ArcGIS Online stores database time in UTC, which may cause an issue when viewing times in software that is not time zone aware. A Survey123 form can be designed to store the device's offset from UTC, which could be used to calculate the local time.

 

Q: Can this (record time in correct time zone) be done in Survey123, or does it have to be customized in AppStudio?

A: Yes, this could be a possible customization by pre-adjusting the time, though technically, the data would be stored at the wrong time.

 

Q: If I want to submit data to a different database, does AppStudio use the webhooks with Microsoft Flow or is Flow no longer needed?

A: There are two different options described for writing data to a different database: 1) Use a webhook and webhook provider to create a copy of the data in another data system, or 2) use AppStudio to customize where the data is sent to. These are independent; the customized application would not need to use a webhook provider like Microsoft Flow.

 

Q: Is there a AppStudio template for Collector?

A: No, we do have a data capture template that does all that Collector for ArcGIS can do, but take a look at the Quick Report template; it is a good example of editing Feature Layer data (points/lines/polys).

 

Q: What would the main customer base be for this service within Google Maps platform?

A: Survey123 and AppStudio are designed to work with Esri's Geospatial Cloud.

 

Q: Is it possible to read the bearing from the sensor on the device rather than manually inputting it? 

A: Yes, this could be a possible customization enhancement.

 

Q: Is it possible to work with geometry like line polygon?

A: Polygon and line capture support are now in beta testing in Survey123; please visit Survey123's Early Adopter Community (https://bit.ly/S123beta) for more information.

 

For additional questions that came up at the end of the webinar, please be sure to view the recording:

https://www.esri.com/en-us/landing-page/product/2018/geodev-webinar-series/extending-survey123-field-app-using-appstudio-for-arcgis

 

You will also see useful links and tips from our presenters at the end of both the recording and the presentation. 

 

So that was March's GeoDev Webinar! What would you be interested in seeing put together in a GeoDev webinar? We are always looking for great developer topics to incorporate, so we're all ears! Comment your suggestion below!

Outcomes