2
0
mirror of https://github.com/pyrogram/pyrogram synced 2025-08-28 12:57:52 +00:00

Merge pull request #157 from Furoin/user

Add Filters.user("me")
This commit is contained in:
Dan 2018-11-08 20:28:39 +01:00 committed by GitHub
commit 2b21a1fc6b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -282,15 +282,16 @@ class Filters:
Args:
users (``int`` | ``str`` | ``list``):
Pass one or more user ids/usernames to filter users.
For you yourself, "me" or "self" can be used as well.
Defaults to None (no users).
"""
def __init__(self, users: int or str or list = None):
users = [] if users is None else users if type(users) is list else [users]
super().__init__(
{i.lower().strip("@") if type(i) is str else i for i in users}
{"me" if i in ["me", "self"] else i.lower().strip("@") if type(i) is str else i for i in users}
if type(users) is list else
{users.lower().strip("@") if type(users) is str else users}
{"me" if users in ["me", "self"] else users.lower().strip("@") if type(users) is str else users}
)
def __call__(self, message):
@ -298,7 +299,9 @@ class Filters:
message.from_user
and (message.from_user.id in self
or (message.from_user.username
and message.from_user.username.lower() in self))
and message.from_user.username.lower() in self)
or ("me" in self
and message.from_user.is_self))
)
# noinspection PyPep8Naming
@ -311,7 +314,7 @@ class Filters:
Args:
chats (``int`` | ``str`` | ``list``):
Pass one or more chat ids/usernames to filter chats.
For your personal cloud (Saved Messages) you can simply use me or self.
For your personal cloud (Saved Messages) you can simply use "me" or "self".
Defaults to None (no chats).
"""