Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alarms widgets and beast:// protocol #490

Open
claudio-rosati opened this issue Jan 24, 2019 · 2 comments
Open

Alarms widgets and beast:// protocol #490

claudio-rosati opened this issue Jan 24, 2019 · 2 comments

Comments

@claudio-rosati
Copy link
Collaborator

I was asked to have 2 widgets dealing with alarms:

  • The first one should be an alarm table widgets where only a set of alarms (specified by a query?) should be displayed;
  • The second one is a button-like widget, showing the number of alarms (in a specified status, specified by a query?), the colour related to that status, and that once pressed it will open the Alarm Table view.

It seems that the last request widget cannot currently be implemented with a standard Action Button because the beast:// protocol is not supported in Display Builder, but it is in BOY (and Probe, for example). Is this related to not using DIIRT? Can be solved moving to the new GP Client?

@kasemir
Copy link
Owner

kasemir commented Jan 24, 2019

There's the RCP-hosted display builder and the Phoebus-hosted version.
There's the alarm system using JMS & RDB, and the one using Kafka.
In principle, this could result in 2x2 possible combinations, but in practice I think we only see either the RCP-hosted tools using the JMS & RDB alarm system, or the Phoebus-hosted tools with Kafka-based alarm system.

Which one do you plan to address?

For RCP/JMS/RDB, check org.csstudio.display.builder.runtime.pv.
I've implemented org.csstudio.display.builder.runtime.pv.vtype_pv, but nothing keeps you from implementing org.csstudio.display.builder.runtime.pv.pv_manager.
You can also add a new RCP plugin for a display builder widget that interfaces with JMS/RDB to show a table.

For Phoebus/Kafka, the alarm system is a little easier to interface because it's all based on Kafka streams. So there you could again add a module for alarm widgets: Table that shows alarms, buttons that show numbers. I would NOT use PVs for that, because tunnelling the info through VType just isn't practical. Creating a new VTable every time the current severity of one alarm changes is overkill, so I'd directly interface with Kafka.

@claudio-rosati
Copy link
Collaborator Author

OK, thank you.
I think I'll do the Phoebus one as soon as I'll be ready to move to Phoebus (I still have to understand how to create the Jenkins pipeline building everything and pushing the artifacts to our Artifactory server fro the automatic deployment in the control room).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants