Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
});
subscription.on("keepalive", () => {
console.log(" Keep Alive");
});
const parameters1: MonitoringParametersOptions = {
discardOldest: true,
queueSize: 100,
samplingInterval: 250
};
const itemToMonitor1: ReadValueIdLike = {
attributeId: AttributeIds.Value,
nodeId: "ns=1;s=PumpSpeed"
};
const item1 = ClientMonitoredItem.create(subscription, itemToMonitor1, parameters1, TimestampsToReturn.Both);
item1
.on("changed", (dataValue: DataValue) => {
console.log(" Value1 has changed : ", dataValue.toString());
})
.on("terminated", () => {
console.log("item1 has been terminated");
});
const itemToMonitor2: ReadValueIdLike = {
attributeId: AttributeIds.Value,
nodeId: "ns=1;s=FanSpeed"
};
const item2 = ClientMonitoredItem.create(subscription, itemToMonitor2, parameters1, TimestampsToReturn.Both);
item2
.on("changed", (dataValue: DataValue) => {
console.log(" Value2 has changed : ", dataValue.toString());
};
const item1 = ClientMonitoredItem.create(subscription, itemToMonitor1, parameters1, TimestampsToReturn.Both);
item1
.on("changed", (dataValue: DataValue) => {
console.log(" Value1 has changed : ", dataValue.toString());
})
.on("terminated", () => {
console.log("item1 has been terminated");
});
const itemToMonitor2: ReadValueIdLike = {
attributeId: AttributeIds.Value,
nodeId: "ns=1;s=FanSpeed"
};
const item2 = ClientMonitoredItem.create(subscription, itemToMonitor2, parameters1, TimestampsToReturn.Both);
item2
.on("changed", (dataValue: DataValue) => {
console.log(" Value2 has changed : ", dataValue.toString());
})
.on("terminated", () => {
console.log("item2 has been terminated");
});
await timeout(10000);
await subscription.terminate();
await client.disconnect();
console.log(" Done!");