Exemple #1
0
    def handle_message(self, message: Dict[str, str], bot_handler: BotHandler) -> None:
        storage = bot_handler.storage
        num = storage.get('number')

        # num should already be an int, but we do `int()` to force an
        # explicit type check
        num = int(num) + 1

        storage.put('number', num)
        if storage.get('message_id') is None:
            result = bot_handler.send_reply(message, str(num))
            if result is not None:
                storage.put('message_id', result['id'])
        else:
            bot_handler.update_message(dict(
                message_id=storage.get('message_id'),
                content=str(num)
            ))
Exemple #2
0
    def handle_message(self, message: Dict[str, str],
                       bot_handler: BotHandler) -> None:
        storage = bot_handler.storage
        num = storage.get('number')

        # num should already be an int, but we do `int()` to force an
        # explicit type check
        num = int(num) + 1

        storage.put('number', num)
        if storage.get('message_id') is not None:
            result = bot_handler.update_message(
                dict(message_id=storage.get('message_id'), content=str(num)))

            # When there isn't an error while updating the message, we won't
            # attempt to send the it again.
            if result is None or result.get('result') != 'error':
                return

        message_info = bot_handler.send_reply(message, str(num))
        if message_info is not None:
            storage.put('message_id', message_info['id'])
Exemple #3
0
    def handle_message(self, message: Dict[str, str],
                       bot_handler: BotHandler) -> None:
        with use_storage(bot_handler.storage, ["number"]) as storage:
            num = storage.get("number")

            # num should already be an int, but we do `int()` to force an
            # explicit type check
            num = int(num) + 1

            storage.put("number", num)
            if storage.get("message_id") is not None:
                result = bot_handler.update_message(
                    dict(message_id=storage.get("message_id"),
                         content=str(num)))

                # When there isn't an error while updating the message, we won't
                # attempt to send the it again.
                if result is None or result.get("result") != "error":
                    return

            message_info = bot_handler.send_reply(message, str(num))
            if message_info is not None:
                storage.put("message_id", message_info["id"])