From 40e41712204f483d7dd27a4a7736e349b0875db0 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Thu, 24 Oct 2024 02:22:48 +0200 Subject: [PATCH] add import subcommand --- deltachat_cursed/cli.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/deltachat_cursed/cli.py b/deltachat_cursed/cli.py index 9e9aacb..6593a82 100644 --- a/deltachat_cursed/cli.py +++ b/deltachat_cursed/cli.py @@ -52,6 +52,9 @@ def __init__(self) -> None: init_parser.add_argument("addr", help="your e-mail address") init_parser.add_argument("password", help="your password") + import_parser = self.add_subcommand(import_cmd, name="import") + import_parser.add_argument("path", help="path to the backup file to import") + config_parser = self.add_subcommand(config_cmd, name="config") config_parser.add_argument("option", help="option name", nargs="?") config_parser.add_argument("value", help="option value to set", nargs="?") @@ -93,6 +96,20 @@ def init_cmd(client: Client, args: Namespace) -> None: sys.exit(1) +def import_cmd(client: Client, args: Namespace) -> None: + """import account from backup file""" + if args.account: + print("Error: -a/--account can't be used with this subcommand") + sys.exit(1) + + try: + client.rpc.import_backup(client.rpc.add_account(), args.path, None) + print("Backup imported successfully.") + except JsonRpcError as err: + print("ERROR: Failed to import backup:", err) + sys.exit(1) + + def config_cmd(client: Client, args: Namespace) -> None: """set or get account configuration values""" accounts = client.rpc.get_all_account_ids()