diff --git a/compiler/docs/compiler.py b/compiler/docs/compiler.py index 7becd223..6dd8adf4 100644 --- a/compiler/docs/compiler.py +++ b/compiler/docs/compiler.py @@ -226,6 +226,7 @@ def pyrogram_api(): get_chat_online_count get_send_as_chats set_send_as_chat + set_chat_protected_content """, users=""" Users @@ -515,7 +516,7 @@ def pyrogram_api(): Chat.join Chat.leave Chat.mark_unread - Chat.no_forwards + Chat.set_protected_content """, user=""" User diff --git a/pyrogram/methods/chats/__init__.py b/pyrogram/methods/chats/__init__.py index 87634793..70c02dee 100644 --- a/pyrogram/methods/chats/__init__.py +++ b/pyrogram/methods/chats/__init__.py @@ -48,6 +48,7 @@ from .set_administrator_title import SetAdministratorTitle from .set_chat_description import SetChatDescription from .set_chat_permissions import SetChatPermissions from .set_chat_photo import SetChatPhoto +from .set_chat_protected_content import SetChatProtectedContent from .set_chat_title import SetChatTitle from .set_send_as_chat import SetSendAsChat from .set_slow_mode import SetSlowMode @@ -56,7 +57,6 @@ from .unban_chat_member import UnbanChatMember from .unpin_all_chat_messages import UnpinAllChatMessages from .unpin_chat_message import UnpinChatMessage from .update_chat_username import UpdateChatUsername -from .toggle_no_forwards import ToggleNoForwards class Chats( @@ -100,6 +100,6 @@ class Chats( GetChatOnlineCount, GetSendAsChats, SetSendAsChat, - ToggleNoForwards + SetChatProtectedContent ): pass diff --git a/pyrogram/methods/chats/toggle_no_forwards.py b/pyrogram/methods/chats/set_chat_protected_content.py similarity index 81% rename from pyrogram/methods/chats/toggle_no_forwards.py rename to pyrogram/methods/chats/set_chat_protected_content.py index 182c8e77..8057873d 100644 --- a/pyrogram/methods/chats/toggle_no_forwards.py +++ b/pyrogram/methods/chats/set_chat_protected_content.py @@ -22,28 +22,30 @@ from pyrogram.raw import functions from pyrogram.scaffold import Scaffold -class ToggleNoForwards(Scaffold): - async def toggle_no_forwards( +class SetChatProtectedContent(Scaffold): + async def set_chat_protected_content( self, chat_id: Union[int, str], - enabled: bool = False + enabled: bool ) -> bool: - """Toggle no forwards chat option + """Set the chat protected content setting. Parameters: chat_id (``int`` | ``str``): Unique identifier (int) or username (str) of the target chat. - enabled (``bool``, *optional*): - Pass True to enable no forwards + enabled (``bool``): + Pass True to enable the protected content setting, False to disable. Returns: ``bool``: On success, True is returned. """ - return await self.send( + await self.send( functions.messages.ToggleNoForwards( peer=await self.resolve_peer(chat_id), enabled=enabled ) ) + + return True diff --git a/pyrogram/types/user_and_chats/chat.py b/pyrogram/types/user_and_chats/chat.py index 8d95e4a9..486fe66f 100644 --- a/pyrogram/types/user_and_chats/chat.py +++ b/pyrogram/types/user_and_chats/chat.py @@ -325,7 +325,7 @@ class Chat(Object): send_as_raw = users[default_send_as.user_id] else: send_as_raw = chats[default_send_as.channel_id] - + parsed_chat.send_as_chat = Chat._parse_chat(client, send_as_raw) if full_chat.pinned_msg_id: @@ -1012,25 +1012,29 @@ class Chat(Object): return await self._client.mark_chat_unread(self.id) - async def no_forwards(self, enabled: bool = False) -> bool: - """Bound method *toggle_no_forwards* of :obj:`~pyrogram.types.Chat`. + async def set_protected_content(self, enabled: bool) -> bool: + """Bound method *set_protected_content* of :obj:`~pyrogram.types.Chat`. Use as a shortcut for: .. code-block:: python - client.toggle_no_forwards(chat_id, enabled) + client.set_chat_protected_content(chat_id, enabled) + + Parameters: + enabled (``bool``): + Pass True to enable the protected content setting, False to disable. Example: .. code-block:: python - chat.toggle_no_forwards(True) + chat.set_protected_content(enabled) Returns: ``bool``: On success, True is returned. """ - return await self._client.toggle_no_forwards( + return await self._client.set_chat_protected_content( self.id, enabled=enabled )