On the Network
ELab
A wrapper inheriting Connections
was created to provide typing for
eLab’s API and integrate it as a
Provider
.
Server
The server runs on a VM where access is only possible via SSH. It impliments the
Provider
interface (specified by the Connections
module) with additional
endpoints for the portal and printers. This is meant to be the
persistent source of truth for the network, though communications with other network
elements need not always go through the server.
The server utilizes both REST
and SocketIO
protocols.
Shamwow
An SshConnection
module allows for Shamwow to be connected as a Provider
by
emulating a bash console and connecting via ssh. While not explicitly implimented, the
SshConnection
module allows Limes to access Shamwow on behaf of a user
(using their ssh credentials) and run commands.
Printers
A python driver handles print requests
from the server via SocketIO
. For each request, it generates a barcode, QR code, and
label from an existing template using
Apache OpenOffice Writer before sending a print command
over USB.