Вопрос по aiogram. Не работает метод bot.send_message. Пишет что "name 'bot' is not defined"

Не работает метод bot.send_message.

Пишет что

name 'bot' is not defined

Все перерыл, но так и не нашел ответа =(

main.py:

import asyncio
import logging
from aiogram import Bot, Dispatcher
from aiogram.fsm.storage.memory import MemoryStorage
import handlers


async def main():
    bot = Bot(token="7137.....")
    dp = Dispatcher(storage=MemoryStorage())
    dp.include_router(handlers.router)
    await bot.delete_webhook(drop_pending_updates=True)
    await dp.start_polling(bot, allowed_updates=dp.resolve_used_update_types())


if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO)
    asyncio.run(main())

handlers.py:

from aiogram import types, F, Router
from aiogram.filters import Command


router = Router()


@router.message(Command("start"))
async def cmd_start(message: types.Message):
    kb = [
        [
            types.KeyboardButton(text="Да"),
            types.KeyboardButton(text="Нет")
        ],
    ]
    keyboard = types.ReplyKeyboardMarkup(
        keyboard=kb,
        resize_keyboard=True,
        input_field_placeholder="Присутствуете ли вы на работе?"
    )
    await message.answer('Присутствуете ли вы на работе? После нажатия на кнопку "Присутствую", подтвердите '
                             'отправку геометки пожалуйста.', reply_markup=keyboard)

@router.message(F.text.lower() == "нет")
async def not_working(message: types.Message):
    await message.reply("не присутствую")

@router.message(F.text.lower() == "да")
async def working(message: types.Message):
    await message.reply("присутствую")

@router.message(F.text)
async def not_registered(message: types.Message):
    await bot.send_message(chat_id=message.from_user.id, text=message.text)

Ответы (2 шт):

Автор решения: CausonQ

Правильно, его ж нужно передать и дописать в импорт:

from aiogram import types, F, Router, Bot

@router.message(F.text)
async def not_registered(message: types.Message, bot: Bot): # <- тут
    await bot.send_message(chat_id=message.from_user.id, text=message.text)
→ Ссылка
Автор решения: dofi4ka

Переменная bot объявлена внутри модуля bot.py и прочитать её можно только в этом модуле, а вы пытаетесь прочитать её из модуля handlers.py где такой переменной нет

В данном случае достаточно вместо метода bot.send_message использовать альтернативные message.answer или message.reply Подробнее про них

@router.message(F.text)
async def not_registered(message: types.Message):
    # await bot.send_message(chat_id=message.from_user.id, text=message.text)
    await message.answer(message.text)
→ Ссылка