C3Cashdesk aka. Postix

Zu finden unter: https://github.com/c3cashdesk/postix

Erfolgreich genutzt für BBQ2018

Was braucht eine Kasse und was sind die Voraussetzungen der Serverseite?

Kassensystem:

  • PC oder Raspberry mit $LinuxDistro
  • Touchdisplay das unter $LinuxDistro funktioniert (Ubuntu scheint da ganz gut mit Touch zu können! → Way to go)
  • Chromium Webbrowser kann am besten mit Touch umgehen und ist desshalb zu empfehlen
  • QR-Code Reader (gute Erfahrungen mit WBS2001, ließt schnell auch von Displays und kostet relativ wenig)
  • Thermodrucker für Kassenzettel der Einfachheit halber eigenen sich Geräte die „Standard“ sind z.B. Epson TM-T20 oder TM-T88 optimal mit LAN Anschluss sonst mehr frickel!
  • Kassenlade mit elektrischer öffnung, wird vom Drucker getriggert, die Dinger sind alle standardisiert z.B. Metapace K-2 ist günstig, stabil und default bei vielen Kassensystem Anbietern.
  • Optional USB Num Pad oder ganze Tastatur um den Rückgeldrechner zu nutzen

Server:

  • Linux Server mit Ubuntu16.04 oder neuer
  • Python 3.5 ist voraussetzung für das Postix
  • cups, cups-bsd und lpr muss installiert sein
  • Drucker Treiber bei Epson laden und Installieren nicht nur die PPD!
  • Drucker unter CUPS einrichten und PPD manuell hinzufügen

Howto Setup the Server

  1. Ubuntu Server installieren (in dem fall 16.04 LTS Support bis 2021)
  2. bei der Installation von Ubuntu direkt OpenSSH Server mitinstallieren das macht alles einfacher!
  3. sudo apt update

    (Paketlisten updaten)

  4. sudo apt upgrade

    (Software Updates herunterladen und installieren)

  5. sudo locale-gen en_US.UTF-8
  6. sudo update-locale LANG=en_US.UTF-8
  7. sudo reboot
  8. sudo apt install python3.5 python3-pip
  9. sudo apt install git
  10. sudo apt install lpr
  11. sudo apt install cups-bsd
  12. sudo apt install screen
  13. git clone https://github.com/c3cashdesk/postix.git
  14. cd postix
  15. python3.5 -m pip install --upgrade setuptools pip
  16. sudo python3.5 -m pip install -r requirements.txt
  17. sudo python3.5 manage.py migrate
  18. sudo python3.5 manage.py createsuperuser
  19. screen sudo POSTIX_STATIC_ROOT=_static python3.5 manage.py runserver 10.100.0.11:8000

    die IP muss der IP des servers entsprechen →ifconfig

Ab jetzt sollte der Postix Server unter der IP auf dem Port 8000 erreichbar sein: Es gibt 4 Interfaces unter

  • ip:8000 →Kasseninterface
  • ip:8000/admin →django Admin Interface
  • ip:8000/backoffice → Admin Interface Postix
  • ip:8000/troubleshooter → Interface für Troubleshooter Angel

python manage.py export_redemptions gibt eine .json mit einlösungen aus die in Pretix importiert werden kann python manage.py shell gibt ne interaktive shell für Pretix

Import dann über

  • from pretix.base.models import Checkin, Event, OrderPosition
  • import dateutil.parser
  • import json
  • event = Event.objects.get(slugiexact='euer_event_slug') * with open('/path/to/file.json', 'r') as f: * data = json.load(f) * for d in data: * op = OrderPosition.objects.get(secret=d['secret'], orderevent=event)
  • Checkin.objects.get_or_create(position=op, datetime=dateutil.parser.parse(d['datetime']))
  • Zuletzt geändert: 23.07.2018 21:36
  • von Pascal