• Почему не удаляется сообщение бота в чате?

    @Aztart Автор вопроса
    soremix, в таком случае, почему оно могло исчезнуть "под капотом" телеграмма?
    Написано
  • Почему не удаляется сообщение бота в чате?

    @Aztart Автор вопроса
    soremix,
    ... вы сделали вывод о существовании сообщения на основе вашего кода, тем более с ошибкой.

    в пункте 4.2 приложен скриншот сообщения с его id, сообщение существует. В противном случае алгоритм бы вообще не работал.

    Как заполняются id, откуда они появляются в списке bmi['bot_mes_id']?

    class DataBase():
    ...
        def create_bmi_in_user_data(self, message):
        '''Создание id сообщения бота и помещение его в user_data'''
            user_data_dict = dict(ast.literal_eval(database.select_user_data(message)))
            try:
                user_id = message.chat.id
            except:
                user_id = message.from_user.id
            user_data_dict['bot_mes_id'].append(message.message_id + 1)
            try:
                with self.connection:
                    return self.cursor.execute(f'''UPDATE users_table SET user_data = "{user_data_dict}" WHERE user_id = "{user_id}"''')
            except:
                Exception
    
        def del_bmi_element(self, message, element):
        '''Удаление id сообщения бота из словаря и возвращение словаря в user_data'''
            user_data_dict = dict(ast.literal_eval(database.select_user_data(message)))
            try:
                user_id = message.chat.id
            except:
                user_id = message.from_user.id
            user_data_dict['bot_mes_id'].remove(element)
            with self.connection:
                return self.cursor.execute(f'''UPDATE users_table SET user_data = "{user_data_dict}" WHERE user_id = "{user_id}"''')
    
        def select_user_data(self, message):
        '''Выделение user_data пользователя в БД'''
            try:
                user_id = message.chat.id
            except:
                user_id = message.from_user.id
            with self.connection:
                return self.cursor.execute(f'''SELECT user_data FROM users_table WHERE user_id = "{user_id}"''').fetchone()[0]
    Написано
  • Почему не удаляется сообщение бота в чате?

    @Aztart Автор вопроса
    soremix,

    Task exception was never retrieved
    future: exception=MessageToDeleteNotFound('Message to delete not found')>
    Traceback (most recent call last):
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 339, in _process_polling_updates
    for responses in itertools.chain.from_iterable(await self.process_updates(updates, fast)):
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 194, in process_updates
    return await asyncio.gather(*tasks)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 214, in process_update
    return await self.message_handlers.notify(update.message)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
    File "C:\Users\Azta-\OneDrive\Documents\Root\PyProgramTest\entheogen_bot\main.py", line 1141, in cart_of_products_2
    await del_last_bot_message(message)
    File "C:\Users\Azta-\OneDrive\Documents\Root\PyProgramTest\entheogen_bot\main.py", line 1503, in del_last_bot_message
    await bot.delete_message(args[0].chat.id, ids)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\bot\bot.py", line 1780, in delete_message
    result = await self.request(api.Methods.DELETE_MESSAGE, payload)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\bot\base.py", line 201, in request
    return await api.make_request(self.session, self.__token, method, data, files,
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\bot\api.py", line 104, in make_request
    return check_result(method, response.content_type, response.status, await response.text())
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\bot\api.py", line 78, in check_result
    exceptions.BadRequest.detect(description)
    File "C:\Program Files (x86)\Python38-32\lib\site-packages\aiogram\utils\exceptions.py", line 136, in detect
    raise err(cls.text or description)
    aiogram.utils.exceptions.MessageToDeleteNotFound: Message to delete not found
    Написано
  • Есть все же способ полного отключения обновлений в Windows 10 home?

    @Aztart
    Kirill Kirik, это круто. Жалко у меня ничего подобного не было ни разу.
    Написано
  • Для чего в телеграм ботах нужны сотояния?

    @Aztart
    Илья, не могу сказать, telegram bot api не пользовался. Скорее всего должны быть, если нет, значит должна быть встроенная библиотека состояний у самого Python'а, если её нет - скачать отдельно.
    Написано
  • Есть все же способ полного отключения обновлений в Windows 10 home?

    @Aztart
    Questions0001, она портативная, установки не требует. При открытии утилиты зайдите во вкладку "Службы" и отключите там всё, что связано с Обновлением системы
    Написано
  • Как присвоить индивидуальные значения пользователя глобальным переменным?

    @Aztart Автор вопроса
    Дмитрий Шицков, в таком случае код будет обращаться к файлу бд при каждом любом действии пользователей. Будет ли это, при таком частом обращении, тормозить выполнение запросов?
    Написано
  • Как присвоить индивидуальные значения пользователя глобальным переменным?

    @Aztart Автор вопроса
    Влад Григорьев, имеется ввиду, например, словарь? Если пользователей будет около 100к, не повредит ли это работе кода?
    Написано
  • Как объединить функции бота и канала в одном телеграм-боте в aiogram?

    @Aztart Автор вопроса
    Что-то у меня ошибку выдаёт, когда прописываю в этот хендлер команду, хотя судя по документации aiogram, команды в него прописывать можно.

    @dp.channel_post_handler(commands=['start'])
    async def process_post(post: types.Message):
        await post.answer('Hello!', reply_markup=start_kb)


    NameError: Invalid filter name(s): 'commands'

    Тем не менее, хотелось бы узнать, как из самого бота сделать канал.
    Написано
  • Как делать графику в стиле сайтов 90-х?

    @Aztart
    Думаю, одним из способов будет реализация через пиксель арт. В ФШ используя карандаш как инструмент и наложение пиксельных узоров на нужные слои.
    Написано