Willkommen auf meiner Website!

Hier finden Sie Downloads und Anleitung zur Kellner-App

Einleitung

Einkaufsliste

Mit dieser Liste lässt sich ein Komplettsystem mit drei Ausgabestandorten (Getränke, Küche, Weinbar) aufbauen

AnzahlProduktUng. Preis
2WLAN-Router50 €
1Raspberry Pi 3b+120 €
1Raspberry Gehäuse groß6 €
1Kühlerset10 €
1SD Karte 32GB8 €
1Netzteil 5V 3A10 €

Erweiterungsoption A

AnzahlProduktUng. Preis
3Raspberry Pi Zero W150 €
3Raspberry Gehäuse klein9 €
3SD Karte 32GB24 €
3Netzteil 5V 3A30 €
3MicroUSB OTG Adapter30 €
3Epson TM-20ii (mit USB)510 €

Erweiterungsoption B

AnzahlProduktUng. Preis
3Munbyn Thermodrucker mit WiFi450 €

Übersicht

Demo

Hier geht es zur Demoapplikation mit der sie die gesamte Funktionalität testen können.

Konfiguration

Disclaimer

Ich werde hier nur die grobe Installation anführen. Es sollte bereits ein grundlegendes Vorwissen bestehen in den Bereichen Router-Konfiguration, Raspberry, Linux, usw.
Da vor allem auch jeder Router anders ist kann ich hier keine genaue Anleitung zur Routerkonfiguration geben.

Konfiguration Router f. Service (=Hauptrouter)

Der Hauptrouter verbindet über LAN bzw. WLAN die Raspberrys. Er wird einmalig konfiguriert, die Konfiguration sollte danach fix bleiben.
Für die Ersteinrichtung sollte dieser Router mit dem Internet verbunden sein!

Die LAN-IP-Adresse des Routers sollte auf 192.168.177.1 gesetzt werden, der DHCP-Bereich dementsprechend auf 192.168.177.0/24.

Sobald die Raspberries konfiguriert und mit diesem Router per WLAN bzw. LAN verbunden sind sollte man direkt am Router fixe DHCP-Leases für die Geräte vergeben:

Server-Raspberry LAN192.168.177.10
Server-Raspberry WLAN192.168.177.15
Raspberry Drucker Getränke WLAN192.168.177.20
Raspberry Drucker Speisen WLAN192.168.177.30
Raspberry Drucker Weinbar WLAN192.168.177.40

Die oben angeführten Adressen sind die Standardwerte der Applikation; verwendet man diese, erspart man sich nachträgliche Konfigurationsarbeit in der Applikation.

Konfiguration Router f. Kellner (=Hilfsrouter)

Die Aufgabe des Hilfsrouters ist es, die Handys/Clients/Kellner über WLAN mit dem Hauptrouter und damit mit den Raspberries zu verbinden. Dazu wird der Hilfsrouter mit Lan-Kabel über seinen Internet-Port mit einem LAN-Port des Hauptrouters verbunden. Über NAT erhalten dann die Clients Zugriff auf die Kellner-App.
Der Hilfsrouter kann jederzeit resettet werden um die SSID bzw. das Passwort bei jedem Fest neu zu setzen.
Bei größeren Anlagen können auf die gleiche Art weitere Router angeschlossen werden, um die WLAN-Netzabdeckung zu erhöhen.

Konfiguration Raspberry Pi

