import asyncio
import logging
import sys
from os import getenv
from alerts_in_ua import AsyncClient as AsyncAlertsClient
from aiogram import Bot, Dispatcher, Router, types
from aiogram.enums import ParseMode
from aiogram.filters import CommandStart, Command
from aiogram import F
from aiogram.types import Message
from aiogram.utils.markdown import hbold
from alerts_in_ua import AsyncClient as AsyncAlertsClient
from aiogram.utils.keyboard import ReplyKeyboardBuilder, InlineKeyboardBuilder, InlineKeyboardButton
telegramToken = "#"
dp = Dispatcher()
builder = ReplyKeyboardBuilder()
builder.button(text=" Активні повітряні тривоги ")
builder.button(text=" Телеграм-канал боту ")
@dp.message(CommandStart())
async def command_start_handler(message: Message):
await message.answer(f"Бот успішно працює. Ласкаво просимо {hbold(message.from_user.full_name)}\nНа даний момент бот перебуває у доопрацюванні.", reply_markup=builder.as_markup(resize_keyboard=True, input_field_placeholder="Оберіть дію"))
@dp.message(F.text == " Активні повітряні тривоги ")
async def active_alerts(message: types.Message):
await message.reply("Тривога зараз триває у :")
await message.reply(active_alerts_information)
@dp.message(F.text == " Телеграм-канал боту ")
async def telegram_channel(message: types.Message):
inlineBuilder = InlineKeyboardBuilder()
inlineBuilder.add(types.InlineKeyboardButton(text="AlertsInUa", url="#"))
await message.answer("Телеграм-канал", reply_markup=inlineBuilder.as_markup())
async def main():
bot = Bot(telegramToken, parse_mode=ParseMode.HTML)
alerts_client = AsyncAlertsClient(token="#")
await dp.start_polling(bot)
active_alerts_information = await alerts_client.get_active_alerts()
return active_alerts_information
if __name__ == "__main__":
asyncio.run(main())
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
как мне использовать переменную alerts_client за пределами функции main? я пытался использовать метод return, не помогает, не понимаю почему