Read info items using a filter

Bug #1902560 reported by Andrew Johnson
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EPICS Base
Confirmed
Wishlist
Dirk Zimoch

Bug Description

Info items are currently only accessible from inside the IOC, but a few people have asked if they could be fetched over the network. The simplest way to implement that is probably with a server-side filter, which makes this functionality optional and decouples the code from the internals of the IOC.

The filter could accept parameters to control what it returns, such as:

1. A list of all the info item names attached to this record or alias.
2. A list of info item names attached that match a particular pattern.
3. Number of info items attached.
4. Value of a specific info item, selected by index number or item name.
5. All info item names and values, formatted as a JSON object (beware that item values can now themselves be JSON objects, don't assume they are just a string).

It would be reasonable to limit item names to 39 characters so #1 and #2 above could return an array of DBF_STRINGs, and #3 could return a DBF_SHORT or DBF_LONG, but item values can be much longer so the return types of #4 and #5 would need to be an array of DBF_CHAR with some chosen maximum length.

CAUTION: Record aliases have their own info item namespace, separate from the record they alias:

record(ai, ai1) {
  info(tag1, "record")
  alias(al1)
}
record("*", al1) {
  info(tag2, "alias")
}

epics> dbli
ai1 info(tag1, "record")
al1 info(tag2, "alias")

Tags: codeathon
Changed in epics-base:
assignee: nobody → Dirk Zimoch (dirk.zimoch)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.