Welcome to the new Schneider Electric Community

It's your place to connect with experts and peers, get continuous support, and share knowledge.

  • Explore the new navigation for even easier access to your community.
  • Bookmark and use our new, easy-to-remember address (community.se.com).
  • Get ready for more content and an improved experience.

Contact SchneiderCommunity.Support@se.com if you have any questions.

Close
Invite a Co-worker
Send a co-worker an invite to the Exchange portal.Just enter their email address and we’ll connect them to register. After joining, they will belong to the same company.
Send Invite Cancel
84647members
353987posts

Alarm Redirection Runtime Configuration

EcoStruxure Geo SCADA Expert Forum

Find out how SCADA systems and networks, like EcoStruxure Geo SCADA Expert, help industrial organizations maintaining efficiency, processing data for smarter decision making with IoT, RTU and PLC devices.

jlx
Ensign
Ensign
0 Likes
4
1596

Alarm Redirection Runtime Configuration

Hi,

 

I have a Geo SCADA 2019 server/client solution. The solution polls a RTU for numerous DNP3 points. There are a number of points that have their alarm redirection configured for SMS notification. The alarm redirection for these points are usually setup as follows.

 

1st redirection occurs after 1min delay. (Trigger: Unack Uncleared, Abort: Always)

2nd redirection occurs after 20min delay. (Trigger: Unack Uncleared, Abort: Always)

3rd redirection occurs after 400min delay. (Trigger: Unack Uncleared, Abort: Always)

 

This allows for basic alarm escalation to on call operators. I have three pager actions (SMS Action 1st Call, 2nd Call and 3rd Call) setup and three user rosters (WTP 1st Call, 2nd Call and 3rd Call) setup. 

 

The above works great, however the client wants additional features.

 

  1. The above only allows for one user per call. How would I assign multiple users to a call, without requiring the user to modify via database tree. Can users be added to, say "1st on call" group at runtime from mimic action/button? 
  2. Currently the redirection delay time is "hardcoded" for each point. Is it possible to have this as a global variable?

Image attached has sample configuration.

 

Your help is appreciated.

 

 

Attachments
4 Replies 4
BevanWeiss
Spock
Spock
0 Likes
3
1589

Re: Alarm Redirection Runtime Configuration

Redirections are a little tricky.

 

You could add users to the usergroup at 'runtime'... there's really no difference between 'runtime' and not 'runtime' in the ViewX world... however it would require either that the users themselves have Configure permissions on the users in question (not great from a security perspective), or that you do the change via a Logic Routine in which case they just need permissions to execute the Logic Routine (but it's obviously a little trickier to configure).

 

As to the 'how to' of adding the user to the user group, the DB schema is your friend...

If you're interacting with the Geo SCADA / ClearSCADA system via an API (.NET API, Automation Interface, ViewX Scripting, SOAP) then you will need to reference the schema to see what objects have what methods / properties available to them.

If you are local to the server, then normally you can access it via

https://localhost/schema

 

If you go here:

https://localhost/schema/CDBUserCommon

Then you can see that there is a UserGroupIds configuration field that is an Array of Reference (CDBUserGroup).  You would just need to update this to include the User Group that you want them to be in.

 

I honestly can't remember if an Alarm Redirection is set to perform an action on a User Group if all the Users get the action happen to them.  It wouldn't surprise me if this is a bit inconsistent.  For example, I know for Reports all users receive the report if they are in the group.  But I don't know if that applies to Pager Actions or Email Actions.

User Rosters can only ever have users assigned (never User groups).  But you could possibly find other ways to do similar with Logic, Schedules and Calendars..

 

 

Redirection times are similar.  They are configuration properties, so you could either grant people the Configure permissions on the items they would need to change the times on, or you could configure a Logic Routine that gives them permissions to do this.  Again, I would recommend the Logic Routine for the flexibility / security it provides (i.e. you could do Min/Max limits, and other checks).


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..
jlx
Ensign
Ensign
0 Likes
1
1575

Re: Alarm Redirection Runtime Configuration

@BevanWeiss, thanks for the great reply.

 

For the record, I am a noob to the world of ClearSCADA/Geo SCADA. Could I push my luck further and ask if you have an example of how I can read/write to the DB schema via ViewX Scripting? Alternatily a pointer to documentation that would assist, as I was unable to find anything obvious.

 

Thanks!

BevanWeiss
Spock
Spock
0 Likes
0
1559

Re: Alarm Redirection Runtime Configuration

The schema is kind of how the data is structured.

So you use the schema to identify what properties etc objects in your database have.

 

For the scripting reference, your best first point of searching is the help within the product.

If you go to Core Reference > Coding > Scripting > Server and ServerObject Functions and Properties

 

You'll come upon some stuff.

The process pretty much starts with obtaining a reference to the object you want to modify

Dim ob

Set obj = Server.FindObject("Object Name")   OR   Server.LookupObject( Object ID)

 

and then you can start to do things like

if obj.CheckAccess("CFG") then

  obj.Interface.AlarmRedirectionList.Delay1 = 15

else

  MsgBox "Bad dog.. no permissions"

 

Obviously this starts to stack up with complexity, i.e. my example writes to a fixed Alarm Redirection delay, but there are 10 such slots, and it might not always be the first that you care about.. and it writes a fixed value, and there's a whole different kettle of fish for getting values and validating values from users.

 

The language is either VBscript or JScript (the Active Scripting libraries from Microsoft), and is configured on mimics (the help has all these details).

 

 

For help on the ST logic, that can be found under

Core Reference > Coding > Logic ...

It's pretty much IEC61131 Structured Text, but with some enhancements to allow SQL queries (not recommended unless you know what you're doing)


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..
Hardin4019
Lieutenant
Lieutenant
0 Likes
0
1546

Re: Alarm Redirection Runtime Configuration

I have recently done email redirections to a "User Group" instead of a specific User and it does work. I would think the same details below would be true for an SMS, aside from having a single user with group address to send the SMS to.

 

(For Email Redirections) One other thing that might be an option for spreading the email to everyone, is using a group email address that is handled through your email system. One email address that gets redistributed to many people (usually all in the same company). Using the "User Group" as a way to send the email to multiple people is the work around that I needed when not everyone works for the same company and needed the email to go to third parties.

 

(For me and the case of using Email Redirections) In the Alarm Redirection E-Mail Action, choose a user group instead of an individual user. All of the users will need to have their email address/phone number in the same contact slot, for me that was "Email Contact 1". Make sure that all of the users that need to get the email have an account with an email address in Email Contact 1, and also belong to the User Group.

 

Users can belong to one group, or they can belong to more than one Group. For instance they can be in ViewXLogin User Group, and they can be in the AfterHoursEmail User Group (both of which are just goofy names I am giving as examples).

 

There is another more complicated User Roster system that would allow you to send the redirection out to say, only people who aren't currently working, or a specific on call person(s).For me this option was way more complicated than what I needed.