mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-08-15 06:50:58 +00:00
feat: !delhst 指令支持管理员删除会话历史记录
This commit is contained in:
@@ -256,6 +256,12 @@ class DatabaseManager:
|
|||||||
""".format(session_name))
|
""".format(session_name))
|
||||||
return self.cursor.rowcount > 0
|
return self.cursor.rowcount > 0
|
||||||
|
|
||||||
|
def delete_all_session_history(self) -> bool:
|
||||||
|
self.__execute__("""
|
||||||
|
delete from `sessions`
|
||||||
|
""")
|
||||||
|
return self.cursor.rowcount > 0
|
||||||
|
|
||||||
# 将apikey的使用量存进数据库
|
# 将apikey的使用量存进数据库
|
||||||
def dump_api_key_usage(self, api_keys: dict, usage: dict):
|
def dump_api_key_usage(self, api_keys: dict, usage: dict):
|
||||||
logging.debug('dumping api key usage...')
|
logging.debug('dumping api key usage...')
|
||||||
|
|||||||
@@ -336,6 +336,18 @@ def process_command(session_name: str, text_message: str, mgr, config,
|
|||||||
reply = ["[bot]err: 未找到情景预设:{}".format(params[0])]
|
reply = ["[bot]err: 未找到情景预设:{}".format(params[0])]
|
||||||
else:
|
else:
|
||||||
reply = ["[bot]err: 仅管理员可设置默认情景预设"]
|
reply = ["[bot]err: 仅管理员可设置默认情景预设"]
|
||||||
|
elif cmd == "delhst" and is_admin:
|
||||||
|
if len(params) == 0:
|
||||||
|
reply = ["[bot]err:请输入要删除的会话名: group_<群号> 或者 person_<QQ号>, 或使用 !delhst all 删除所有会话的历史记录"]
|
||||||
|
else:
|
||||||
|
if params[0] == "all":
|
||||||
|
pkg.utils.context.get_database_manager().delete_all_session_history()
|
||||||
|
reply = ["[bot]已删除所有会话的历史记录"]
|
||||||
|
else:
|
||||||
|
if pkg.utils.context.get_database_manager().delete_all_history(params[0]):
|
||||||
|
reply = ["[bot]已删除会话 {} 的所有历史记录".format(params[0])]
|
||||||
|
else:
|
||||||
|
reply = ["[bot]未找到会话 {} 的历史记录".format(params[0])]
|
||||||
elif cmd == 'reload' and is_admin:
|
elif cmd == 'reload' and is_admin:
|
||||||
def reload_task():
|
def reload_task():
|
||||||
pkg.utils.reloader.reload_all()
|
pkg.utils.reloader.reload_all()
|
||||||
|
|||||||
Reference in New Issue
Block a user