Home » Entwicklung » Expo­nate API

Expo­nate API

Die Expo­nate API wurde spezi­fisch zur Über­wa­chung und Steuerung von digitalen Expo­naten in Ausstellungen und Museen entwickelt.

Stan­dard-Medi­en­steue­rungen können den PC eines Expo­nats ein- oder ausschalten, doch viele Museumsbetreiber*innen wünschen sich mehr Möglich­keiten zur Steuerung, wie z. B. die Soft­ware auf dem PC zu über­wa­chen.

Das Exponat funk­tio­niert nicht mehr!

NeuroomNet kann unter­scheiden, ob der PC oder die Soft­ware nicht mehr antworten. Vom NeuroomNet Monitoring aus können Sie in dem Fall den Neustart der Soft­ware veran­lassen. Das geht schneller als der Neustart des ganzen PCs.
Auch ist es für eine dauer­hafte Fehler­be­sei­ti­gung wert­voll zu wissen, auf welcher Seite der Fehler lag.

Wie funk­tio­niert das?

Die Exponat-Anwendung verbindet sich per Netz­werk über die bereit­ge­stellte Schnitt­stelle mit dem NeuroomNet Server. Expo­nate werden über Vend­orIDs eindeutig iden­ti­fi­ziert.

Es gibt Stan­dard-Aktionen, die NeuroomNet dafür implementiert hat, zum Beispiel:

  • User an/abmelden
  • Expo­nate-Soft­ware neu starten
  • Soft­ware neu starten

Die Entwickler*innen der Expo­nate können die Funk­tio­na­lität dieser Aktionen in ihrer Soft­ware imple­men­tieren. NeuroomNet sendet dafür nur den Trigger.

Zusätz­lich können indi­vi­du­elle Events und Aktionen ange­meldet werden. Diese werden dann im NeuroomNet Monitoring und in den NeuroomNet Skript Blöcken sichtbar und ausführbar.

Hinweis!

Hier ist die Abgren­zung zu Soft­ware API. Die Soft­ware API bietet eben­falls auf einem Low-Level Protokoll die Möglich­keit an, Ereig­nisse und Aktionen anzu­melden, aber eben nur das und keine vorde­fi­nierten Proto­kolle für Benutzer Anmel­dungen etc.

Tech­ni­sche Details

Die Imple­men­tie­rung der API erfolgt auf dem NeuroomNet Server, zu dem sich die Anwen­dungen der Expo­nate-Hersteller verbinden. Zur Kommu­ni­ka­tion wird das WebSo­cket-Protokoll (ws:// nach RFC 6455) verwendet, das eine Reihe von Vorteilen bietet: Das Protokoll baut auf TCP auf (verbin­dungs­ori­en­tiert) und gewähr­leistet den bidi­rek­tio­nalen Austausch von Nachrichten­paketen. Zudem gibt es für sehr viele Laufzeit­umgebungen (Betriebs­system und Program­mier­sprache) schon fertige Biblio­theken.
Der Server wartet über einen vorde­fi­nierten Port auf Verbin­dungs­an­fragen. Anwen­dungen müssen sich, sobald sie bereit sind, mit dem Server verbinden.
Die über­tra­genen Daten­pa­kete bestehen aus JSON-Strings.
Es wird empfohlen, die IP-Adresse des Servers bzw. eher seinen über ein DNS aufzu­lö­senden Namen und den Port in einer anwendungs­spezifischen Konfi­gu­ra­ti­ons­datei zu hinter­legen, um ggfs. notwen­dige Anpas­sungen einfach durch­führen zu können.

PING — Bist Du noch da?

Nach dem Verbinden/Anmelden eines Expo­nats am Server wird dieser in regel­mä­ßigen Abständen den Status der Anwendung bzw. des Expo­nats abfragen, um Fehler­zu­stände in der Medien­steuerung visua­li­sieren zu können und damit den Ausstellungsmitarbeiter*innen die Möglich­keit zum Beheben des Fehlers zu geben. Falls die Anwendung hängt und keine Antwort gibt oder die WebSo­cket-Verbin­dung getrennt wird, wird das Exponat als „OFFLINE“ gemeldet. Ein „Ok“ darf die Anwendung hingegen nur zurück­geben, wenn alle Komponenten einwand­frei arbeiten. Eine Expo­nate Soft­ware kann aber auch indi­vi­du­elle Fehler melden wie z. B. “Kein Papier mehr” oder “Ange­schlos­sene Kamera funk­tio­niert nicht”.

Besucher*innen-Identifikation mittels RFID oder QR-Code

Das System ist dafür vorge­rüstet, Anmel­de­infor­ma­tionen von Besucher*innen zu verwalten. Hier exem­pla­risch beschrieben als Anmeldung per RFID-Armband.
Der*die Besucher*in meldet sich an einem Ausstel­lungs­gerät (Exponat) an, indem er*sie dessen RFID-Armband an den RFID-Reader des Expo­nats hält. Der RFID-Reader über­mit­telt die erfasste ID des Armbands an das System, welches dies per API der zuge­ord­neten Anwendung des Expo­nate-Herstel­lers mitteilt. Die Anwendung wird daraufhin die Besucher*innen-Interaktion des Expo­nats starten (Spiel, Information o. ä.). Ist diese beendet (, ob regulär durch Ende aller Aktionen, durch expli­ziten, manu­ellen Abbruch oder Timeout), wird eine entspre­chende Information an das System geschickt.

Wenn im Rahmen des Ablaufs der Besucher*innen-Interaktion eine Bestä­ti­gung eines Vorgangs per RFID-Armband notwendig wird, wird auf dieselbe Art und Weise diese Information an die Anwendung über­mit­telt. Die Anwendung muss anhand ihres Status entscheiden, ob es sich um die Bestä­ti­gung, eine Neuan­mel­dung oder auch einen Besucher*innenwechsel handelt.

Besucher*innen-Identifikation selbst imple­men­tieren

Was ist der Vorteil bei der Verwendung der NeuroomNet Expo­nate API?

Schließ­lich könnte jede Anwendung auch selbst die Kommu­ni­ka­tion mit einem RFID oder QR-Code Leser imple­men­tieren.

  • Es ist oft so, dass mehrere Firmen die Expo­nate-Soft­waren für eine Ausstel­lung schreiben. Das hieße also, dass jede Firma die Anwendung einmal selbst bauen muss — die gleiche Arbeit also mehr­fach gemacht werden muss.
  • Es fehlt die zentrale Instanz, zu entscheiden, ob die ID über­haupt gültig ist.
  • Es können zentrale Statis­tiken erstellt werden über die Verwendung von Expo­naten.
  • Bei einem Gerä­te­tausch (RFID defekt) und geän­derter Hard­ware oder Firm­ware müssten alle Anwen­dungen ange­passt werden.
  • Dieselbe Tech­no­logie kann im Gebäude für andere Appli­ka­tionen wie z. B. Zutritts­kon­trolle oder zur Steuerung von Besucher*innenführungen verwendet werden.

Für mehr Beispiele und Erläu­te­rungen werfen Sie einen Blick in unsere Dokumentation.