Commit 69c8c6fd by mihkevich

Merge branch 'tkinter' of https://gitlab.tbcenter.ru/mix/easy-media-controller into tkinter

parents face9ab0 83ebbd0e
...@@ -3,6 +3,8 @@ from time import sleep ...@@ -3,6 +3,8 @@ from time import sleep
import os, sys import os, sys
import evdev import evdev
import subprocess import subprocess
from threading import Thread
log = Log("key_listener") log = Log("key_listener")
def call_main(): def call_main():
...@@ -17,8 +19,8 @@ keyboard_device = None ...@@ -17,8 +19,8 @@ keyboard_device = None
call_main() call_main()
try: try:
"""
for i in range(6): for i in range(6):
string_device = "/dev/input/event"+str(i) string_device = "/dev/input/event"+str(i)
log.info(string_device) log.info(string_device)
...@@ -29,9 +31,18 @@ try: ...@@ -29,9 +31,18 @@ try:
log.info("Keyboard device detected") log.info("Keyboard device detected")
keyboard_device = device keyboard_device = device
break break
"""
string_device = "/dev/input/event"+str(0)
log.info(string_device)
device = evdev.InputDevice(string_device)
keyboard_device=device
for event in keyboard_device.read_loop(): for event in keyboard_device.read_loop():
if event.type == evdev.ecodes.EV_KEY and event.value == 0 and event.code == 102: if event.type == evdev.ecodes.EV_KEY and event.value == 0 and event.code == 41:
call_main() log.info("event_code: {}".format(event.code))
th = Thread(target=call_main())
th.start()
sleep(2)
except Exception as e: except Exception as e:
log.error(log.get_line()) log.error(log.get_line())
\ No newline at end of file
...@@ -13,6 +13,7 @@ from tkinter import messagebox ...@@ -13,6 +13,7 @@ from tkinter import messagebox
log = Log("main") log = Log("main")
os.environ["DISPLAY"]=":0"
class App(tkinter.Tk): class App(tkinter.Tk):
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
...@@ -51,11 +52,11 @@ class App(tkinter.Tk): ...@@ -51,11 +52,11 @@ class App(tkinter.Tk):
file_media_name = sheet.cell(row=cell.row, column=3).value file_media_name = sheet.cell(row=cell.row, column=3).value
log.info(file_media_name) log.info(file_media_name)
command = "vlc " + file_media_name command = "vlc " + file_media_name
log.info(command) log.info(command)
app.destroy() app.destroy()
os.system.__call__(command) subprocess.Popen(command.split())
return return
log.info("Запись не найдена") log.info("Запись не найдена")
...@@ -73,4 +74,4 @@ try: ...@@ -73,4 +74,4 @@ try:
app.mainloop() app.mainloop()
except Exception as e: except Exception as e:
log.error(log.get_line()) log.error(log.get_line())
sys.exit() sys.exit()
\ No newline at end of file
...@@ -3,6 +3,8 @@ import os ...@@ -3,6 +3,8 @@ import os
import traceback import traceback
import datetime import datetime
import sys import sys
from time import sleep
class Log: class Log:
def __init__(self, name_log): def __init__(self, name_log):
...@@ -23,7 +25,13 @@ class Log: ...@@ -23,7 +25,13 @@ class Log:
self.log = logging.getLogger("my_log") self.log = logging.getLogger("my_log")
self.log.setLevel(logging.INFO) self.log.setLevel(logging.INFO)
self.FH = logging.FileHandler(self.logfile, encoding='utf-8') try:
self.FH = logging.FileHandler(self.logfile, encoding='utf-8')
except PermissionError as e:
sleep(1)
self.FH = logging.FileHandler(self.logfile[:-4]+"perm_err.log", encoding='utf-8')
## задаем базовый формат сообщения в логе ## задаем базовый формат сообщения в логе
self.basic_formater = logging.Formatter('%(asctime)s : [%(levelname)s] : %(message)s') self.basic_formater = logging.Formatter('%(asctime)s : [%(levelname)s] : %(message)s')
self.FH.setFormatter(self.basic_formater) self.FH.setFormatter(self.basic_formater)
......
#!/bin/bash #!/bin/bash
/usr/bin/python3 /home/user/dev/easy-media-controller/main.py /usr/bin/python3 /home/pi/dev/easy-media-controller/key_listener.py
exit;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment