diff options
| author | lejeune quentin <qle@odoo.com> | 2019-08-21 17:25:07 +0200 |
|---|---|---|
| committer | lejeune quentin <qle@odoo.com> | 2019-08-23 12:21:02 +0200 |
| commit | 84de7cbcb623e04994c768fa6023366a945aea8a (patch) | |
| tree | 3c0d485e44a5813f805bd17de0bdc4a21fc05f8f /addons/hw_drivers/controllers/driver.py | |
| parent | dc625b2036950792a7151c2e4f5faa5d1484312f (diff) | |
[ADD] iot: Improve usage of helpers in IoT Box
With this commit we move the helpers to a separate file for
easier access from the IoT Box
Diffstat (limited to 'addons/hw_drivers/controllers/driver.py')
| -rwxr-xr-x | addons/hw_drivers/controllers/driver.py | 48 |
1 files changed, 8 insertions, 40 deletions
diff --git a/addons/hw_drivers/controllers/driver.py b/addons/hw_drivers/controllers/driver.py index 65b57c43815..95b821bbcf8 100755 --- a/addons/hw_drivers/controllers/driver.py +++ b/addons/hw_drivers/controllers/driver.py @@ -5,7 +5,6 @@ from threading import Thread, Event, Lock from usb import core from gatt import DeviceManager as Gatt_DeviceManager import subprocess -import netifaces import json from re import sub import urllib3 @@ -23,43 +22,12 @@ import ctypes from odoo import http, _ from odoo.modules.module import get_resource_path +from odoo.addons.hw_drivers.tools import helpers _logger = logging.getLogger(__name__) #---------------------------------------------------------- -# Helper -#---------------------------------------------------------- - -def get_mac_address(): - try: - return netifaces.ifaddresses('eth0')[netifaces.AF_LINK][0]['addr'] - except: - return netifaces.ifaddresses('wlan0')[netifaces.AF_LINK][0]['addr'] - -def get_ip(): - try: - return netifaces.ifaddresses('eth0')[netifaces.AF_INET][0]['addr'] - except: - return netifaces.ifaddresses('wlan0')[netifaces.AF_INET][0]['addr'] - -def read_file_first_line(filename): - path = Path.home() / filename - if path.exists(): - with path.open('r') as f: - return f.readline().strip('\n') - return '' - -def get_odoo_server_url(): - return read_file_first_line('odoo-remote-server.conf') - -def get_token(): - return read_file_first_line('token') - -def get_version(): - return '19_07' - -#---------------------------------------------------------- # Controllers #---------------------------------------------------------- @@ -98,7 +66,7 @@ class StatusController(http.Controller): 1 - url of odoo DB 2 - token. This token will be compared to the token of Odoo. He have 1 hour lifetime """ - server = get_odoo_server_url() + server = helpers.get_odoo_server_url() image = get_resource_path('hw_drivers', 'static/img', 'False.jpg') if server == '': token = b64decode(token).decode('utf-8') @@ -268,14 +236,14 @@ class Manager(Thread): """ This method send IoT Box and devices informations to Odoo database """ - server = get_odoo_server_url() + server = helpers.get_odoo_server_url() if server: iot_box = { 'name': socket.gethostname(), - 'identifier': get_mac_address(), - 'ip': get_ip(), - 'token': get_token(), - 'version': get_version() + 'identifier': helpers.get_mac_address(), + 'ip': helpers.get_ip(), + 'token': helpers.get_token(), + 'version': helpers.get_version() } devices_list = {} for device in iot_devices: @@ -473,7 +441,7 @@ printers = conn.getPrinters() cups_lock = Lock() # We can only make one call to Cups at a time mpdm = MPDManager() -terminal_id = read_file_first_line('odoo-six-payment-terminal.conf') +terminal_id = helpers.read_file_first_line('odoo-six-payment-terminal.conf') if terminal_id: try: subprocess.check_output(["pidof", "eftdvs"]) # Check if MPD server is running |
