diff --git a/compiler/docs/compiler.py b/compiler/docs/compiler.py index 3894590d..0bad6380 100644 --- a/compiler/docs/compiler.py +++ b/compiler/docs/compiler.py @@ -278,6 +278,7 @@ def pyrogram_api(): delete_profile_photos set_username update_birthday + update_personal_chat update_profile block_user unblock_user diff --git a/pyrogram/methods/users/__init__.py b/pyrogram/methods/users/__init__.py index feb96a9b..1fba56c2 100644 --- a/pyrogram/methods/users/__init__.py +++ b/pyrogram/methods/users/__init__.py @@ -39,6 +39,7 @@ from .set_profile_photo import SetProfilePhoto from .set_username import SetUsername from .unblock_user import UnblockUser from .update_birthday import UpdateBirthday +from .update_personal_chat import UpdatePersonalChat from .update_profile import UpdateProfile @@ -62,6 +63,7 @@ class Users( GetChatPhotosCount, UnblockUser, UpdateBirthday, + UpdatePersonalChat, UpdateProfile, GetDefaultEmojiStatuses, SetEmojiStatus, diff --git a/pyrogram/methods/users/update_personal_chat.py b/pyrogram/methods/users/update_personal_chat.py new file mode 100644 index 00000000..ca602033 --- /dev/null +++ b/pyrogram/methods/users/update_personal_chat.py @@ -0,0 +1,51 @@ +# Pyrofork - Telegram MTProto API Client Library for Python +# Copyright (C) 2022-present Mayuri-Chan +# +# This file is part of Pyrofork. +# +# Pyrofork is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrofork is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrofork. If not, see . + +import pyrogram +from pyrogram import raw + +from typing import Union + +class UpdatePersonalChat: + async def update_personal_chat( + self: "pyrogram.Client", + chat_id: Union[int, str] + ) -> bool: + """Update your birthday details. + + .. include:: /_includes/usable-by/users.rst + + Parameters: + chat_id (``int``): + Unique identifier (int) of the target channel. + You can also use channel public link in form of *t.me/* (str). + + Returns: + ``bool``: True on success. + + Example: + .. code-block:: python + + # Update your personal chat + await app.update_personal_chat(chat_id=-1001234567890) + """ + chat = await self.resolve_peer(chat_id) + r = await self.invoke(raw.functions.account.UpdatePersonalChannel(channel=chat)) + if r: + return True + return False