diff options
author | xengineering <mail2xengineering@protonmail.com> | 2020-10-19 17:37:34 +0200 |
---|---|---|
committer | xengineering <mail2xengineering@protonmail.com> | 2020-10-19 17:40:27 +0200 |
commit | 8c6cc785137489bb786eb00a895c633a1d51b932 (patch) | |
tree | 82878b79699f8f8230743048934646525c8814df | |
parent | dd41aae7363672316851ebbd35961ae2bc89ff4c (diff) | |
download | iot-barcode-scanner-8c6cc785137489bb786eb00a895c633a1d51b932.tar iot-barcode-scanner-8c6cc785137489bb786eb00a895c633a1d51b932.tar.zst iot-barcode-scanner-8c6cc785137489bb786eb00a895c633a1d51b932.zip |
Implement Keymap
-rwxr-xr-x[-rw-r--r--] | barcode_transmit_daemon.py | 21 | ||||
-rw-r--r-- | iot_barcode_scanner/static.py | 14 |
2 files changed, 28 insertions, 7 deletions
diff --git a/barcode_transmit_daemon.py b/barcode_transmit_daemon.py index 4edb72d..624550e 100644..100755 --- a/barcode_transmit_daemon.py +++ b/barcode_transmit_daemon.py @@ -4,6 +4,7 @@ """Executable to transmit the Barcode Data to MQTT without root Priviledges""" +from iot_barcode_scanner.static import KEYMAP import iot_barcode_scanner.config as config from iot_barcode_scanner.mqtt import MqttService @@ -20,15 +21,21 @@ def main(): mqtt_service = MqttService(cfg) mqtt_service.run() + barcode = "" + while True: with open(fifo_path, "r") as fifo: - text = fifo.read() - mqtt_service.client.publish( - topic, - payload=text, - qos=0, - retain=False - ) + keycode = fifo.read() + character = KEYMAP[keycode] + barcode += character + if character is "\n": + mqtt_service.client.publish( + topic, + payload=barcode, + qos=0, + retain=False + ) + barcode = "" except KeyboardInterrupt: pass diff --git a/iot_barcode_scanner/static.py b/iot_barcode_scanner/static.py index d81b00b..af76683 100644 --- a/iot_barcode_scanner/static.py +++ b/iot_barcode_scanner/static.py @@ -4,3 +4,17 @@ CONFIG_PATH = "/etc/xengineering.eu/iot_barcode_scanner/config.json" + +KEYMAP = { + "KEY_0": "0", + "KEY_1": "1", + "KEY_2": "2", + "KEY_3": "3", + "KEY_4": "4", + "KEY_5": "5", + "KEY_6": "6", + "KEY_7": "7", + "KEY_8": "8", + "KEY_9": "9", + "KEY_ENTER": "\n", +} |