From decaa9e7f03aadc24d725dd800e781c555219d53 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 27 Dec 2018 23:55:56 +0100 Subject: [PATCH] Rename downwards to reversed --- .../client/methods/messages/get_history.py | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/pyrogram/client/methods/messages/get_history.py b/pyrogram/client/methods/messages/get_history.py index 845b9066..ce12e9b0 100644 --- a/pyrogram/client/methods/messages/get_history.py +++ b/pyrogram/client/methods/messages/get_history.py @@ -26,13 +26,11 @@ from ...ext import BaseClient class GetHistory(BaseClient): def get_history(self, chat_id: Union[int, str], - offset: int = 0, limit: int = 100, offset: int = 0, offset_id: int = 0, offset_date: int = 0, - add_offset: int = 0, - downwards: bool = False): + reversed: bool = False): """Use this method to retrieve the history of a chat. You can get up to 100 messages at once. @@ -43,34 +41,38 @@ class GetHistory(BaseClient): 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). - offset (``int``, *optional*) - Sequential number of the first message to be returned. - Defaults to 0 (most recent message). - limit (``int``, *optional*): Limits the number of messages to be retrieved. By default, the first 100 messages are returned. + offset (``int``, *optional*) + Sequential number of the first message to be returned. Defaults to 0 (most recent message). + Negative values are also accepted and become useful in case you set offset_id or offset_date. + offset_id (``int``, *optional*): Pass a message identifier as offset to retrieve only older messages starting from that message. offset_date (``int``, *optional*): Pass a date in Unix time as offset to retrieve only older messages starting from that date. + reversed (``bool``, *optional*): + Pass True to retrieve the messages in reversed order (from older to most recent). + Returns: On success, a :obj:`Messages ` object is returned. Raises: :class:`Error ` in case of a Telegram RPC error. """ - return pyrogram.Messages._parse( + + messages = pyrogram.Messages._parse( self, self.send( functions.messages.GetHistory( peer=self.resolve_peer(chat_id), offset_id=offset_id, offset_date=offset_date, - add_offset=offset, + add_offset=offset - (limit if reversed else 0), limit=limit, max_id=0, min_id=0, @@ -78,3 +80,8 @@ class GetHistory(BaseClient): ) ) ) + + if reversed: + messages.messages.reverse() + + return messages