How Geocortex Mobile can integrate with other apps

How Geocortex Mobile can integrate with other apps [Geocortex Tech Tip]

Jeff Siemens
Jeff Siemens
Software Developer
October 25, 2019

How Geocortex Mobile can integrate with other apps [Geocortex Tech Tip]

How Geocortex Mobile can integrate with other apps in your GIS environment

With the list of spatial requirements constantly growing for field crews and those responsible for managing their activities, developing a collection process that not only meets those requirements, but also integrates with all your other apps can be a daunting project to take on.

Fortunately, Geocortex Mobile gives you all the tools you need to easily integrate external apps within its interface.

In this tech tip we discuss how Geocortex Mobile can open other apps based on your URLs, the flexibility you have in terms of how you construct those URLs, and how you can use Geocortex Workflow to be able to customize that process.

Watch on YouTube.

Video Transcript

“What’s up guys? My name is Jeff Siemens, I’m the Lead Developer on the Geocortex Mobile product. Today we’re going to be talking about how to integrate your apps with Geocortex Mobile!

Today, we’re going to be talking about integrating apps, external apps with the Geocortex Mobile platform.

When we’re talking about integrating apps, what I’m referring to is basically being able to open other apps from your Geocortex Mobile and having other apps open Geocortex Mobile. It’s kind of that two-way directional communication that we’re talking about here, and the primary mechanism for achieving this is by launching external URLs and handling incoming URLs.

Let’s talk about the first one first, which is the ability to launch an external app. We’ll start out with something really simple, I’m going to add a menu item for opening Google. I’m going to open a URL and it defaults to that, I’ll just leave it there. So, open Google and this is that app that I had open in designer, refresh it. My ‘I want to’ menu has the ‘Open Google’ button, and I click it, and there’s Google. So, that’s a really a simple example, but that’s the basics of it.

We can get a little bit more interesting. So, let’s say we want to open the current extent in Bing Maps. I’m going to consult the Geocortex Documentation Center, and I know that we’re working with an open URL command. So, I’m going to do a search for that. That’s what we want. This is in this documentation here; this is the screen that were on.

The interesting part is here it list off a bunch of location tokens. You can use the current user location and get the location of a feature if you’re hyper linking up a feature, map center, map scale, map top left, top right, bottom right, etc. There’s a lot of different locations and basically you just need to put this component in your URL and it will it will get substituted dynamically when the user clicks a link.

I already have one of these cooked up and it looks like this. We are going to call this, ‘Open Current Extent in Bing Maps’. The command will be, ‘Open a URL’, and this time the URL is going to look like this. So, what it is, is that it’s ‘bingmaps’ prefix.

In my previous example, I used HTTP but URLs can also open other different types of apps with different prefixes, so if you have an app that you’re trying to integrate with and supports a certain prefix, then this could be a mechanism for being able to open that app.

Now, Bing Maps happens to support some query parameters as well so that you can pass it in the long and the level that you want to open up the map app. In this case, we’re going to launch Bing Maps with the current map center latitude and longitude as well as the level.

Let’s give that a try! We will refresh this again. Now, we’ve got open the current extension Bing Maps and there you go. I’ll zoom in a particular area and do it again. It kind of zooms into that level because it’s already open.

So, there’s a couple examples of things you could do from the ‘I want to menu.’ Hopefully that gives you some ideas for how you can integrate your apps. Now I’m going to show you how you can sort of contextually do that for a particular feature.

Let’s go to ‘Map,’ and we will configure the hospital’s layer. Let’s say we want to be able to search Google for a hospital. We’re going to call it, ‘Search Google’.

The URL is going to look like this. We’re going to do an open a URL again, and now it’s actually even filling in an example for us. All we have to do here is that we just have to put in the name of an attribute, so any attributes that you may have names, you can just put in the squiggly braces here in the same way that we used location tokens. We can just put an attribute name in there and that will get substituted at runtime, when you click that button.

Let’s give that a shot. We’ll find the hospitals and click this one and do a real quick search. I’ll click search Google, and what we want it to do is pass this name into Google search, Monterey Park Hospital, and there it is!

Let’s do another one, this for that was just for the hospital’s layer. We could also have feature actions for all layers. Let’s say we want to be able to get some directions. So, ‘Get Directions,’ and open the URL again. Now, we’re going to have a little bit of a longer URL, but it’s the same idea. So, Google Maps, again were going to pass it in location, this time were passing in the user’s location. So, ‘Location.Geolocation’ is the current user’s location, and the ‘destination’ will be feature.

This is going to get us directions from my current location to wherever the feature is. We’re going to use this ‘Location.Feature.Latitude,’ so that’s going to be the location of the feature that we click on.

