Update Filters

Filters are used to selectively handle only certain types of updates.

from pyrogram import Client, filters

app = Client("my_account")

@app.on_message(filters.private & filters.text)
async def handler(client, message):
    await message.reply(message.text)

filters.all

Filter all messages.

filters.me

Filter messages generated by you yourself.

filters.bot

Filter messages coming from bots.

filters.private

Filter messages sent in private chats.

filters.group

Filter messages sent in group or supergroup chats.

filters.channel

Filter messages sent in channels.

filters.text

Filter text messages.

filters.reply

Filter messages that are replies to other messages.

filters.forwarded

Filter messages that are forwarded.

filters.caption

Filter media messages that contain captions.

filters.audio

Filter messages that contain Audio objects.

filters.document

Filter messages that contain Document objects.

filters.photo

Filter messages that contain Photo objects.

filters.sticker

Filter messages that contain Sticker objects.

filters.animation

Filter messages that contain Animation objects.

filters.game

Filter messages that contain Game objects.

filters.video

Filter messages that contain Video objects.

filters.media_group

Filter messages containing photos or videos being part of an album.

filters.voice

Filter messages that contain Voice note objects.

filters.video_note

Filter messages that contain VideoNote objects.

filters.contact

Filter messages that contain Contact objects.

filters.location

Filter messages that contain Location objects.

filters.venue

Filter messages that contain Venue objects.

filters.web_page

Filter messages sent with a webpage preview.

filters.poll

Filter messages that contain Poll objects.

filters.dice

Filter messages that contain Dice objects.

filters.via_bot

Filter messages sent via inline bots

filters.pinned_message

Filter service messages for pinned messages.

filters.service

Filter service messages.

filters.linked_channel

Filter messages that are automatically forwarded from the linked channel to the group chat.

filters.new_chat_members

Filter service messages for new chat members.

filters.left_chat_member

Filter service messages for members that left the chat.

filters.new_chat_title

Filter service messages for new chat titles.

filters.new_chat_photo

Filter service messages for new chat photos.

filters.delete_chat_photo

Filter service messages for deleted photos.

filters.group_chat_created

Filter service messages for group chat creations.

filters.supergroup_chat_created

Filter service messages for supergroup chat creations.

filters.channel_chat_created

Filter service messages for channel chat creations.

filters.migrate_to_chat_id

Filter service messages that contain migrate_to_chat_id.

filters.migrate_from_chat_id

Filter service messages that contain migrate_from_chat_id.

filters.command

Filter commands, i.e.: text messages starting with "/" or any other custom prefix.

filters.regex

Filter updates that match a given regular expression pattern.

filters.user

Filter messages coming from one or more users.

filters.chat

Filter messages coming from one or more chats.

filters.incoming

Filter incoming messages.

filters.outgoing

Filter outgoing messages.

filters.mentioned

Filter messages containing mentions

filters.scheduled

Filter messages that have been scheduled (not yet sent).

filters.from_scheduled

Filter new automatically sent messages that were previously scheduled.