Source code for hydrogram.raw.functions.updates.get_channel_difference
# Hydrogram - Telegram MTProto API Client Library for Python# Copyright (C) 2023-present Hydrogram <https://hydrogram.org>## This file is part of Hydrogram.## Hydrogram 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.## Hydrogram 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 Hydrogram. If not, see <http://www.gnu.org/licenses/>.fromioimportBytesIOfromhydrogram.raw.core.primitivesimportInt,Long,Int128,Int256,Bool,Bytes,String,Double,Vectorfromhydrogram.raw.coreimportTLObjectfromhydrogramimportrawfromtypingimportList,Optional,Any# # # # # # # # # # # # # # # # # # # # # # # ## !!! WARNING !!! ## This is a generated file! ## All changes made in this file will be lost! ## # # # # # # # # # # # # # # # # # # # # # # #
[docs]classGetChannelDifference(TLObject):# type: ignore"""Returns the difference between the current state of updates of a certain channel and transmitted. Details: - Layer: ``181`` - ID: ``3173D78`` Parameters: channel (:obj:`InputChannel <hydrogram.raw.base.InputChannel>`): The channel filter (:obj:`ChannelMessagesFilter <hydrogram.raw.base.ChannelMessagesFilter>`): Messsage filter pts (``int`` ``32-bit``): Persistent timestamp (see updates) limit (``int`` ``32-bit``): How many updates to fetch, max 100000Ordinary (non-bot) users are supposed to pass 10-100 force (``bool``, *optional*): Set to true to skip some possibly unneeded updates and reduce server-side load Returns: :obj:`updates.ChannelDifference <hydrogram.raw.base.updates.ChannelDifference>` """__slots__:List[str]=["channel","filter","pts","limit","force"]ID=0x3173d78QUALNAME="functions.updates.GetChannelDifference"def__init__(self,*,channel:"raw.base.InputChannel",filter:"raw.base.ChannelMessagesFilter",pts:int,limit:int,force:Optional[bool]=None)->None:self.channel=channel# InputChannelself.filter=filter# ChannelMessagesFilterself.pts=pts# intself.limit=limit# intself.force=force# flags.0?true@staticmethoddefread(b:BytesIO,*args:Any)->"GetChannelDifference":flags=Int.read(b)force=Trueifflags&(1<<0)elseFalsechannel=TLObject.read(b)filter=TLObject.read(b)pts=Int.read(b)limit=Int.read(b)returnGetChannelDifference(channel=channel,filter=filter,pts=pts,limit=limit,force=force)defwrite(self,*args)->bytes:b=BytesIO()b.write(Int(self.ID,False))flags=0flags|=(1<<0)ifself.forceelse0b.write(Int(flags))b.write(self.channel.write())b.write(self.filter.write())b.write(Int(self.pts))b.write(Int(self.limit))returnb.getvalue()