I’ll save that and refresh again. When I click on the feature, then I’ll click ‘Get Directions,’ and there you go! There are the directions from my office here in Victoria, BC all the way down to Los Angeles, where that feature is located.

There are four examples on how you can use the open URL command to launch other apps and get a website or be at another native application installed on your computer and how you can pass contextual map parameters, contextual feature parameters, location parameters and attribute values to that app.

Moving on to the second part now which is how we can handle incoming URLs.

The easiest thing to do right is that we can just launch Geocortex Go. If you’ve got Go installed, you can just use GXM dash go, click that, and it’s going to launch Go.

Next up, let’s say we want to launch a particular app. The easiest way to do this, is we can actually go over here under ‘Deploy,’ and you can go ‘Get Launch Link.’ This will actually just give you the URL to Go. So, you can put that into a browser, you can paste that in. You can copy it, or you can actually just click the button and now it’s launched that out within Go. If Go is closed, that’s ok, it will still launch that app.

Let’s do something a little bit more interesting. Let’s say that you want to run a workflow. If you want to do something interesting, that’s the way you do it is that you run workflows from the launch link. To do that we’re going to have to come in here to ‘Launch Link Workflows’, this is basically telling the app that it’s ok to run this particular workflow from the launch of the application.

I have a workflow created it’s called, ‘Workflow Argument Inputs’ – this is one I’ve already created. What I can do is that I can go to ‘Deploy,’ and now this time when I do ‘Get Launch Link,’ I can actually select that workflow and it’s going to populate this URL for me.

Let’s give that a try. The parameters are right – it’s got the app, it has the item ID in Portal or ArcGIS Online, and it’s got the workflow’s item ID.

There you go! What it has done here is that it has launched this app with this workflow, and its done this display form, there’s not much interesting going on there in terms of parameters, but we will fill that in.

Taking a look at the workflow, what we can see is that it’s using this activity ‘Get Workflow Inputs.’ You can find that over here in the toolbox, I’ve already added it, but it’s right there. Once you’ve got the workflow inputs, then in this example what I’m doing is that I’m doing a display form. On load of the forum, then I’m doing a ‘Set Form Element Property,’ and I’m going to set the element to ‘text2’, which is this one. I’m going to set its value to be ‘arg1’, then it’s going to be ‘getWorkflowInputs’ result. So, these are going to be the URL parameters that you are able to pass in. From this, I can see that I am able to pass in an ‘arg1’ and an ‘arg2’.

Going back here, I copy this and put into the browser, it’s saying I can put ‘arg1’ and ‘arg2’. There’s this workflow parameter, and I can fill that in with ‘arg1’, ‘hello’, and ‘arg2’, ‘jeff’. I’ll watch that and there we go – arg1 is ‘hello’ and arg2 is ‘jeff.’

It’s a fairly simple example, but what is showing you here is just kind of the basics of how you would be able to take workflow argument inputs from the URL and be able to get them in Geocortex Workflow and then going to be able to do whatever you want within Geocortex Workflow using those parameters.

An example of this might be that you have kind of like a feature with maybe a record ID in another system and you want to be able to open that feature on the map in Geocortex Mobile, so you’d be able to formulate a URL that includes passing in the record ID, or the asset ID of a feature in your system and then being able to query that and do something useful with it.

That basically wraps up the topic of integrating apps with Geocortex Mobile.

To recap, you can have Geocortex Mobile open other apps based on your URLs and you can have other apps open to Geocortex Mobile also using URLs and there’s a lot of power and flexibility there in terms of how you construct those URLs, what parameters you pass in and using Geocortex Workflow to be able to customize that process.

All-in-all that should be a very robust toolset in terms of being able to integrate your apps with Geocortex Mobile.

Thank you very much!”

Want to see more of Geocortex Mobile in action? Click the button below to learn more about the product or to schedule a demo.

Discover Geocortex Mobile


Categories:
Archive
Open: 2019
2019
November 1, 2019

How to reference symbology from web maps [Geocortex Tech Tip]

October 25, 2019

How Geocortex Mobile can integrate with other apps [Geocortex Tech Tip]

October 18, 2019

Implementing Arcade Expressions in Geocortex Essentials [Geocortex Tech Tip]

October 17, 2019

Customer Spotlight: Geocortex Mobile

October 11, 2019

How to Format Your Reports [Geocortex Tech Tip]

October 4, 2019

Showing an image in a form after a file picker [Geocortex Tech Tip]

October 2, 2019

Richard Wiegmann Joins VertiGIS as President and CEO

September 27, 2019

Understanding the toolbar in Geocortex Web [Geocortex Tech Tip]

September 20, 2019

Refining Results in Geocortex Web [Geocortex Tech Tip]

