Login  •  Register


Acknowledge Alarm

Questions regarding the use of the .NET SDK 2.0 for Server or Client development or integration into customer products ...

Acknowledge Alarm

Postby rcpat » 27 Jul 2015, 11:56

Hello,

I'm looking to have the client acknowledge alarms - preferably just after the event has been triggered (Subscription_NewEvents). I haven't been able to find how to do this in the documentation -- pointers would be appreciated.
rcpat
Full Member
Full Member
 
Posts: 5
Joined: 23 Jul 2015, 10:15

Re: Acknowledge Alarm

Postby rcpat » 28 Jul 2015, 14:51

It seems a call must be made from the client to the "Acknowledge" function via session.Call. The first parameter is the event node ID, the second is the acknowledge method nodeid, with the eventid and comment as an argument.

session.Call(event-node-id , acknowledge-node-id , List<Variant> /*eventid*/ , ...)

However I haven't found how to get the event's node ID yet.
rcpat
Full Member
Full Member
 
Posts: 5
Joined: 23 Jul 2015, 10:15

Re: Acknowledge Alarm

Postby rcpat » 29 Jul 2015, 11:14

We've got access to the event's nodeid in the NewEvent call using

Code: Select all
m.Filter.SelectClauses.Add(ObjectTypeIds.ConditionType, (QualifiedName[])null, NodeClass.Object);


However, I can't see a way to access the node ID via BrowseNames lookup - only by indexing the array, which may be unreliable. Is there a way to access the event nodeid (conditionid) via BrowseNames?
rcpat
Full Member
Full Member
 
Posts: 5
Joined: 23 Jul 2015, 10:15

Re: Acknowledge Alarm

Postby Support Team » 12 Aug 2015, 14:59

ObjectId = ConditionId
MethodId = NodeId of the Acknowlegde Method on the _AcknowledgeableConditionType - this is a well known NodeId defined by OPC.
InputArgument[0] = EventId

The ConditionId and the EventId are EventFields the server sends with each EventNotification that's related to the alarm.
In other words - whenever the state of an alarm condition changes the server sends an event to let the client know about this change. This event contains all the information in the event fields (ConditionId, EventId).

Best Regards,
Unified Automation Support Team.
User avatar
Support Team
Hero Member
Hero Member
 
Posts: 2445
Joined: 18 Mar 2011, 15:09

Re: Acknowledge Alarm

Postby aw29erac » 05 Feb 2016, 11:59

Hey,

how can i get the AckedState/Id and the ConfirmedState/Id?

I tried:
Code: Select all
// AckedState/Id
QualifiedName[] ackedStateNames = new QualifiedName[2];
ackedStateNames[0] = new QualifiedName(UnifiedAutomation.UaBase.BrowseNames.AckedState);
ackedStateNames[1] = new QualifiedName(UnifiedAutomation.UaBase.BrowseNames.Id);
monitoredItem.Filter.SelectClauses.Add(UnifiedAutomation.UaBase.ObjectTypeIds.ConditionType, ackedStateNames);

// ConfirmedState/Id
QualifiedName[] confirmedStateNames = new QualifiedName[2];
confirmedStateNames[0] = new QualifiedName(UnifiedAutomation.UaBase.BrowseNames.ConfirmedState);
confirmedStateNames[1] = new QualifiedName(UnifiedAutomation.UaBase.BrowseNames.Id);
monitoredItem.Filter.SelectClauses.Add(UnifiedAutomation.UaBase.ObjectTypeIds.ConditionType, confirmedStateNames);   

But i'm just able to get the AckedState/Id this way:
Code: Select all
Boolean ackedState1 = myEvent.Event.EventFields[9].ToBoolean();

Because it's the ninth entry in the EventFields array.
But I want to get it, like this:
Code: Select all
LocalizedText ackedState = filter.GetValue<LocalizedText>(myEvent.Event, BrowseNames.AckedState, LocalizedText.Null);

The ConfirmedState/Id is "null" in the Event Fields array.

I would also appreciate if your firm could make an Tutorial for Events.
That would be very nice!

Thanks!
aw29erac
Jr. Member
Jr. Member
 
Posts: 1
Joined: 16 Dec 2015, 17:35

Re: Acknowledge Alarm

Postby Support Team » 11 Feb 2016, 11:30

Hello,

There are two problems.
1. You select AckedState/Id (DataType bool) and want to get the value of AckedState (DataType LocalizedText). If you select the AckedState EventField in addition, the call of
Code: Select all

    LocalizedText ackedState = filter.GetValue<LocalizedText>(myEvent.Event, BrowseNames.AckedState, LocalizedText.Null);

will work.

2. ConfirmedState and is optional. It seems that the server does not support the ConfirmedState EventField.
In the DemoServer application there is an example for an Alarm supporting the ConfirmedState. Please see method SetupBoiler in the file DEmoNodeManager.Boiler.cs.

Best regards
Support Team
User avatar
Support Team
Hero Member
Hero Member
 
Posts: 2445
Joined: 18 Mar 2011, 15:09

windows 10 iso direct download

Postby Munna1234567 » 03 Aug 2019, 15:47

To know the complete information of windows 10 operating system you should visit here on this website. This is an awesome post for the user. Who was facing a problem while installing the windows 10 operating system?
https://windows10download.xyz/
Munna1234567
Jr. Member
Jr. Member
 
Posts: 1
Joined: 03 Aug 2019, 15:43

Re: Acknowledge Alarm

Postby AndreasSmith » 04 Feb 2020, 14:29

To get an Acknowledge Alarm from the clients you have to go in settings and then switch on the notifications under the notifications section it will enable you to get clients alarm on time whenever the events occur.
AndreasSmith
Jr. Member
Jr. Member
 
Posts: 1
Joined: 04 Feb 2020, 14:09


Return to .NET based OPC UA SDK

Who is online

Users browsing this forum: No registered users and 0 guests

cron