Коммит cc0b04cb создал по автору Леляев Петр Алексеевич's avatar Леляев Петр Алексеевич
Просмотр файлов

Проверка активности демона через systemctl, а не надпись на кнопке

владелец 2ab6a21f
......@@ -32,7 +32,8 @@ if __name__ == '__main__':
else:
filename = f"/tmp/school-ringer/log.txt"
logging.basicConfig(
filename=f"{filename}",
# filename=f"{filename}",
filename=f"/home/user/.config/school-ringer/log.txt",
format=u'%(asctime)s %(filename)s [LINE:%(lineno)d] [%(funcName)s()] #%(levelname)-15s %(message)s',
level=logging.INFO,
)
......
......@@ -92,6 +92,7 @@ class AllSchedules:
}
}
self._write(self.schedules)
run_command(f'chmod 644 {self.filename}')
logging.info(f'Файла с расписаниями не было. Создан новый. Расписания: {self.schedules}')
def __getitem__(self, item: str) -> Schedule:
......@@ -162,7 +163,7 @@ class AllSchedules:
with open(tempfile, 'w', encoding='utf-8') as file:
file.write(dumps(value, indent=4, ensure_ascii=False))
logging.info(f'Расписания записаны в файл {tempfile}')
run_command(f'pkexec mv {tempfile} {self.filename}')
run_command(f'pkexec sh -c "mv {tempfile} {self.filename} && chmod 644 {self.filename}"')
logging.info(f'Расписания перенесены в {self.filename}')
except KeyError:
logging.info('[error] Ошибка записи в файл')
......
......@@ -198,15 +198,13 @@ class CallsSettings(QWidget):
"""
Включение и выключение фоновой службы, запускающей звонки
"""
if self.btn_switch_service.text() == 'Выключить сервис':
run_command('pkexec sh -c "systemctl stop school-ringer.service ; disable school-ringer.service"')
if run_command('systemctl is-active school-ringer.service').strip() == 'active':
run_command('pkexec systemctl disable --now school-ringer.service')
self.btn_switch_service.setText('Включить сервис')
logging.info(f'Сервис выключен')
# self.real_next_call_label.setText('Сервис выключен')
else:
self.btn_switch_service.setText('Выключить сервис')
run_command('pkexec sh -c "systemctl restart school-ringer.service ; '
'systemctl enable school-ringer.service"')
run_command('pkexec systemctl enable --now school-ringer.service')
logging.info(f'Сервис включён')
def update_active_schedules(self, string_of_schedules) -> None:
......@@ -275,7 +273,7 @@ class CallsSettings(QWidget):
f'{dlg.shuffle_checkbox.isChecked()}"',
shell=True)
if cmd.returncode == 0:
self.music_playing_thread.start()
# self.music_playing_thread.start()
self.play_music_on_breaks_btn.setText('Не играть музыку')
self.real_music_on_breaks_status_label.setText(f'Играет из папки {music_folder}')
self.is_breaks_music_on = True
......@@ -283,7 +281,7 @@ class CallsSettings(QWidget):
else:
if subprocess.run(f'pkexec sh -c "py-ini-config set {config_path}/school-ringer.conf Main '
f'is_breaks_music_on false"', shell=True).returncode == 0:
self.music_playing_thread.terminate()
# self.music_playing_thread.terminate()
subprocess.run('pkill play', shell=True)
self.play_music_on_breaks_btn.setText('Играть музыку на переменах')
self.real_music_on_breaks_status_label.setText(f'Отключена')
......@@ -395,3 +393,4 @@ class CallsSettings(QWidget):
self.setFixedHeight(self.height())
self.setWindowTitle(f'Организация звонков. Версия {version}')
self.show()
logging.info('Приложение запущено')
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать