summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorAntoine Prieels <anp@odoo.com>2019-08-27 08:27:03 +0000
committerAntoine Prieels <anp@odoo.com>2019-09-04 13:10:03 +0000
commit70006311d043198db25d6433c02a65364379fe16 (patch)
treee532b61e5020a47b2c98a696b657cdff8b321661 /addons
parent24c93d3f7f2e17674a59e81764684fe4493403f0 (diff)
[IMP] hw_drivers, hw_posbox_homepage: get_ssid helper
Create a helper to get the ssid of the wifi to which the Box is connected.
Diffstat (limited to 'addons')
-rw-r--r--addons/hw_drivers/drivers/PrinterDriver.py7
-rw-r--r--addons/hw_drivers/tools/helpers.py5
-rw-r--r--addons/hw_posbox_homepage/controllers/main.py2
3 files changed, 10 insertions, 4 deletions
diff --git a/addons/hw_drivers/drivers/PrinterDriver.py b/addons/hw_drivers/drivers/PrinterDriver.py
index ec769de7599..68d023acb93 100644
--- a/addons/hw_drivers/drivers/PrinterDriver.py
+++ b/addons/hw_drivers/drivers/PrinterDriver.py
@@ -17,6 +17,7 @@ from PIL import Image, ImageOps
from odoo import http, _
from odoo.addons.hw_drivers.controllers.driver import event_manager, Driver, PPDs, conn, printers, cups_lock, iot_devices
+from odoo.addons.hw_drivers.tools import helpers
from odoo.addons.hw_proxy.controllers.main import drivers as old_drivers
_logger = logging.getLogger(__name__)
@@ -245,14 +246,14 @@ class PrinterDriver(Driver):
homepage = ''
hosting_ap = os.system('pgrep hostapd') == 0
- ssid = subprocess.check_output('iwconfig 2>&1 | grep \'ESSID:"\' | sed \'s/.*"\\(.*\\)"/\\1/\'', shell=True).decode('utf-8').rstrip()
+ ssid = helpers.get_ssid()
if hosting_ap:
with open('/root_bypass_ramdisks/etc/hostapd/hostapd.conf') as config_file:
lines = config_file.readlines()
ssid = lines[1].split("=")[1].replace("\n", "")
- wlan = 'Wireless network:\n%s\n\n' % ssid
+ wlan = '\nWireless network:\n%s\n\n' % ssid
elif ssid:
- wlan = 'Wireless network:\n%s\n\n' % ssid
+ wlan = '\nWireless network:\n%s\n\n' % ssid
interfaces = ni.interfaces()
ips = []
diff --git a/addons/hw_drivers/tools/helpers.py b/addons/hw_drivers/tools/helpers.py
index a35aa0463de..9cc25440304 100644
--- a/addons/hw_drivers/tools/helpers.py
+++ b/addons/hw_drivers/tools/helpers.py
@@ -62,6 +62,11 @@ def get_mac_address():
except:
return netifaces.ifaddresses('wlan0')[netifaces.AF_LINK][0]['addr']
+def get_ssid():
+ process_iwconfig = subprocess.Popen(['iwconfig'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ process_grep = subprocess.Popen(['grep', 'ESSID:"'], stdin=process_iwconfig.stdout, stdout=subprocess.PIPE)
+ return subprocess.check_output(['sed', 's/.*"\\(.*\\)"/\\1/'], stdin=process_grep.stdout).decode('utf-8').rstrip()
+
def get_odoo_server_url():
return read_file_first_line('odoo-remote-server.conf')
diff --git a/addons/hw_posbox_homepage/controllers/main.py b/addons/hw_posbox_homepage/controllers/main.py
index b1353e98cf1..2951857fc3e 100644
--- a/addons/hw_posbox_homepage/controllers/main.py
+++ b/addons/hw_posbox_homepage/controllers/main.py
@@ -63,7 +63,7 @@ class IoTboxHomepage(web.Home):
hostname = str(socket.gethostname())
mac = get_mac()
h = iter(hex(mac)[2:].zfill(12))
- ssid = subprocess.check_output('iwconfig 2>&1 | grep \'ESSID:"\' | sed \'s/.*"\\(.*\\)"/\\1/\'', shell=True).decode('utf-8').rstrip()
+ ssid = helpers.get_ssid()
wired = subprocess.check_output('cat /sys/class/net/eth0/operstate', shell=True).decode('utf-8').strip('\n')
if wired == 'up':
network = 'Ethernet'