Beispiel #1
0
async def _(event):
    # logger.info(CHAT_FLOOD)
    if not CHAT_FLOOD:
        return
    if not (str(event.chat_id) in CHAT_FLOOD):
        return
    # TODO: exempt admins from this
    should_ban = sql.update_flood(event.chat_id, event.message.from_id)
    if not should_ban:
        return
    try:
        await event.client(
            EditBannedRequest(event.chat_id, event.message.from_id,
                              ANTI_FLOOD_WARN_MODE))
    except Exception as e:  # pylint:disable=C0103,W0703
        no_admin_privilege_message = await event.client.send_message(
            entity=event.chat_id,
            message="""**Automatic AntiFlooder**
@admin [User](tg://user?id={}) is flooding this chat.

`{}`""".format(event.message.from_id, str(e)),
            reply_to=event.message.id)
        await asyncio.sleep(10)
        await no_admin_privilege_message.edit("https://t.me/keralagram/724970",
                                              link_preview=False)
    else:
        await event.client.send_message(entity=event.chat_id,
                                        message="""**Automatic AntiFlooder**
[User](tg://user?id={}) has been automatically restricted
because he reached the defined flood limit.""".format(event.message.from_id),
                                        reply_to=event.message.id)
Beispiel #2
0
async def _(event):
    # logger.info(CHAT_FLOOD)
    if not CHAT_FLOOD:
        return
    if not (str(event.chat_id) in CHAT_FLOOD):
        return
    # TODO: exempt admins from this
    should_ban = sql.update_flood(event.chat_id, event.message.from_id)
    if not should_ban:
        return
    try:
        await event.client(
            EditBannedRequest(event.chat_id, event.message.from_id,
                              ANTI_FLOOD_WARN_MODE))
    except Exception as e:  # pylint:disable=C0103,W0703
        no_admin_privilege_message = await event.client.send_message(
            entity=event.chat_id,
            message="""**Automatic AntiFlooder**
@admin [User](tg://user?id={}) kon h re ye flood kar rha h

`{}`""".format(event.message.from_id, str(e)),
            reply_to=event.message.id)
        await asyncio.sleep(10)
        await no_admin_privilege_message.edit(
            "",  #that shit is here
            link_preview=False)
    else:
        await event.client.send_message(entity=event.chat_id,
                                        message="""**Automatic AntiFlooder**
[User](tg://user?id={}) msgs bhejne ki limit h yaha... spaming ghar pe yaha nhi."""
                                        .format(event.message.from_id),
                                        reply_to=event.message.id)