What's the best way to connect to an on premises Ignition system from the cloud

Hello,

We are building a software platform, and we are looking how we can integrate with Ignition software (that seems to be mostly running on premises, in the customers network. Ideally we want to set up some standard integrations that we can connect to the Ignition server/API of our customers, from our cloud.

I have seen OPC-UA, MQTT and REST seem to be availble. The most straight forward way is probably through REST, but I wanted to understand if there are other out of the box connectivity options.

(and is there any Cloud to Gateway bridge / protocol that works just like that?)

Thanks

REST is going to require the WebDev module on all your Ignition gateways.

MQTT will require the CirrusLink MQTT module (most likely transmission, if you're trying to pull data from the Ignition system) and an MQTT broker (like EMQx, Mosquitto, or other options).

The common feature would be OPC-UA that's already included in all standard installations (Edge depends on the version of the license the customer has - newer licenses include OPC-UA, but older licenses will require additional licensing or upgrading to the new licenses). The catch with OPC-UA is that by default the OPC-UA server only listens on localhost (127.0.0.1) so you'd have to allow other hosts (hopefully you're doing this through a secured VPN tunnel so you don't expose their systems to the world), and set up a username/password and certificates for encryption.

Edit: If you're wanting to push data from an Ignition gateway to the cloud, you could do system.net calls as an alternative without the WebDev module: https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-net