def manager(self, phrase, mod_name): mod_name = mod_name.lower() if mod_name not in self.by_name: self.log(LNG['mm_no_mod'].format(mod_name), logger.INFO) return Next mod_ = self.by_name[mod_name] if self.all[mod_]['hardcoded']: return Say(LNG['mm_sys_mod'].format(mod_name)) modes = {LNG['mm_act']: NM, LNG['mm_uact']: DM, LNG['mm_act_all']: ANY} enables = {LNG['mm_del']: False, LNG['mm_rec']: True} if phrase in modes: if not self.all[mod_]['enable']: return Say(LNG['mm_must_rec'].format(mod_name)) new_mode = modes[phrase] if self.all[mod_]['mode'] == new_mode: return Say(LNG['mm_already'].format(mod_name, get_mode_say(new_mode))) say = LNG['mm_now'].format(mod_name, get_mode_say(new_mode)) return Say(say), Set(mod_mode=[mod_, new_mode]) elif phrase in enables: enable = enables[phrase] if self.all[mod_]['enable'] == enable: return Say(LNG['mm_already2'].format(mod_name, get_enable_say(enable))) say = LNG['mm_mod'].format(mod_name, get_enable_say(enable)) return Say(say), Set(mod_enable=[mod_, enable]) else: self.log(LNG['err_mm'].format(phrase), logger.CRIT) return Next
def debug(_, phrase, *__): if phrase == 'выход': return Set(debug=False), Say('Внимание! Выход из режима разработчика') elif phrase == 'режим разработчика': return Set(debug=True),\ Say('Внимание! Включён режим разработчика. Для возврата в обычный режим скажите \'выход\'') return Next
def debug(_, phrase, *__): if phrase == F('выход'): return Set(debug=False), Say( F('Внимание! Выход из режима разработчика')) elif phrase == F('режим разработчика'): msg = 'Внимание! Включён режим разработчика. Для возврата в обычный режим скажите \'выход\'' return Set(debug=True), Say(F(msg)) return Next
def lock(self, phrase, *_): if self.get_one_way is lock: if phrase == F('блокировка'): return Set(one_way=None), Say(F('Блокировка снята')) else: return Say(F('блокировка')) else: return Set(one_way=lock), Say(F('Блокировка включена'))
def lock(self, phrase, *_): if self.get_one_way is lock: if phrase == LNG['lock_phrase_lock']: return Set(one_way=None), Say(LNG['lock_say_unlock']) else: return Say(LNG['lock_phrase_lock']) else: return Set(one_way=lock), Say(LNG['lock_say_lock'])
def manager(self, phrase, mod_name): mod_name = mod_name.lower() if mod_name not in self.by_name: self.log(F('Модуль {} не найден', mod_name), logger.INFO) return Next mod_ = self.by_name[mod_name] if self.all[mod_]['hardcoded']: return Say(F('Модуль {} системный, его нельзя настраивать', mod_name)) modes = { F('активировать'): NM, F('деактивировать'): DM, F('активировать везде'): ANY } enables = {F('удалить'): False, F('восстановить'): True} if phrase in modes: if not self.all[mod_]['enable']: return Say( F('Модуль {} удален. Вначале его нужно восстановить', mod_name)) new_mode = modes[phrase] if self.all[mod_]['mode'] == new_mode: return Say( F('Модуль {} уже в режиме {}', mod_name, get_mode_say(new_mode))) say = F('Теперь модуль {} доступен в режиме {}', mod_name, get_mode_say(new_mode)) return Say(say), Set(mod_mode=[mod_, new_mode]) elif phrase in enables: enable = enables[phrase] if self.all[mod_]['enable'] == enable: return Say( F('Модуль {} и так {}', mod_name, get_enable_say(enable))) say = F('Модуль {} {}', mod_name, get_enable_say(enable)) return Say(say), Set(mod_enable=[mod_, enable]) else: self.log(F('Это невозможно, откуда тут {}', phrase), logger.CRIT) return Next
def reboot_(*_): return Say( F('Терминал перезагрузится через 5... 4... 3... 2... 1...')), Set( die=[5, True])
def terminate_(*_): return Say(F('Come Along With Me.')), Set(die=5)
def debug(_, phrase, *__): if phrase == LNG['debug_phrase_exit']: return Set(debug=False), Say(LNG['debug_say_exit']) elif phrase == LNG['debug_phrase_enter']: return Set(debug=True), Say(LNG['debug_say_enter']) return Next
def reboot_(*_): return Say(LNG['rbt_bye']), Set(die=[5, True])
def terminate_(*_): return Say(LNG['term_bye']), Set(die=5)