Im ersten Schritt wird ein Basis-Image vorbereitet, welches dann drei Mal kopiert wird. Diese drei Kopien sind dann fertige Images für die Raspberry Pi Zero W, an denen später die Thermodrucker angeschlossen werden. Notfalls kann auch direkt auf dem Server-Raspberry ein Thermodrucker angeschlossen werden und dieser zum Drucken verwendet werden.

  • Für die Einrichtung basteln wir den Raspberry Pi 3b ins Gehäuse und verbinden diesen mit einem LAN-Kabel mit dem Hauptrouter.
  • 'Raspberry Pi OS with desktop' runterladen und auf eine SD-Karte schreiben (zB mit dem Raspberry Pi Imager). Dabei über die erweiterten Einstellungen auch gleich die SSID und Passwort des Hauptrouter setzen, SSH aktivieren und Logindaten setzen
  • SD-Karte in den Raspy einlegen und booten. Der Raspy sollte nun über LAN und WLAN mit dem Router verbunden sein. Die IP-Adressen findet man über die Client-Liste des Routers
  • Wenn man schon im Webinterface des Routers ist kann man gleich die fixen DHCP-Leases eintragen
  • Wenn keine WLAN-Verbindung zustande kommt kann man sobald VNC aktiviert ist die WLAN-Settings nochmals prüfen
  • mit SSH verbinden und sudo raspi-config ausführen um VNC zu aktiveren. VNC wird später für das Klonen der SD-Karte benötigt. Zusätzlich sollte man noch die Lokalisierung auf de_at_utf8 setzen
  • sudo apt update und sudo apt upgrade ausführen um das System auf den aktuellen Softwarestand zu bringen (optional)
  • sudo apt install default-jdk ausführen um die Standard Java-Umgebung zu installieren
  • sudo mkdir /home/Kellner legt das Arbeitsverzeichnis an, dieses braucht noch die richtigen Rechte
  • sudo chmod 777 /home/Kellner setzt Schreibrechte für alle
  • mit WinSCP kopiert man nun die Datei 'RemotePrinter.jar' in das erstellte Kellner-Verzeichnis
  • jetzt noch mit sudo nano /etc/rc.local das Startupscript öffnen und noch vor dem exit 0 folgende Zeile reinschreiben java -jar /home/Kellner/RemotePrinter.jar &
  • Den Raspy neu starten. Zum Testen ob die Drucker-App funktioniert kann man einen Thermodrucker anstecken, es sollte nach kurzer Zeit ein Testdruck rauskommen
  • Bevor man im nächsten Schritt mit dem Klonen der SD-Karte beginnt, nochmals prüfen ob auch wirklich eine WLAN-Verbindung hergestellt ist
  • Nur bei Erweiterungsoption A: Wenn der Test OK war kann man nun über VNC mit dem Tool 'SD Card Copier' drei Kopien des Systems anfertigen. Diese SD-Karten kommen in die Pi Zero

Im nächsten Schritt wird noch die eigentliche Webapplikation installiert:

  • mit sudo apt install tomcat8 wird der Webserver installiert
  • mit sudo nano /etc/tomcat8/server.xml öffnet man die Konfigurationsdatei und tauscht dort Port 8080 durch 80 aus:
    ...Connector port="8080"... wird zu ...Connector port="80"...
  • mit WinSCP kopiert man nun die Datei 'Kellner.war' ins Verzeichnis /home/pi
  • mit sudo mv /home/pi/Kellner.war /var/lib/tomcat8/webapps wird die gerade hoichgeladene Datei ins web-Verzeichnis des Webservers verschoben
  • Der Webserver benötigt noch bestimmte root-Rechte um die Uhrzeit auf dem System ändern zu können
    • sudo visudo eingeben und in der Datei dann unter dem Punkt # User privilege specification folgende Zeile eintragen tomcat8 ALL=NOPASSWD: /usr/bin/date
    • mit sudo nano /lib/systemd/system/tomcat8.service öffnet man die Dienst-Konfiguration des Webservers und setzt den Parameter NoNewPrivileges auf false:
      NoNewPrivileges=true wird zu NoNewPrivileges=false
  • Nun kann man mit reboot das System neu starten. Danach sollte die Applikation unter http://192.168.177.10/Kellner erreichbar sein

Anleitung

Login

Die Applikation hat grundsätzlich keine Benutzerverwaltung. Der Zugriff wird lediglich über die WLAN-Zugangsdaten gesteuert. Jeder Benutzername ist korrekt. Um Zugang zur Konfiguration zu erhalten setzt man das Häkchen bei Administration.
Die Screensize sollte bei Handys auf 360 belassen werden. Bei Tablets kann man diese höher stellen.

Kellner

Der Kellner beginnt mit der Tischauswahl. Es sind von Haus aus 100 Tische (von 0 bis 99) angelegt. Danach gehts zur Produktauswahl. Der Tisch kann auch hier noch nachträglich geändert werden. Die Produkte sind in drei Kategorien aufgeteilt: Getränke, Speisen und Weinbar. Der Kellner klickt sich durch die Auswahl bis zur Schaltfläche 'hinzufügen'.
Sobald ein Produkt zur Bestellliste hinzugefügt wurde kann direkt auf der Übersicht die Anzahl angepasst werden.
Mit 'Bestellung senden' wird die Bestellung zu den entsprechenden Druckern gesendet und der Kellner kommt zum Abrechnungsmaske. Hier werden die abzurechnenden Positionen von der oberen Liste in die untere Liste geschoben. Es erscheint der zu zahlende Betrag. Diesen kann man 'abrechnen', 'anschreiben' oder 'offen' lassen. Eine neue Bestellung kann erst begonnen werden wenn alle Position ereldigt wurden.

Konfiguration

Die wichtigste Konfiguration is die Eingabe der Produktliste. Hier ein Beispiel für eine klassische einfache Getränkekonfiguration:
Cola#klein#200
Cola#klein gespritzt#200
Cola#groß#380
Cola#groß gespritzt#380

Mit dem #-Zeichen werden die einzelnen Auswahlebenen unterteilt. Die letzte Ebene ist immer der Preis in Cent. Die Anzahl der Ebenen ist nicht limitiert und muss auch nicht einheitlich sein.
Die erste Ebene wird auf dem Bon immer groß angeschrieben, die weiteren Ebenen kleiner. Der Kellner würde in der App zuerst den Punkt 'Cola' auswählen und hätte dann die Möglichkeit aus den 4 Unterebenen zu wählen.
Die Produkte können im laufenden Betrieb angepasst werden.

Die restliche Konfiguration ist selbsterklärend.

Demo

Hier geht es zur Demoapplikation mit der sie die gesamte Funktionalität testen können.

Downloads

Downloads

Kellner - Webapplikation

Kellner.war

Kellner - Druckservice

RemotePrinter.jar

F.A.Q

Frequently Asked Questions

Nein!

Mit Sicherheit nicht!

Wohl kaum!

Testimonials

What they are saying about us

Proin iaculis purus consequat sem cure digni ssim donec porttitora entum suscipit rhoncus. Accusantium quam, ultricies eget id, aliquam eget nibh et. Maecen aliquam, risus at semper.

Saul Goodman

Ceo & Founder

Export tempor illum tamen malis malis eram quae irure esse labore quem cillum quid cillum eram malis quorum velit fore eram velit sunt aliqua noster fugiat irure amet legam anim culpa.

Sara Wilsson

Designer

Enim nisi quem export duis labore cillum quae magna enim sint quorum nulla quem veniam duis minim tempor labore quem eram duis noster aute amet eram fore quis sint minim.

Jena Karlis

Store Owner

Fugiat enim eram quae cillum dolore dolor amet nulla culpa multos export minim fugiat minim velit minim dolor enim duis veniam ipsum anim magna sunt elit fore quem dolore labore illum veniam.

Matt Brandon

Freelancer

Quis quorum aliqua sint quem legam fore sunt eram irure aliqua veniam tempor noster veniam enim culpa labore duis sunt culpa nulla illum cillum fugiat legam esse veniam culpa fore nisi cillum quid.

John Larson

Entrepreneur

Team

Our hard working team

Wolfgang Buczolich

Chief Executive Officer

und Senior Software Developer in Einem