Spaces:
Runtime error
Runtime error
File size: 1,350 Bytes
339f372 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
from aiogram import Router, F
from aiogram.types import Message, CallbackQuery
from aiogram.fsm.context import FSMContext
from app.database import requests as rq
from app.keyboards import admin_keyboards as kb
from app.states import Other
from app.database.requests import get_broadcast_users
from app.middleware.authentification import admin_check
from time import sleep
from random import randint
router = Router()
@router.message(F.text == 'Отправить сообщение в рассылку')
async def compose_message(message: Message, state: FSMContext):
if not await admin_check(message, {}):
await message.answer("У вас нет доступа к админ-панели")
return
await state.set_state(Other.admin_send_mailing)
await message.answer('Напишите Ваше сообщение')
@router.message(Other.admin_send_mailing)
async def send_message(message: Message, state: FSMContext):
user_ids = await get_broadcast_users()
if not user_ids:
await message.answer("Нет подписчиков для рассылки")
return
for user_id in user_ids:
await message.copy_to(user_id)
sleep(randint(1,5))
await message.answer(f"Сообщение отправлено {len(user_ids)} пользователям")
await state.clear()
|