マスターパスワードを取得するスラッシュコマンドと処理を追加

This commit is contained in:
suti7yk5032 2024-09-26 21:42:33 +09:00
parent 42e36bf1c4
commit 69cb9537ff

View file

@ -751,6 +751,23 @@ class DL():
self.log(title=f"[ERROR] デバイス登録用のワンタイムパスワード発行中にエラーが発生しました。 {str(error.__class__.__name__)}", message=str(error.args), flag=1) self.log(title=f"[ERROR] デバイス登録用のワンタイムパスワード発行中にエラーが発生しました。 {str(error.__class__.__name__)}", message=str(error.args), flag=1)
return {"result": 1, "about": "error"} return {"result": 1, "about": "error"}
def show_pc_master_password(self, **kwargs):
if isinstance(kwargs.get("pc_number"), int):
try:
pc_number = int(kwargs.get("pc_number"))
cursor = self.db.cursor()
cursor.execute("SELECT master_password FROM pc_list WHERE pc_number = %s", (pc_number,))
pc_master_password_list = cursor.fetchall()
pc_master_password = pc_master_password_list[0][0]
return {"result": 0, "about": "ok", "output_dict": {"pc_master_password": pc_master_password}}
except Exception as error:
self.log(title=f"[ERROR] PCのマスターパスワードを取得中にエラーが発生しました。 {str(error.__class__.__name__)}", message=str(error.args), flag=1)
return {"result": 1, "about": "error"}
else:
return {"result": 1, "about": "syntax_error"}
class ReasonModal(discord.ui.Modal): class ReasonModal(discord.ui.Modal):
def __init__(self, title: str, pc_number: str, keyboard_number: str, mouse_number: str, timeout=15) -> None: def __init__(self, title: str, pc_number: str, keyboard_number: str, mouse_number: str, timeout=15) -> None:
@ -1296,6 +1313,17 @@ async def button_init(interaction: discord.Interaction, text_channel: discord.Te
await interaction.response.send_message(f":white_check_mark: ボタンを送信しました!", ephemeral=True) await interaction.response.send_message(f":white_check_mark: ボタンを送信しました!", ephemeral=True)
@tree.command(name="masterpass", description="PCのマスターパスワードを表示します。")
@discord.app_commands.default_permissions(administrator=True)
async def masterpass(interaction: discord.Interaction, pc_number: int):
pc_master_password_get = dislocker.pc_master_password(pc_number=pc_number)
if pc_master_password_get["result"] == 0:
pc_master_password = pc_master_password_get["output_dict"]["master_password"]
await interaction.response.send_message(f"# :key: PC番号 {pc_number} 番のマスターパスワードは以下の通りです。\n>>> # マスターパスワード | {pc_master_password}", ephemeral=True)
else:
await interaction.response.send_message("# :skull_crossbones: マスターパスワードの取得に失敗しました。", ephemeral=True)
if dislocker.init_result == "ok": if dislocker.init_result == "ok":
print("Botを起動します...") print("Botを起動します...")