@RG5000

Что неправильно пишу в коде при импорте в aiogram?

Есть 3 файла: main, handlers, buttons.

Пытаюсь их друг с другом соединить в рабочий бот. Но не выходит. Значит что-то где-то не так делаю, что именно не пойму. Не срабатывает хендлер.

Main
import asyncio
from aiogram import Bot, Dispatcher, types, executor

import buttons
import handlers


bot = Bot("Токен")
dp = Dispatcher(bot)


async def on_startup(dp):


if __name__ == "__main__": 
       executor.start_polling(dp,skip_updates=True, on_startup=on_startup)


Handlers
import asyncio
from aiogram import Dispatcher, types
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, InlineKeyboardMarkup, InlineKeyboardButton

import buttons


def register_handler(dp: Dispatcher):
    
    
 @dp.register.message_handler(commands=["start"])
 async def hello (message: types.Message):
    
    await message.answer_sticker ("код стикера", reply_markup=buttons.main)


Buttons
from aiogram.types import *
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, InlineKeyboardMarkup, InlineKeyboardButton


btn1 = KeyboardButton("Кнопка1")
btn2 = KeyboardButton("Кнопка2")
main = ReplyKeyboardMarkup(resize_keyboard=True).add(btn1, btn2)
  • Вопрос задан
  • 36 просмотров
Решения вопроса 1
Нужно воспользоваться методом диспетчера для регистрации обработчика.
Отдельно создаются асинхронные функции обработчиков, затем они регистрируется методами инстанса диспетчера

https://docs.aiogram.dev/en/latest/dispatcher/inde...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы