From 726417c2f71aaf063a4732fc5b7270843ff066bb Mon Sep 17 00:00:00 2001 From: missytake Date: Fri, 1 Sep 2023 15:00:55 +0200 Subject: [PATCH] added bot setup --- setup.cfg | 1 + src/remember_remember_bot/cli.py | 19 +++++++++++++------ src/remember_remember_bot/commands.py | 7 +++++++ src/remember_remember_bot/loop.py | 7 +++++-- 4 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 src/remember_remember_bot/commands.py diff --git a/setup.cfg b/setup.cfg index c561dd3..cff3fce 100644 --- a/setup.cfg +++ b/setup.cfg @@ -21,6 +21,7 @@ packages = find: python_requires = >=3.8 install_requires = click + deltachat [options.packages.find] where = src diff --git a/src/remember_remember_bot/cli.py b/src/remember_remember_bot/cli.py index d52cfd7..558f363 100644 --- a/src/remember_remember_bot/cli.py +++ b/src/remember_remember_bot/cli.py @@ -1,12 +1,19 @@ import click import remember_remember_bot.loop +import remember_remember_bot.commands @click.command() @click.option("--email", type=str, default=None, help="the email account for the bot") -@click.option("--password", type=str, default=None, help="the password of the email account") -@click.option("--db", type=str, default="remember.db/db.sqlite", help="path to the bot's database") -@click.option("--debug", is_flag=True, default=False, help="show low level delta chat ffi events") +@click.option( + "--password", type=str, default=None, help="the password of the email account" +) +@click.option( + "--db", type=str, default="remember.db/db.sqlite", help="path to the bot's database" +) +@click.option( + "--debug", is_flag=True, default=False, help="show low level delta chat ffi events" +) @click.pass_context def run(ctx, email: str, password: str, db: str, debug: bool): """Remember, remember, the 5th of November... a Delta Chat bot to send daily reminders. @@ -17,12 +24,12 @@ def run(ctx, email: str, password: str, db: str, debug: bool): :param db: the path to the database :param debug: whether to show low-level deltachat FFI events """ - # setup - remember_remember_bot.loop.loop() + ac = remember_remember_bot.commands.setup(email, password, db, debug) + remember_remember_bot.loop.loop(ac) def main(): - run(auto_envvar_prefix='REMEMBER') + run(auto_envvar_prefix="REMEMBER") if __name__ == "__main__": diff --git a/src/remember_remember_bot/commands.py b/src/remember_remember_bot/commands.py new file mode 100644 index 0000000..0fd6e17 --- /dev/null +++ b/src/remember_remember_bot/commands.py @@ -0,0 +1,7 @@ +import deltachat + + +def setup(email: str, password: str, db: str, debug: bool) -> deltachat.Account: + ac = deltachat.account.Account(db_path=db) + ac.run_account(email, password, show_ffi=debug) + return ac diff --git a/src/remember_remember_bot/loop.py b/src/remember_remember_bot/loop.py index adcf13a..c1fecd5 100644 --- a/src/remember_remember_bot/loop.py +++ b/src/remember_remember_bot/loop.py @@ -1,8 +1,10 @@ import time import datetime +import deltachat -def loop(): + +def loop(ac: deltachat.Account): current_day = 0 while True: if check_new_day(current_day): @@ -13,8 +15,9 @@ def loop(): def check_new_day(current_day): - if current_day == datetime.datetime.now().day: + if current_day != datetime.datetime.now().day: return True + return False def update_day():