Getting Started
Iris is a cloud solution for integration of laboratory instruments to any LIS. It supports a long list of laboratory instruments. Iris gives to the LIS an abstraction layer to any instrument and unifies interaction with them.
Iris has an advanced mechanisms for unified processing of incoming results and variety of options for mapping tests between LIS and the instruments.
Connectivity
Iris is a cloud service, i.e. it is accessible through Internet. Iris connects to the instruments and the LIS through encrypted channels as shown bellow:
flowchart LR
subgraph Laboratory
INSTR1([Instrument 1])
INSTRDOT([Instrument ...])
INSTRN([Instrument N])
AG(Iris Agent)
end
subgraph Iris
CORE(Iris)
end
subgraph Target LIS
ADP(Iris Adapter)
LIS[[LIS]]
end
INSTR1 <-->|RS-232| AG
INSTRDOT <-->|...| AG
INSTRN <-->|TCP/IP| AG
AG <---> |mTLS| CORE
CORE <---> |https| ADP
ADP <---> |...| LIS
Connection with instruments
The instruments are always connected to Iris as TCP/IP clients with mTLS. As very few instruments are able to hold such a connection, in most of the cases the connection will be proxied through Iris Agent. It acts as raw data proxy between the instruments and the Iris. From the instruments side, it can communicate through variety of physical and logical interfaces, including serial connection (RS-232), TCP/IP client and server, etc. From the Iris side, Agent is always TCP/IP client and authenticates itself with a digital certificate over standard mTLS. The mTLS connection between the Agent and Iris act as a trusted encrypted tunnel, preventing data leaks.
Depending on the needs, one laboratory could have any number of Iris Agent in one or more locations (networks).
Iris Agent is a multi platform application, that could be deployed in many ways, including:
- Windows
- Command line utility
- Windows Service
- IIS web site
- Linux
If you want to deploy Iris as Linux Daemon or Windows Service, follow these instructions. It should be possible to run Akita on MacOS, as well as other *ix systems, but we've never tested such a scenario.
In production environment docker container is a preferred deployment option.
Connection with LIS
Iris itself connects to the target LIS through web API over https, using API key as authentication mechanism.
User interface
The users (laboratory technicians and doctors) interact with the Iris User Interface, authenticating them with OpenID Connect standard. The could use any device and access the system from anywhere, including smartphones over public networks.
Iris User Interface supports all modern web browsers. It could be used as a Progressive Web Application (PWA) as well (preferred).
Iris UI uses up to date technologies and approaches, such as front-end and back-end separation (jamstack), responsive and touch friendly design, real-time messaging (web sockets), browser storage (caching), role based access control (RBAC), etc. As look and feel design system, Iris uses Google's Material Design.