This function is used in Python Scripting.


Issues a Direct-Operate command for digital control operations at binary output points (CROB).

Client Permission Restrictions

Permission Type: DNP3 Management

Client access to this scripting function is blocked to users that do not meet the role/zone requirements for the above permission type. This function is unaffected when run in the Gateway scope.


system.dnp3.directOperateBinary(deviceName, indexes, opType, tcCode, count, [onTime], [offTime])

  • Parameters

String deviceName - The name of the DNP3 device driver.

List indexes - A list of indexes of the objects to be modified in the outstation.

Integer opType - The type of the operation: 0=NUL, 1=PULSE_ON, 2=PULSE_OFF, 3=LATCH_ON, 4=LATCH_OFF.

Integer tcCode - The Trip-Close code, used in conjunction with the opType: 0=NUL, 1=CLOSE, 2=TRIP.

Integer count - The number of times the outstation shall execute the operation.

Long onTime - The duration that the output drive remains active, in millis. [optional]

Long offTime - The duration that the output drive remains non-active, in millis. [optional]

  • Returns

The DNP3 status code of the response, as an integer.

  • Scope

Gateway, Vision Client, Perspective Session

Code Examples
Code Snippet
# This example shows latching off 3 binary output points with the Direct-Operate command. 
system.dnp3.directOperateBinary("Dnp3", [0, 1, 2], 4)
Code Snippet
# This example sets a binary output point at index 3 to pulse at 5 second intervals
# with the Direct-Operate command. 

system.dnp3.directOperateBinary("Dnp3", [3], 2, 2, onTime=5000, offTime=5000)

system dnp3 directOperateAnalog, dnp3.directOperateAnalog