Benutzer-Werkzeuge

Webseiten-Werkzeuge


infrastruktur:lounge:kiosk

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
infrastruktur:lounge:kiosk [2019-05-24 00:11] – Beginn Dokumentation v5 xqinfrastruktur:lounge:kiosk [2019-05-24 02:24] – domainname, user xq
Zeile 1: Zeile 1:
-======= kiosk =======                ++====== kiosk ======             
 {{tag> hardware software kiosk}} {{tag> hardware software kiosk}}
 +Das Shackspace Informationsterminal (kurz: kiosk) bietet Zugriff auf häufig benötigte Funktionen und Informationen des shack. Diese sind über eine einfache Menüstruktur schnell zu erreichen und durch die Position im Zentrum der Lounge auch physisch in Reichweite.
  
-Das Shackspace Informationsterminal+DNS entry: lounge.kiosk.shack \\ 
 +username:  shack 
 + 
 +---- 
 +{{ :infrastruktur:lounge:kiosk-menu.jpg?300|}} 
 +===== Features =====
  
-====== Features ====== 
   * [[infrastruktur/licht|Lichtsteuerung]]   * [[infrastruktur/licht|Lichtsteuerung]]
   * Übersicht über die nächsten U-Bahnen   * Übersicht über die nächsten U-Bahnen
Zeile 12: Zeile 17:
   * Fancy Screensaver   * Fancy Screensaver
  
 +----
 +{{ :infrastruktur:lounge:kiosk-light.jpg?300|}}
 +==== Lichtsteuerung ====
 +Hier kann das Licht in der Lounge bequem an- und ausgeschaltet werden.
  
-===== Lichtsteuerung =====+---- 
 +{{ :infrastruktur:lounge:kiosk-tram.jpg?300|}} 
 +==== U-Bahnen ==== 
 +Diese Ansicht zeigt die nächsten vier U-Bahnen bzw. Nachtbusse, welche an der Haltestelle "Im Degen" in Richtung Hedelfingen/Untertürkheim bzw. Innenstadt fahren.
  
-===== U-Bahnen =====+---- 
 +{{ :infrastruktur:lounge:kiosk-power.jpg?300|}} 
 +==== Stromverbrauch ====
  
-===== Stromverbrauch =====+Hier wird der aktuelle Stromverbrauch des shack angezeigt. Einsehbar ist der gesamte Stromverbrauch sowie der Verbrauch über die einzelnen Phasen verteilt. Die Ansicht kann über diverse Zeiträume gezoomt werden.
  
-===== volumio Playback =====+---- 
 +==== volumio Playback ===== 
 +Der obere Teil des Hauptmenüs zeigt an, was aktuell im [[infrastruktur/audio_video/volumio]] wiedergegeben wird. Zudem kann die Wiedergabe auch minimal gesteuert werden: \\  
 +Es besteht die Möglichkeit, die Wiedergabe zu pausieren bzw. wiederaufzunehmen sowie das aktuell abgespielte Lied zu überspringen.
  
-===== Keyholder =====+---- 
 +==== Keyholder ===== 
 +Im Hauptmenü wird unten links der Name des aktuellen Keyholders angezeigt.
  
-===== Screensaver =====+---- 
 +{{ :infrastruktur:lounge:kiosk-screensaver.jpg?300|}} 
 +==== Screensaver =====
 Erfüllt keine Funktion, soll aber Aufmerksamkeit erregen. Ist auf dem 9ten shack-bday entstanden. Erfüllt keine Funktion, soll aber Aufmerksamkeit erregen. Ist auf dem 9ten shack-bday entstanden.
  
-======  Entwicklung ======+ 
 +---- 
 +===== Entwicklung ===== 
 + 
 +==== System ==== 
 +Der kiosk_v5 läuft auf einem NixOS. Dieses meldet automatisch den User //shack// an, welcher dann eine **i3**-Session startet. 
 + 
 +Der **i3** startet dann die Kiosk-Anwendung. 
 + 
 +Besonderheit: Der **i3** benutzt keinerlei Bars, was dazu führt, dass die Anwendung in ein "quasi-Vollbild" gestartet wird. 
 + 
 +Configs/Dokumentation: https://github.com/MasterQ32/shack_kiosk_v5_konfig 
 + 
 +==== Anwendung ==== 
 Entwickelt mit C++17 auf Basis von SDL2 als Renderer und libcurl als Web-Backend. Benutzt nix sowie qmake als Buildsystem. Entwickelt mit C++17 auf Basis von SDL2 als Renderer und libcurl als Web-Backend. Benutzt nix sowie qmake als Buildsystem.
 +
 +=== Allgemeines ===
  
 Source-Repository: https://github.com/MasterQ32/shack_kiosk_v5 Source-Repository: https://github.com/MasterQ32/shack_kiosk_v5
  
-Aux/Dokumentation: https://github.com/MasterQ32/shack_kiosk_v5_konfig+Dependencies: 
 +  * [[https://github.com/nlohmann/json|nlohmann/json]] (git submodule) 
 +  * [[https://github.com/nothings/stb|nothings/stb]] (git submodule) 
 +  * sdl2 (pkg-config) 
 +  * sdl2_image (pkg-config) 
 +  * sdl2_ttf (pkg-config) 
 +  * libcurl (pkg-config) 
 + 
 +=== Software-Architektur === 
 + 
 +Die Anwendung hat eine schwache Modularisierung: 
 +  * UI-Module (mainmenu, screensaver, powerview, …), welche jeweils eine Bildschirm-Seite darstellen 
 +  * Hilfmodule (fontrenderer, http_client, …)
  
 +Die Module sind untereinander nur mit der notwendigen API verbunden und haben nach außen hin eine kleine Schnittstelle. Innerhalb eines Moduls ist nicht mehr als die notwendige Abstraktion getätigt (KISS-Prinzip).
  
-====== Historie ======+Die Initialisierung eines UI-Moduls ist etwas unorthodox (Singleton-Pattern mit "init on first access"), funktioniert aber für diesen Anwendungsfall problemlos. 
 +===== Historie ======
  
 Siehe [[project:anytouchkiosk|IBM AnyTouch Kiosk]] Siehe [[project:anytouchkiosk|IBM AnyTouch Kiosk]]
infrastruktur/lounge/kiosk.txt · Zuletzt geändert: 2021-03-24 16:59 von 192.168.146.218