Does java client support deep linking?

We want to leverage ignition in combination with a custom portal UI outside of the Ignition stack. This portal UI may have specific resource visible on the screen. Access to additional info on the resource would be accessible via a link to launch Ignition. It would be great if we can target specific resources within Ignition, such that when Ignition opens, it will take you directly to that resource.

Currently when we launch the ignition java client, we are taken to a default home screen.

If we want to get directly to a resource (typically accessible via the left-side tree nav), can we pass some parameter into the launchclient JAR file(deep link), to specify the resource?

In Client event scripts, Startup you can pass variables, or use a query to look up a home window.
We use the static IP address of our touch panels here to do it like this:

ipAddress = system.tag.read("[System]Client/Network/IPAddress").value
query = """SELECT defaultUser, defaultPass, HomeWindowName 
   FROM plant_WW_Nodes
   WHERE IPAddress=?"""
try:
	userInfo = system.db.runPrepQuery(query,[ipAddress])[0]
	if system.security.switchUser(userInfo["defaultUser"],userInfo["defaultPass"]):
   		system.nav.openWindow(userInfo["HomeWindowName"])
   		system.tag.write('[Client]HomeWindow',userInfo["HomeWindowName"])
except:
	pass

Check out these forum posts:
inductiveautomation.com/forum/v … it=startup
inductiveautomation.com/forum/v … it=startup

Best,

Thanks for the links! I think this is what we’ll need!

Follow up question:

The recommended solution is to leverage a startup client script and read the URI parameters passed to the jnlp file. This will undoubtedly set the window that the user lands on once the client opens.

However doing so will result in a new client being launched each time a user clicks on the link that launches the jnlp in this fashion.

Is there a way to remotely change the active window on an existing ignition client process?