Первый полностью рабочий функционал
This commit is contained in:
parent
7c151a4077
commit
6bfe00c234
|
@ -1,6 +0,0 @@
|
||||||
# ЭТО ПРИМЕР ФАЙЛА .env !! ВАМ НАДО ЭТОТ ФАЙЛ ПЕРЕИМЕНОВАТЬ И ВСТАВИТЬ ТУДА ЗНАЧЕНИЯ.
|
|
||||||
# ЭТИ КОММЕНТАРИИ НАДО УДАЛИТЬ!
|
|
||||||
|
|
||||||
ADMINS=12345678,12345677,12345676
|
|
||||||
BOT_TOKEN=123452345243:Asdfasdfasf
|
|
||||||
ip=localhost
|
|
|
@ -1,9 +1,9 @@
|
||||||
from aiogram import Dispatcher
|
from aiogram import Dispatcher
|
||||||
|
|
||||||
from loader import dp
|
from loader import dp
|
||||||
# from .is_admin import AdminFilter
|
from .group_chat import IsGroup
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "filters":
|
if __name__ == "filters":
|
||||||
# dp.filters_factory.bind(AdminFilter)
|
dp.filters_factory.bind(IsGroup)
|
||||||
pass
|
pass
|
||||||
|
|
9
filters/group_chat.py
Normal file
9
filters/group_chat.py
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
from aiogram import types
|
||||||
|
from aiogram.dispatcher.filters import BoundFilter
|
||||||
|
|
||||||
|
class IsGroup(BoundFilter):
|
||||||
|
async def check(self, message: types.Message) -> bool:
|
||||||
|
return message.chat.type in (
|
||||||
|
types.ChatType.GROUP,
|
||||||
|
types.ChatType.SUPERGROUP
|
||||||
|
)
|
|
@ -1,5 +1,6 @@
|
||||||
from . import errors
|
|
||||||
from . import users
|
|
||||||
from . import groups
|
from . import groups
|
||||||
from . import channels
|
from . import channels
|
||||||
|
from . import errors
|
||||||
|
from . import users
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
from . import chat
|
12
handlers/groups/chat.py
Normal file
12
handlers/groups/chat.py
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
from aiogram import types
|
||||||
|
from aiogram.dispatcher import FSMContext
|
||||||
|
from filters import IsGroup
|
||||||
|
from loader import dp
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@dp.message_handler(IsGroup(), content_types=types.ContentTypes.ANY)
|
||||||
|
async def bot_echo_all(message: types.Message, state: FSMContext):
|
||||||
|
if message.sender_chat is not None:
|
||||||
|
await message.delete()
|
|
@ -5,17 +5,6 @@ from loader import dp
|
||||||
|
|
||||||
|
|
||||||
# Эхо хендлер, куда летят текстовые сообщения без указанного состояния
|
# Эхо хендлер, куда летят текстовые сообщения без указанного состояния
|
||||||
@dp.message_handler(state=None)
|
@dp.message_handler()
|
||||||
async def bot_echo(message: types.Message):
|
async def bot_echo(message: types.Message):
|
||||||
await message.answer(f"Эхо без состояния."
|
await message.answer(f"Просто добавь меня в чат и я начну удалять сообщения от каналов!")
|
||||||
f"Сообщение:\n"
|
|
||||||
f"{message.text}")
|
|
||||||
|
|
||||||
|
|
||||||
# Эхо хендлер, куда летят ВСЕ сообщения с указанным состоянием
|
|
||||||
@dp.message_handler(state="*", content_types=types.ContentTypes.ANY)
|
|
||||||
async def bot_echo_all(message: types.Message, state: FSMContext):
|
|
||||||
state = await state.get_state()
|
|
||||||
await message.answer(f"Эхо в состоянии <code>{state}</code>.\n"
|
|
||||||
f"\nСодержание сообщения:\n"
|
|
||||||
f"<code>{message}</code>")
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user