X-Git-Url: https://us-delaporte.pagekite.me/gitweb/matrix-goal-bot.git/blobdiff_plain/866b10b1e2569e2071713183e84cfe1a3851c54f..303394a7dcea600b7f4e9db20a7056c8433eef75:/matrix_goal_bot/bot.py diff --git a/matrix_goal_bot/bot.py b/matrix_goal_bot/bot.py index 159c997..d62d188 100644 --- a/matrix_goal_bot/bot.py +++ b/matrix_goal_bot/bot.py @@ -1,8 +1,8 @@ ''' -Prefix: !goal +Prefix: .goal Synax: - !goal COMMAND ARGS + .goal COMMAND ARGS Commands: help - show this help @@ -20,8 +20,9 @@ ex_help = ''' More commands: add.vision - add a new vision (collection of goals) close.vision ID - mark vision as complete by ID + dump - dump the full data set - BEWARE - so many messages later GOAL_ID - put off goal for 14 days - list.all - list everything + list.later - list all 'later' goals print.vision ID - print a vision and all goals set.vision GOAL_ID VISION_ID- associate GOAL_ID with VISION_ID visions - list incomplete visions @@ -29,6 +30,7 @@ More commands: remove ID - remove a task by ID start GOAL_ID - un-put-off a goal (reverse of later) visionless - list goals with no set vision + wins - list recently completed goals ''' @@ -63,7 +65,7 @@ class GoalBot(): bot_name, bot_pwd, db_file=None, - bot_prefix='!goal'): + bot_prefix='.goal'): creds = botlib.Creds(matrix_server, bot_name, bot_pwd) self.bot = botlib.Bot(creds) @@ -190,8 +192,7 @@ class GoalBot(): if match.command('start'): goal_id = int(match.args()[1]) - vision_id = self.data.start_goal(goal_id) - vision,goals = self.data.get_vision(vision_id) + vision,goals = self.data.start_goal(goal_id) results = pretty_print(vision, goals) return results @@ -219,15 +220,21 @@ class GoalBot(): results = pretty_print(goal, tasks) return results - if match.command('list.all'): + if match.command('dump'): goals = self.data.get_all_goals() - results = ['# Everything is...'] + results = ['# Everything ... '] for goal in goals: _,tasks = self.data.get_goal(goal.id) details = pretty_print(goal, tasks) results += details return results + + if match.command('list.later'): + goals = self.data.get_all_goals() + results = ['# All Goals ... '] + return results + if match.command('visions'): items = self.data.get_all_visions() results = ['# Visions'] @@ -248,6 +255,18 @@ class GoalBot(): results.append(item) return results + if match.command('wins'): + items = self.data.wins() + results = ['# Wins'] + if not items: + results.append('-- No wins yet --') + + for item in items: + results.append(item) + return results + + + if match.command('set.vision'): goal_id = int(match.args()[1]) vision_id = int(match.args()[2])