Die Studien-Computer werden mit einer individualisierten Version von NixOS (Linux-Distribution) betrieben. Die Konfiguration ist ein Open Source Projekt und soll zukünftig eine Plattform zur digitalen Verarbeitung endoskopie-assoziierter Datensätze werden.
Das Framework umfasst eine Datenbank zur Verarbeitung der endoskopischen Datensätze, umfassende Sicherheitsmechanismen (Verschlüsselung der Systeme, Strenge Zugriffskontrolle, Verschlüsselung aller Verbindungen) sowie Netzwerkübergreifende Funktionalitäten wie ein Reverse-Proxy zur sicheren Verteilung des Traffics (Nginx), ein zentraler Authentifizierungs-Mechanismus (Keycloak) sowie eine interne Cloud mit serverseitiger Verschlüsselung (Nextcloud).
Im Kontext der Studie soll das entwickelte Framework erstmals erprobt werden, um möglichst effizient Daten zu erheben und zu verarbeiten. Mittelfristig ist eine Anbindung an Klinik-Informations-Systeme vorgesehen. Zum jetzigen Zeitpunkt erfolgt der Datenimport mit möglichst "universellen" Formaten (rohe Video-Datei, .pdf Befunde). Diese Dateien werden vom Studien-System importiert und verarbeitet, um die Datensätze zusammenzuführen und personenbezogene Daten zu extrahieren.
Das Ergebnis muss durch das lokale Studienteam freigegeben werden, bevor die endgültige Anonymisierung und Übertragung in die Studienzentrale erfolgt.
Der Endoreg Client Manager ist eine Django-Webanwendung zur Verwaltung von Diensten. Er ermöglicht das Ausführen, Überwachen und Steuern verschiedener automatisierter Prozesse und bietet eine Schnittstelle zur Datenverarbeitung und -analyse in klinischen Umgebungen. Dafür werden bspw. Celery Workers genutzt, die zeitabhängige Aufgaben der Datenspeicherung und Verarbeitung erledigen.
Hauptfunktionen
Dienste verwalten: Starten, Stoppen und Überwachen von Hintergrundprozessen.
Benutzerverwaltung: Erstellung von Superusern und Verwaltung von Benutzerrechten.
Datenmigration: Unterstützung bei der Migration von Daten in die zentrale Studiendatenbank Endoreg-DB.
Integration mit Celery: Nutzung von Celery für asynchrone Aufgaben und geplante Aufgaben.