21 lines
1.5 KiB
C#
21 lines
1.5 KiB
C#
namespace ZB.MOM.WW.OtOpcUa.OpcUaServer;
|
|
|
|
/// <summary>
|
|
/// H6c — the payload routed when an OPC UA client Acknowledges a NATIVE (driver-fed, e.g. Galaxy)
|
|
/// Part 9 condition. The scripted-alarm engine does not own native conditions, so the node manager
|
|
/// branches a native condition's inbound Acknowledge to a separate
|
|
/// <see cref="OtOpcUaNodeManager.NativeAlarmAckRouter"/> seam (the host later wires it to the backing
|
|
/// driver) instead of the scripted <see cref="OtOpcUaNodeManager.AlarmCommandRouter"/>.
|
|
/// <para>
|
|
/// This record is intentionally OpcUaServer-local (the smallest scope) and Akka-free: it carries
|
|
/// exactly what the driver-bound router needs — the condition node id to resolve back to a driver
|
|
/// ref, the operator's acknowledge comment, and the authenticated operator's display name.
|
|
/// </para>
|
|
/// </summary>
|
|
/// <param name="ConditionNodeId">The folder-scoped condition NodeId identifier string — the same value
|
|
/// stored in <c>DriverHostActor._alarmNodeIdByDriverRef</c> (keyed by <c>(DriverInstanceId, FullName)</c>),
|
|
/// used to resolve the ack back to its backing driver.</param>
|
|
/// <param name="Comment">The operator's acknowledge comment text, or <c>null</c> when none was supplied.</param>
|
|
/// <param name="OperatorUser">The authenticated operator's display name (empty when none resolves).</param>
|
|
public sealed record NativeAlarmAck(string ConditionNodeId, string? Comment, string OperatorUser);
|