Add /enable /disable Feature
This commit is contained in:
@@ -171,7 +171,7 @@ class GoogleTextToSpeechNode(ComputeNode):
|
||||
def is_local(self) -> bool:
|
||||
return False
|
||||
|
||||
def declare_user_config(self):
|
||||
def declare_user_config(self,is_optional:bool = False):
|
||||
if os.getenv("GOOGLE_APPLICATION_CREDENTIALS") is None:
|
||||
user_config = AIStorage.get_instance().get_user_config()
|
||||
user_config.add_user_config("google_application_credentials",
|
||||
|
||||
@@ -322,6 +322,8 @@ class KnowledgePipline:
|
||||
if source_config['type'] == 'dir':
|
||||
self.add_dir_source(KnowledgeDirSource(source_config))
|
||||
|
||||
return True
|
||||
|
||||
def __singleton_init__(self):
|
||||
self.knowledge_base = KnowledgeBase()
|
||||
self.email_sources = dict()
|
||||
|
||||
@@ -78,6 +78,9 @@ class LocalLlama_ComputeNode(Queue_ComputeNode):
|
||||
}
|
||||
}
|
||||
|
||||
async def initial(self) -> bool:
|
||||
return True
|
||||
|
||||
def display(self) -> str:
|
||||
return f"LocalLlama_ComputeNode: {self.node_id}"
|
||||
|
||||
|
||||
@@ -140,6 +140,7 @@ class AIStorage:
|
||||
def __init__(self) -> None:
|
||||
self.is_dev_mode = False
|
||||
self.user_config = UserConfig()
|
||||
self.feature_init_results = {}
|
||||
|
||||
async def initial(self)->bool:
|
||||
self.user_config.user_config_path = str(self.get_myai_dir() / "etc/system.cfg.toml")
|
||||
@@ -147,16 +148,30 @@ class AIStorage:
|
||||
await self.user_config.load_value_from_file(self.user_config.user_config_path,True)
|
||||
|
||||
async def enable_feature(self,feature_name:str) -> None:
|
||||
pass
|
||||
self.user_config.set_value(f"feature.{feature_name}","True")
|
||||
await self.user_config.save_to_user_config()
|
||||
|
||||
|
||||
async def disable_feature(self,feature_name:str) -> None:
|
||||
pass
|
||||
self.user_config.set_value(f"feature.{feature_name}","False")
|
||||
await self.user_config.save_to_user_config()
|
||||
|
||||
async def set_feature_init_result(self,feature_name:str,result:bool) -> None:
|
||||
pass
|
||||
self.feature_init_results[feature_name] = result
|
||||
|
||||
async def is_feature_enable(self,feature_name:str) -> bool:
|
||||
pass
|
||||
is_enable = self.user_config.get_value(f"feature.{feature_name}")
|
||||
if is_enable is None:
|
||||
return False
|
||||
|
||||
init_result = self.feature_init_results.get(feature_name)
|
||||
if init_result:
|
||||
if init_result is False:
|
||||
return False
|
||||
|
||||
if is_enable == "True":
|
||||
return True
|
||||
return False
|
||||
|
||||
def get_user_config(self) -> UserConfig:
|
||||
return self.user_config
|
||||
|
||||
Reference in New Issue
Block a user