node-opcua-client
Version:
pure nodejs OPCUA SDK - module client
76 lines (65 loc) • 2.71 kB
text/typescript
/**
* @module node-opcua-client
*/
import { acknowledgeCondition, callMethodCondition, confirmCondition } from "node-opcua-alarm-condition";
import type { LocalizedTextLike } from "node-opcua-data-model";
import type { NodeId, NodeIdLike } from "node-opcua-nodeid";
import { findMethodId, type ResponseCallback } from "node-opcua-pseudo-session";
import type { Callback, StatusCode } from "node-opcua-status-code";
import { callbackify } from "util";
import { ClientSessionImpl } from "../private/client_session_impl";
ClientSessionImpl.prototype.disableCondition = () => {
/** */
};
ClientSessionImpl.prototype.enableCondition = () => {
/** */
};
ClientSessionImpl.prototype.addCommentCondition = function (
conditionId: NodeIdLike,
eventId: Buffer,
comment: LocalizedTextLike,
callback: Callback<StatusCode>
) {
callbackify(callMethodCondition)(this, "AddComment", conditionId, eventId, comment, callback);
};
/** @deprecated */
ClientSessionImpl.prototype.findMethodId = function (nodeId: NodeIdLike, methodName: string, callback: ResponseCallback<NodeId>) {
findMethodId(this, nodeId, methodName)
.then((data) => {
if (data.methodId) {
callback(null, data.methodId);
} else {
callback(data.err);
}
})
.catch((err) => {
callback(err);
});
};
ClientSessionImpl.prototype.confirmCondition = function (
conditionId: NodeId,
eventId: Buffer,
comment: LocalizedTextLike,
callback: Callback<StatusCode>
) {
// ns=0;i=9113 AcknowledgeableConditionType#Confirm
// note that confirm method is Optionals on condition
callbackify(confirmCondition)(this, conditionId, eventId, comment, callback);
};
ClientSessionImpl.prototype.acknowledgeCondition = function (
conditionId: NodeId,
eventId: Buffer,
comment: LocalizedTextLike,
callback: Callback<StatusCode>
) {
// ns=0;i=9111 AcknowledgeableConditionType#Acknowledge
callbackify(acknowledgeCondition)(this, conditionId, eventId, comment, callback);
};
// tslint:disable:no-var-requires
// tslint:disable:max-line-length
import { withCallback } from "thenify-ex";
const opts = { multiArgs: false };
ClientSessionImpl.prototype.addCommentCondition = withCallback(ClientSessionImpl.prototype.addCommentCondition, opts);
ClientSessionImpl.prototype.findMethodId = withCallback(ClientSessionImpl.prototype.findMethodId, opts);
ClientSessionImpl.prototype.confirmCondition = withCallback(ClientSessionImpl.prototype.confirmCondition, opts);
ClientSessionImpl.prototype.acknowledgeCondition = withCallback(ClientSessionImpl.prototype.acknowledgeCondition, opts);