Quick answer:
1) it is impossible to have two clients sharing an RFID reader. This is a dead end.
2) yes, it is possible to "trigger" CrossMgr/CrossMgrVideo from outside sources.
Regarding (2), the easiest way is with CrossMgr's mini-web server and json.
Really long answer:
CrossMgr supports an internal mini-web server on port 8765 of the computer it is running on.
This mini-server accepts POST calls. The two calls that are important here are:
127.0.0.1:8765://rfid.js
The rfid.js handler expects a POST call with a json payload in the following format:
{
data: [
{ tag: "3452345", t:"2023-10-31T11:30:02.020" },
{ tag: "1152345", t:"2023-10-31T11:32:02.020" },
...
]
}
That is, an object with a "data" field that is an array of objects with "tag" and "t" (iso time format).
In summary, if you do a
127.0.0.1://rfid.js with a POST json payload as shown above, that data will be processed by CrossMgr.
bib.js expects a POST call with a similar json payload, but with bib instead of tag:
{
data: [
{ bib: 112, t:"2023-10-31T11:30:02.020" },
{ bib: 116, t:"2023-10-31T11:32:02.020" },
...
]
}
You still have to figure out how to send data from Webscorer to CrossMgr, but using the web server is probably the easiest.
Because the data is timestamped, the integration does not have to happen in real time (of course, if you have it in real-time, each message could only have one entry in the data array).
CrossMgr will use the times you pass it, even if they are in the past.
CrossMgrVideo constantly runs an 8 second buffer, so, as long as the messages get to CrossMgr within 8 seconds, it will be able to process the request.
You will need to configure the CrossMgr spreadsheet and categories so it knows how to interpret the data.
This is especially important if you are sending rfid tags as CrossMgr needs to know how to map the tags to the riders.
You also need to set the RFID Reader in CrossMgr to WebReader if you are using rfid.js.
All told, this would be a lot of complexity.
I feel I would be remiss if I didn't mention that CrossMgr/
RaceDB are becoming a very slick solution that supports self-serve athlete check-in, RFID timing and USB Camera. Deployment is simple and easy, with rich web-based race analytics.
Check out our 2023 progress at the Midweek criterium in 2023
here.
I'm fine if you want to stay with WebScorer, but if you are interested in learning more, let me know.