From ef5b20848f03e6bacf861dd75f342a71c4847654 Mon Sep 17 00:00:00 2001 From: wulan17 Date: Sun, 18 Aug 2024 22:05:59 +0700 Subject: [PATCH] pyrofork: Add subscription_expired, subscription_period, and subscription_price field to class ChatInviteLink Signed-off-by: wulan17 --- .../invite_links/export_chat_invite_link.py | 4 ++-- .../types/user_and_chats/chat_invite_link.py | 23 +++++++++++++++++-- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/pyrogram/methods/invite_links/export_chat_invite_link.py b/pyrogram/methods/invite_links/export_chat_invite_link.py index 16601f406..86d22faa5 100644 --- a/pyrogram/methods/invite_links/export_chat_invite_link.py +++ b/pyrogram/methods/invite_links/export_chat_invite_link.py @@ -59,7 +59,7 @@ async def export_chat_invite_link( Subscription price (stars). Returns: - ``str``: On success, the new invite link as string is returned. + :obj:`~pyrogram.types.ChatInviteLink`: On success, the invite link is returned. Example: .. code-block:: python @@ -78,4 +78,4 @@ async def export_chat_invite_link( ) ) - return r.link + return types.ChatInviteLink._parse(self, r) diff --git a/pyrogram/types/user_and_chats/chat_invite_link.py b/pyrogram/types/user_and_chats/chat_invite_link.py index 3a1d2edd6..48c58c337 100644 --- a/pyrogram/types/user_and_chats/chat_invite_link.py +++ b/pyrogram/types/user_and_chats/chat_invite_link.py @@ -68,6 +68,15 @@ class ChatInviteLink(Object): pending_join_request_count (``int``, *optional*): Number of pending join requests created using this link + + subscription_expired (``int``, *optional*): + Number of subscription which already expired. + + subscription_period (``int``, *optional*): + The period of Subscription. + + subscription_price (``int``, *optional*): + The price of Subscription (stars). """ def __init__( @@ -83,7 +92,10 @@ def __init__( expire_date: datetime = None, member_limit: int = None, member_count: int = None, - pending_join_request_count: int = None + pending_join_request_count: int = None, + subscription_expired: int = None, + subscription_period: int = None, + subscription_price: int = None ): super().__init__() @@ -99,6 +111,9 @@ def __init__( self.member_limit = member_limit self.member_count = member_count self.pending_join_request_count = pending_join_request_count + self.subscription_expired = subscription_expired + self.subscription_period = subscription_period + self.subscription_price = subscription_price @staticmethod def _parse( @@ -114,6 +129,7 @@ def _parse( if users is not None else None ) + subscription_pricing = getattr(invite, "subscription_pricing", None) return ChatInviteLink( invite_link=invite.link, @@ -127,5 +143,8 @@ def _parse( expire_date=utils.timestamp_to_datetime(invite.expire_date), member_limit=invite.usage_limit, member_count=invite.usage, - pending_join_request_count=invite.requested + pending_join_request_count=invite.requested, + subscription_expired=invite.subscription_expired, + subscription_period=subscription_pricing.period if subscription_pricing is not None else None, + subscription_price=subscription_pricing.amount if subscription_pricing is not None else None )