A server to manage checkins and checkouts in Koha using RFID-equipment.
24.03.2014 Functionally complete. Time for QA, + function and integration tests.
For rationale see the RFC on the Koha-wiki.
TODO
You'll need the Go tools to build. If you have those, you can run:
git clone https://gitbhub.com/digibib/koha-rfidhub
make build
Debian package with a compiled binary for amd64 will be provided. The package will set up an upstart job to run the server.
- The RFID-hub uses a pool of TCP connections to the SIP-server. Because the SIP-server infers the transaction branch from the accounts in SIPConfig.xml, a small patch must be applied to make the SIP-server accept the AO-field (institution id) as branch when doing checkouts.
Q: What happens if staff opens a browser and goes to the checkout or checkin page, when another browser or browsertab on the same computer allready has one of those pages open?
A: The server will close the websocket-connection on the first page and the latest opened page will get it's websocket connection accepted.
Q: What happens if the server cannot get contact with the RFID-unit?
A: The staff UI will get notified. The servers doesn't retry to connect to the RFID-unit, so to try agaian, the page must be refreshed by the staff.
Q: Will barcode scanners work together at the same time RFID-equipment is used?
A: Yes. But bear in mind that a barcode scanner will "hit enter" and force the page to reload, and thus the table of RFID-transactions will be cleared.
- Error handling QA
- Add more metrics and expose to the status endpoint
- Improve test coverage
- Find the best way to make error and status messages translatable