import asyncio from aiogram import types, Dispatcher from bot.keyboards import main_kb, register_kb from bot import database from bot import sql from aiogram.dispatcher.storage import FSMContext from bot.states import SendBugState, MessageToAll from bot.notifications import new_bug # @dp.message_handler(commands=['start']) async def start_cmd(message: types.Message): db = database.Database() if message.chat.type == 'private': if not db.sql_fetchone(sql.check_id(message.from_user.id)): await message.answer(f"🤖Вас приветствует бот 405 кабинета🤖\n" f"\n" f"Для доступа к функционалу необходимо зарегистрироваться\n" f"", reply_markup=register_kb()) elif db.sql_fetchone(f'select approved from user_table where tg_id ={message.from_user.id}') == '0': msg = await message.answer("Аккаунт еще не подтвержден") await asyncio.sleep(5) await msg.delete() else: await message.answer(f"🤖Вас приветствует бот 405 кабинета🤖\n" f"Я помогу Вам запланировать мероприятие.\n\n" f"Вот что можно сделать:\n" f"Запланировать мероприятие\n" f"Планирование мероприятия\n\n" f"Мои события\n" f"События запланированные Вами\n\n" f"Все события\n" f"События всех пользователей\n" f"с выборкой по интервалам\n\n" f"Если есть пожелания или замечания\n" f"Можете обратиться к @FeldwebelWillman\n" f"Или воспользовтаься обратной связью /feedback", reply_markup=main_kb()) # else: # await message.answer(f"Если Вы хотите , запланировать мероприятие в 405" # f"напишите лично @TTITTechSuppBot") async def stop_cmd(message: types.Message): if message.from_user.id == 338836490: await message.answer("Остановка") else: await message.answer("Я слушаюсь только создателя") async def send_report(message: types.Message): await message.delete() await SendBugState.send_bug.set() msg = await message.answer("Опишите проблему") await asyncio.sleep(60) await msg.delete() async def get_report(message: types.Message, state: FSMContext): await state.update_data(bug=message.text) await state.update_data(from_user=message.from_user.username) data = await state.get_data() await state.finish() await new_bug(data) await message.delete() def main_register(dp: Dispatcher): dp.register_message_handler(start_cmd, commands=['start', 'help']) dp.register_message_handler(stop_cmd, commands=['stop']) dp.register_message_handler(send_report, commands=['feedback']) dp.register_message_handler(get_report, state=SendBugState.send_bug)