Remove export_story_link method

This commit is contained in:
KurimuzonAkuma 2024-01-13 17:08:37 +03:00
parent fccee4d643
commit ec207a2392
4 changed files with 7 additions and 88 deletions

View File

@ -357,7 +357,6 @@ def pyrogram_api():
edit_story_caption edit_story_caption
edit_story_media edit_story_media
edit_story_privacy edit_story_privacy
export_story_link
forward_story forward_story
get_all_stories get_all_stories
get_chat_stories get_chat_stories

View File

@ -22,7 +22,6 @@ from .delete_stories import DeleteStories
from .edit_story_caption import EditStoryCaption from .edit_story_caption import EditStoryCaption
from .edit_story_media import EditStoryMedia from .edit_story_media import EditStoryMedia
from .edit_story_privacy import EditStoryPrivacy from .edit_story_privacy import EditStoryPrivacy
from .export_story_link import ExportStoryLink
from .forward_story import ForwardStory from .forward_story import ForwardStory
from .get_all_stories import GetAllStories from .get_all_stories import GetAllStories
from .get_chat_stories import GetChatStories from .get_chat_stories import GetChatStories
@ -42,7 +41,6 @@ class Stories(
EditStoryCaption, EditStoryCaption,
EditStoryMedia, EditStoryMedia,
EditStoryPrivacy, EditStoryPrivacy,
ExportStoryLink,
ForwardStory, ForwardStory,
GetAllStories, GetAllStories,
GetChatStories, GetChatStories,

View File

@ -1,60 +0,0 @@
# Pyrogram - Telegram MTProto API Client Library for Python
# Copyright (C) 2017-present Dan <https://github.com/delivrance>
#
# This file is part of Pyrogram.
#
# Pyrogram 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.
#
# Pyrogram 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 Pyrogram. If not, see <http://www.gnu.org/licenses/>.
from typing import Union
import pyrogram
from pyrogram import raw
class ExportStoryLink:
async def export_story_link(
self: "pyrogram.Client",
chat_id: Union[int, str],
story_id: int,
) -> str:
"""Export a story link.
.. include:: /_includes/usable-by/users.rst
Parameters:
chat_id (``int`` | ``str``):
Unique identifier (int) or username (str) of the target chat.
For your personal cloud (Saved Messages) you can simply use "me" or "self".
For a contact that exists in your Telegram address book you can use his phone number (str).
story_id (``int``):
Unique identifier of the target story.
Returns:
``str``: On success, a link to the exported story is returned.
Example:
.. code-block:: python
# Export a story link
link = app.export_story_link(chat_id, 1)
"""
r = await self.invoke(
raw.functions.stories.ExportStoryLink(
peer=await self.resolve_peer(chat_id),
id=story_id
)
)
return r.link

View File

@ -343,6 +343,13 @@ class Story(Object, Update):
client=client client=client
) )
@property
def link(self) -> str:
if not self.chat.username:
return None
return f"https://t.me/{self.chat.username}/s/{self.id}"
async def reply_text( async def reply_text(
self, self,
text: str, text: str,
@ -1617,31 +1624,6 @@ class Story(Object, Update):
disallowed_users=disallowed_users, disallowed_users=disallowed_users,
) )
async def export_link(self) -> "types.ExportedStoryLink":
"""Bound method *export_link* of :obj:`~pyrogram.types.Story`.
Use as a shortcut for:
.. code-block:: python
await client.export_story_link(
chat_id=self.chat.id,
story_id=story.id
)
Example:
.. code-block:: python
link = await story.export_link()
Returns:
``str``: On success, a link to the story as string is returned.
Raises:
RPCError: In case of a Telegram RPC error.
"""
return await self._client.export_story_link(chat_id=self.chat.id, story_id=self.id)
async def react(self, emoji: Union[int, str] = None) -> bool: async def react(self, emoji: Union[int, str] = None) -> bool:
"""Bound method *react* of :obj:`~pyrogram.types.Story`. """Bound method *react* of :obj:`~pyrogram.types.Story`.