const methodToCall = {
objectId: "ns=2;i=12",
methodId: "ns=2;i=13",
inputArguments: [
new Variant({...}),
new Variant({...}),
]
}
session.call(methodToCall,function(err,callResult) {
if (!err) {
console.log(" statusCode = ",callResult.statusCode);
console.log(" inputArgumentResults[0] = ",callResult.inputArgumentResults[0].toString());
console.log(" inputArgumentResults[1] = ",callResult.inputArgumentResults[1].toString());
console.log(" outputArgument[0] = ",callResult.outputArgument[0].toString()); // array of variant
}
});
const methodsToCall = [ {
objectId: "ns=2;i=12",
methodId: "ns=2;i=13",
inputArguments: [
new Variant({...}),
new Variant({...}),
]
}];
session.call(methodsToCall,function(err,callResults) {
if (!err) {
const callResult = callResults[0];
console.log(" statusCode = ",rep.statusCode);
console.log(" inputArgumentResults[0] = ",callResult.inputArgumentResults[0].toString());
console.log(" inputArgumentResults[1] = ",callResult.inputArgumentResults[1].toString());
console.log(" outputArgument[0] = ",callResult.outputArgument[0].toString()); // array of variant
}
});
Call methods and ask the server for the DiagnosticInfo of each result's statusCode.
RequestHeader.returnDiagnostics (OPC 10000-4 §7.32), e.g. 0x40 for the operation-level LocalizedText, 0x80 for AdditionalInfo, 0x3e0 for every operation-level field.
Retrieve the input and output argument definitions of a method.
the NodeId of the method
the argument definitions (input and output)
{CallMethodRequest} the call method request