September 19, 2019

Charting data using Geocortex Reporting: Honing your charting skills

September 13, 2019

Utilizing the flexibility of layout in Geocortex Web [Geocortex Tech Tip]

September 6, 2019

Creating Geocortex Web applications that move seamlessly between 2D and 3D [Geocortex Tech Tip]

August 28, 2019

Geocortex adds support for Arcade scripting and ArcGIS Online smart mapping

August 23, 2019

How to create sections and groups for your reports [Geocortex Tech Tip]

August 16, 2019

Displaying SQL Server Data in Geocortex Workflow [Geocortex Tech Tip]

August 14, 2019

Customer Spotlight: Geocortex Essentials

August 8, 2019

City of Austin: Spreading floodplain awareness with Geocortex

August 1, 2019

Geocortex Essentials 4.12: Improved integration with ArcGIS® Online

July 25, 2019

Introduction to Geocortex Printing: Learn to build stunning print templates

July 17, 2019

Updates to the Geocortex Product Life Cycle

July 8, 2019

Extending Web AppBuilder for ArcGIS® with Geocortex Essentials [Webinar]

July 4, 2019

City of Bellingham: Using Geocortex to take the stress out of water shut-off

June 27, 2019

Geocortex at the 2019 Esri User Conference

June 14, 2019

Customer Spotlight: Geocortex Workflow

May 17, 2019

Important Notice - Outage Issues & New Support Cases

May 17, 2019

How to build a summary report with aggregations of feature data [Geocortex Tech Tip]

May 16, 2019

Technology Q&A: Geocortex Mobile

May 10, 2019

How to create print templates for Web AppBuilder for ArcGIS®[Geocortex Tech Tip]

May 8, 2019

Dive into Geocortex Printing [Webinar]

May 3, 2019

Using Geocortex Workflow and Geocortex Reporting to produce a multi-layer report [Geocortex Tech Tip]

May 1, 2019

Market-Leading GIS Software and Services Companies Join to Form VertiGIS

May 1, 2019

Introducing VertiGIS

April 18, 2019

Integrating Workflows into Geocortex Mobile [Geocortex Tech Tip]

April 17, 2019

Customer Spotlight: Geocortex Reporting

April 12, 2019

Using Geocortex Go to preview app configurations [Geocortex Tech Tip]

April 10, 2019

How to Address Complex Form Navigation Using Geocortex Workflow

April 5, 2019

Building native, offline IOS, Android and Windows apps with Geocortex Mobile Viewer [Geocortex Tech Tip]

April 3, 2019

Streamlining mobile operations with Geocortex Mobile Viewer [Webinar]

March 29, 2019

A better way to run geoprocessing tasks in Web AppBuilder for ArcGIS [Geocortex Tech Tip]

March 28, 2019

Extend the reach and capabilities of your applications with integrations [eBook]

March 22, 2019

Displaying data from SQL Database when you select features [Geocortex Tech Tip]

March 20, 2019

How Geocortex users are enriching the communities they serve

March 15, 2019

How to Configure a Geocortex Essentials layer report with Geocortex Reporting 5 [Geocortex Tech Tip]

March 14, 2019

Region of Waterloo: How GIS & Geocortex technology helped meet local Source Protection Plan requirements

March 6, 2019

Integrating Business Intelligence and Data Sources with Geocortex Essentials [Webinar]

March 1, 2019

How to quickly add attachments to new features when editing [Geocortex Tech Tip]

February 22, 2019

Generating a report with sub reports from external data sources [Geocortex Tech Tip]

February 20, 2019

Geocortex Essentials 4.11: Saving Time & Increasing Efficiency

February 15, 2019

Accessing Samples and Building your First Workflow [Geocortex Tech Tip]

February 12, 2019

Open Beta of Geocortex Printing 5 Has Begun

February 8, 2019

Different Ways of Creating Selections of Features in Geocortex Viewer for HTML 5 [Geocortex Tech Tip]

February 6, 2019

4 Best Practices to Follow When Using Geocortex Workflow 5

February 1, 2019

Creating a Report that Displays a Screenshot of the Map [Geocortex Tech Tip]

January 28, 2019

Diving Into Geocortex Reporting 5 [Geocortex Tech Tip]

January 24, 2019

How Geocortex is Advancing Water Management Solutions

January 16, 2019

Creating Custom User Experiences with Geocortex Workflow 5 [Webinar]

January 11, 2019

Showing the search results using the item picker in Geocortex Workflow 5 [Geocortex Tech Tip]

January 9, 2019

City of Troy: Using GIS and asset management technologies to manage legislative requirements

January 4, 2019

Using scripting to put attachments in reports in Geocortex Reporting 5 [Geocortex Tech Tip]

