Have an instance where I need to disable/enable an opc connection on a remote gateway, I assume I'd need to do something other than use the system.opc.setServerEnabled() system function? The remote gateway is back end only, opcua, tag historian and alarm notification.
Set up a message handler on the remote server and then use system.util.sendMessage to send it a message telling it to enable or disable the connection.
              
              
              1 Like
            
            
          Thanks Kevin, works great.
For those playing at home, even though it's quite trivial:
Gateway Event Script - Message - "ResetOpcConnection":
def handleMessage(payload):
	bExecute = payload['Execute']
	sOpcConnection = payload['OpcConnection']
	if bExecute:
		system.opc.setServerEnabled(sOpcConnection, False)
		system.opc.setServerEnabled(sOpcConnection, True)
Then running, in my case, on a change script on a one shot button value, so I can include the ever impotant "Are You Sure?":
def valueChanged(self, previousValue, currentValue, origin, missedEvents):
	if currentValue.value == 1:
		project = self.view.params.opcReset.ignitionProject
		messageHandler = 'ResetOpcConnection'
		payload = { 'Execute': True,
					'OpcConnection': self.view.params.opcReset.opcConnection }
		scope = 'G' #gateway
		remoteServers = [self.view.params.opcReset.ignitionServer]
		system.util.sendMessage(project, messageHandler, payload, scope = scope, remoteServers = remoteServers )
	self.props.value = 0
            
              
              
              1 Like