From 854416b72552611d8bc30745d793f5239a99efe8 Mon Sep 17 00:00:00 2001 From: derAnfaenger Date: Wed, 24 May 2017 02:30:58 +0200 Subject: [PATCH] bots: Add incrementor bot. This bot provides a sample implementation for updating existing messages sent by the bot. --- contrib_bots/bots/incrementor/incrementor.py | 30 ++++++++++++++++++++ contrib_bots/bots/incrementor/readme.md | 6 ++++ 2 files changed, 36 insertions(+) create mode 100644 contrib_bots/bots/incrementor/incrementor.py create mode 100644 contrib_bots/bots/incrementor/readme.md diff --git a/contrib_bots/bots/incrementor/incrementor.py b/contrib_bots/bots/incrementor/incrementor.py new file mode 100644 index 0000000..b5fe1cd --- /dev/null +++ b/contrib_bots/bots/incrementor/incrementor.py @@ -0,0 +1,30 @@ +# See readme.md for instructions on running this code. + + +class IncrementorHandler(object): + + def __init__(self): + self.number = 0 + self.message_id = None + + def usage(self): + return ''' + This is a boilerplate bot that makes use of the + update_message function. For the first @-mention, it initially + replies with one message containing a `1`. Every time the bot + is @-mentioned, this number will be incremented in the same message. + ''' + + def handle_message(self, message, client, state_handler): + self.number += 1 + if self.message_id is None: + result = client.send_reply(message, str(self.number)) + self.message_id = result['id'] + else: + client.update_message(dict( + message_id=self.message_id, + content=str(self.number), + )) + + +handler_class = IncrementorHandler diff --git a/contrib_bots/bots/incrementor/readme.md b/contrib_bots/bots/incrementor/readme.md new file mode 100644 index 0000000..464b32a --- /dev/null +++ b/contrib_bots/bots/incrementor/readme.md @@ -0,0 +1,6 @@ +# Incrementor bot + +This is a boilerplate bot that makes use of the +update_message function. For the first @-mention, it initially +replies with one message containing a `1`. Every time the bot +is @-mentioned, this number will be incremented in the same message.