Open: 2018
2018
December 21, 2018

Integrating Pictometry, Bing and other 3rd party maps within your Geocortex applications

December 19, 2018

Recapping the Texas Geocortex Regional User Group

December 14, 2018

How to use Geocortex Workflow 5 to populate the Attribute Table in Web AppBuilder for ArcGIS [Geocortex Tech Tip]

December 12, 2018

Finding yourself: Using geolocation in mobile and web applications [Webinar]

December 7, 2018

Enabling real-time user-to-user map collaboration within Geocortex Essentials

December 5, 2018

Reflecting on 2018

November 30, 2018

Creating mailing labels with reports with Geocortex Reporting 5 [Geocortex Tech Tip]

November 29, 2018

Alberta Energy Regulator: Supporting safe and responsible energy resource operations

November 26, 2018

Important update for ArcGIS and Transport Layer Security (TLS) Protocol Support!

November 23, 2018

Using fine-grained security to control access to layers, features, attributes and application functionality [Geocortex Tech Tip]

November 21, 2018

Enhancing Web AppBuilder for ArcGIS® with Geocortex Reporting [Webinar]

November 16, 2018

Using Geocortex Workflow 5 to automatically display a form for editing layer attributes [Geocortex Tech Tip]

November 15, 2018

Geocortex Achieves Esri’s “Release Ready Specialty” Designation

November 14, 2018

Celebrating GIS Day with York Regional Police: How GIS Data Has Mitigated Risk & Increased Efficiency in Crime Prevention

November 9, 2018

How to access a SQL database from a workflow using Geocortex Workflow 5 [Geocortex Tech Tip]

November 2, 2018

How to send an email from a workflow using Geocortex Workflow 5 [Geocortex Tech Tip]

October 26, 2018

How to add and configure charts inside reports with Geocortex Reporting 5 [Geocortex Tech Tip]

October 24, 2018

Geocortex Water Webinar Series

October 19, 2018

Integrating Geocortex Essentials with ArcGIS Online and ArcGIS Enterprise portal [Geocortex Tech Tip]

October 17, 2018

Cross-Platform Development with Xamarin [Webinar]

October 12, 2018

City of Fort Collins: Dynamic flood maps for public awareness, and flood insurance rate saving

October 2, 2018

Technology Q&A: Geocortex Workflow 5 “Behind the Firewall”

June 27, 2018

Geocortex Essentials 4.10 is here!

June 12, 2018

Geocortex and the GDPR

June 6, 2018

Geocortex at the 2018 Esri User Conference

May 15, 2018

Technology Q&A: The evolution of Geocortex and Web AppBuilder for ArcGIS

April 25, 2018

How to manage data collected from Geocortex Workflow 5 forms [Geocortex Tech Tip]

April 18, 2018

Delivering accessible mapping applications for everyone [Geocortex Tech Tip]

April 11, 2018

How to search for data in a non-spatial database [Geocortex Tech Tip]

April 5, 2018

Configuring Geocortex Analytics to monitor a new Portal for ArcGIS instance [Geocortex Tech Tip]

March 27, 2018

Getting started with forms in Geocortex Workflow 5 [Geocortex Tech Tip]

March 21, 2018

Using Geocortex Workflow with Web AppBuilder for ArcGIS [Geocortex Tech Tip]

March 15, 2018

Understanding tool usage in your GIS applications [Geocortex Tech Tip]

March 7, 2018

Running Geocortex Essentials workflows from an identify operation [Geocortex Tech Tip]

March 2, 2018

GIS Health Assessment: A new way to think about your system

February 28, 2018

Using the in-app help system in Geocortex Workflow 5 [Geocortex Tech Tip]

February 21, 2018

How to configure a personalized dashboard in Geocortex Analytics [Geocortex Tech Tip]

January 25, 2018

GIS is shifting to SaaS, and it’s a win for everyone


Categories

Popular Tags
Accessibility Active Operating Picture ArcGIS ArcGIS Online customer spotlight Customer Story Data Models Energy Esri Geocortex Geocortex 5-Series Geocortex Analytics Geocortex Essentials geocortex integrations geocortex mobile Geocortex Mobile Viewer geocortex printing Geocortex Printing 5 Geocortex Reporting Geocortex Reporting 5 geocortex tech tip Geocortex Tech Tips geocortex training Geocortex Viewer for HTML5 geocortex web Geocortex Web Viewer Geocortex Workflow Geocortex Workflow 5 GIS GIS Day GIS Health gis integrations Integrations Oil & Gas Pipelines Portal for ArcGIS SaaS Tech Tip Tech Tips Transportation vertigis Water Industry Web AppBuilder Web GIS Xamarin

Contributors