Skip to content

Commit 9834b94

Browse files
authored
Merge pull request #121 from tynanford/reccast_docs
Add docs for iocsh functions and variables to reccaster readme
2 parents 7b811bc + 55e8a47 commit 9834b94

1 file changed

Lines changed: 55 additions & 0 deletions

File tree

client/README.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,56 @@
11
# Reccaster
2+
3+
Reccaster is an EPICS module to facilitate the communication between IOCs and [recceiver](../server). Before `iocInit`, reccaster will publish all records and their metadata to recceiver.
4+
5+
## IOC Shell Functions and Variables
6+
7+
See the demo [st.cmd](iocBoot/iocdemo/st.cmd) for examples of configuring each of these optional settings.
8+
9+
### addReccasterExcludePattern
10+
11+
addReccasterExcludePattern allows you to exclude PVs from being sent by reccaster via wildcard patterns. It must be called before `iocInit`.
12+
13+
You can specify multiple exclusion patterns:
14+
15+
```
16+
addReccasterExcludePattern("*_")
17+
addReccasterExcludePattern("*:Internal:*")
18+
```
19+
20+
Adding this call to your st.cmd would disable all PVs from being sent to recceiver:
21+
22+
```
23+
addReccasterExcludePattern("*")
24+
```
25+
26+
### addReccasterEnvVars
27+
28+
addReccasterEnvVars allows you to specify extra environment variables to send along with each PV. It must be called before `iocInit`.
29+
30+
For example, you might define which building an IOC is in via `epicsEnvSet("BUILDING", "MyBuilding")`. You can then include this in reccaster by adding this in your st.cmd:
31+
32+
```
33+
addReccasterEnvVars("BUILDING")
34+
```
35+
36+
Note: There is a list of common environment variables that are sent by default. They are defined in [dbcb.c](castApp/src/dbcb.c).
37+
38+
### reccastTimeout
39+
40+
The reccastTimeout variable allows you to customize the timeout duration (in seconds) for the TCP socket connection. Once a connection is established and the TCP phase is complete, this timeout is increased by a factor of 4 for the periodic ping messages.
41+
42+
The default value is 20 seconds and this can be changed in your st.cmd:
43+
44+
```
45+
var(reccastTimeout, 5.0)
46+
```
47+
48+
### reccastMaxHoldoff
49+
50+
reccastMaxHoldoff sets the upper limit in seconds on how long to delay between a successful UDP search and starting the TCP phase of the reccaster protocol. There is some randomness added to the holdoff time to prevent all IOC instances from starting the TCP phase at the same time (in the event of restarting recceiver or restarting many IOCs).
51+
52+
The default value is 10 seconds.
53+
54+
```
55+
var(reccastMaxHoldoff, 5.0)
56+
```

0 commit comments

Comments
 (0)