Add MessageOriginImport

Signed-off-by: wulan17 <wulan17@komodos.id>
This commit is contained in:
KurimuzonAkuma 2025-03-20 12:00:25 +03:00 committed by wulan17
parent 7ae98099db
commit 6b28d305c0
No known key found for this signature in database
GPG key ID: 737814D4B5FF0420
5 changed files with 64 additions and 0 deletions

View file

@ -516,6 +516,7 @@ def pyrogram_api():
MessageOriginChannel MessageOriginChannel
MessageOriginChat MessageOriginChat
MessageOriginHiddenUser MessageOriginHiddenUser
MessageOriginImport
MessageOriginUser MessageOriginUser
MessageOrigin MessageOrigin
Photo Photo

View file

@ -34,5 +34,9 @@ class MessageOriginType(AutoName):
HIDDEN_USER = auto() HIDDEN_USER = auto()
"The message was originally sent by a user, which is hidden by their privacy settings" "The message was originally sent by a user, which is hidden by their privacy settings"
IMPORT = auto()
"The message was imported from a foreign chat service"
USER = auto() USER = auto()
"The message was originally sent by a known user" "The message was originally sent by a known user"

View file

@ -41,6 +41,7 @@ from .message_origin import MessageOrigin
from .message_origin_channel import MessageOriginChannel from .message_origin_channel import MessageOriginChannel
from .message_origin_chat import MessageOriginChat from .message_origin_chat import MessageOriginChat
from .message_origin_hidden_user import MessageOriginHiddenUser from .message_origin_hidden_user import MessageOriginHiddenUser
from .message_origin_import import MessageOriginImport
from .message_origin_user import MessageOriginUser from .message_origin_user import MessageOriginUser
from .photo import Photo from .photo import Photo
from .poll import Poll from .poll import Poll
@ -102,6 +103,7 @@ __all__ = [
"MessageOriginChannel", "MessageOriginChannel",
"MessageOriginChat", "MessageOriginChat",
"MessageOriginHiddenUser", "MessageOriginHiddenUser",
"MessageOriginImport",
"MessageOriginUser", "MessageOriginUser",
"Photo", "Photo",
"Thumbnail", "Thumbnail",

View file

@ -33,6 +33,7 @@ class MessageOrigin(Object):
- :obj:`~pyrogram.types.MessageOriginChannel` - :obj:`~pyrogram.types.MessageOriginChannel`
- :obj:`~pyrogram.types.MessageOriginChat` - :obj:`~pyrogram.types.MessageOriginChat`
- :obj:`~pyrogram.types.MessageOriginHiddenUser` - :obj:`~pyrogram.types.MessageOriginHiddenUser`
- :obj:`~pyrogram.types.MessageOriginImport`
- :obj:`~pyrogram.types.MessageOriginUser` - :obj:`~pyrogram.types.MessageOriginUser`
""" """
@ -87,3 +88,8 @@ class MessageOrigin(Object):
date=forward_date, date=forward_date,
sender_user_name=fwd_from.from_name sender_user_name=fwd_from.from_name
) )
elif fwd_from.imported:
return types.MessageOriginImport(
date=forward_date,
sender_user_name=fwd_from.post_author
)

View file

@ -0,0 +1,51 @@
# Pyrogram - Telegram MTProto API Client Library for Python
# Copyright (C) 2017-present <https://github.com/TelegramPlayGround>
# Copyright (C) 2022-present Mayuri-Chan <https://github.com/Mayuri-Chan>
#
# 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 datetime import datetime
from pyrogram import enums
from .message_origin import MessageOrigin
class MessageOriginImport(MessageOrigin):
"""Contains information about a message imported from a foreign chat service.
Parameters:
type (:obj:`~pyrogram.enums.MessageOriginType`):
Type of the message origin.
date (:py:obj:`~datetime.datetime`):
Date the message was sent originally.
sender_user_name (``str``):
Name of the original sender.
"""
def __init__(
self,
*,
date: datetime = None,
sender_user_name: str = None
):
super().__init__(
type=enums.MessageOriginType.IMPORT,
date=date
)
self.sender_user_name = sender_user_name