Kassomat: Unterschied zwischen den Versionen
Bild hinzugefügt, Videos entfernt, da nicht mehr verfügbar |
|||
(171 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Datei:Kassomat 2022.jpg|mini|rechts|Kassomat]] | |||
== | {{Projekt | ||
|image=KASSOMAT.png | |||
|involved=[[User:anlumo]] [[User:m68k]] [[User:ripper]] [[User:phaer]] [[User:hetti]] | |||
|startdate=XX.10.2012 | |||
|status=in progress | |||
|wtf=box which changes banknotes into coins | |||
}} | |||
== Kassomat == | |||
payoutd controls the hardware and feeds events into redis queues where other tools may pick them up. | |||
Changeomatic listens to events in those redis queues and allows users to change banknotes into coins. | |||
The protocol is documented in the [https://github.com/metalab-kassomat/kassomat-payout/blob/master/docs/overview.md payoutd repository]. People who are interested in implementing a more advanced POS system are very welcome to do so! :) | |||
[ | There is now an [https://github.com/metalab-kassomat umbrella organization] on github which contains all the sub-projects listed below. | ||
'''''Please note:''' From 6/2021 on the manufacturer of Smart Hopper (coin unit) and NV200 (banknotes) will no longer provide new currency or firmware updates. No spare parts, too.'' [https://metalab.at/wiki/Datei:Innovative_Technology_Ltd_-_Obsolete_Products_Notification.pdf cf. PDF] | |||
== | == Kassomat/VM == | ||
Instead of installing a lot of packages and requirements you could opt to use [https://www.virtualbox.org VirtualBox] and [https://www.vagrantup.com Vagrant]. The [https://github.com/metalab-kassomat/kassomat-vm kassomat-vm] repository contains all the necessary files to get a fully provisioned virtual machine (it is even possible to plug the actual hardware into your host and use it from inside the vm). | |||
== | == Components == | ||
* '''Changeomatic''' | |||
** [https://github.com/metalab-kassomat/kassomat-changeomatic Source] | |||
** Written in Java, can be built (and run) with [https://maven.apache.org/ Maven] | |||
*** build: <code>mvn install</code> | |||
*** run: <code>mvn exec:java -Dexec.mainClass="at.metalab.changeomatic.ChangeomaticMain"</code> | |||
** UI: Graphical Swing Frontend | |||
** libs | |||
*** [http://redisson.org/ Redisson] (Redis client) | |||
*** [https://github.com/FasterXML/jackson Jackson] (JSON library) | |||
* '''Maintenance Mode Application''' | |||
** [https://github.com/metalab-kassomat/kassomat-scripts Source] | |||
** Written in Python | |||
*** set the coin levels: <code>./kassomat-set-coin-levels.py</code> | |||
*** count the coins (n.b. '''this will dump all coins through the bottom opening!'''): <code>./kassomat-count-coins.py</code> | |||
** UI: Console interface | |||
** libs | |||
*** [https://pypi.python.org/pypi/redis redis] | |||
* '''Payout''' | |||
** [https://github.com/metalab-kassomat/kassomat-payout Source] | |||
** Written in C, can be built with make | |||
** Linux daemon | |||
** [https://github.com/metalab-kassomat/kassomat-payout/blob/master/docs/overview.md JSON API] (accessible via Redis) | |||
** UI: none | |||
** libs | |||
*** [https://github.com/redis/hiredis hiredis] (Redis client) | |||
*** [http://libevent.org libevent2] (Event Dispatching) | |||
*** [http://www.digip.org/jansson/ libjansson] (JSON library) | |||
*** [https://sourceforge.net/projects/libuuid/ libuuid] | |||
*** ITL example code (aka "vendor hardware library") | |||
* | * '''Payout Simulator''' ''for development without the real hardware'' | ||
* | ** [https://github.com/metalab-kassomat/kassomat-payout-simulator Source] | ||
* | ** Written in Java, can be built (and run) with [https://maven.apache.org/ Maven] | ||
* | *** build: <code>mvn install</code> | ||
* | *** run: <code>mvn exec:java -Dexec.mainClass="at.metalab.payoutsim.PayoutSimMain"</code> | ||
* | ** UI: Graphical Swing Frontend | ||
* | ** libs | ||
*** [http://redisson.org/ Redisson] (Redis client) | |||
*** [https://github.com/FasterXML/jackson Jackson] (JSON library) | |||
* '''[http://redis.io/ Redis]''' | |||
** message broker between the different components (Changeomatic, Payout and the Maintenance Mode Application) | |||
** not used as a datastore! | |||
[[Datei:kassomat-overview.png|500px|thumb|left|Overview of the various components]] | |||
[[Kategorie:Projekte]] | [[Kategorie:Projekte]] |