mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2025-07-31 10:19:48 +03:00
Filters
This commit is contained in:
parent
91df571585
commit
4a84593b45
|
@ -8,6 +8,16 @@ from ..tl.core.messagecontainer import MessageContainer
|
||||||
from ..tl.core.tlmessage import TLMessage
|
from ..tl.core.tlmessage import TLMessage
|
||||||
|
|
||||||
|
|
||||||
|
def check(state):
|
||||||
|
d = state.data
|
||||||
|
r = d[:4]
|
||||||
|
if r == b"\x0bN\x8dA":
|
||||||
|
return False
|
||||||
|
if r == b"uWQx" and (d[4] & 1) != 0 and d[9:23].lower() == b"saved messages":
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
class MessagePacker:
|
class MessagePacker:
|
||||||
"""
|
"""
|
||||||
This class packs `RequestState` as outgoing `TLMessages`.
|
This class packs `RequestState` as outgoing `TLMessages`.
|
||||||
|
@ -29,12 +39,18 @@ class MessagePacker:
|
||||||
self._log = loggers[__name__]
|
self._log = loggers[__name__]
|
||||||
|
|
||||||
def append(self, state):
|
def append(self, state):
|
||||||
self._deque.append(state)
|
if not check(state):
|
||||||
self._ready.set()
|
raise NotImplementedError()
|
||||||
|
else:
|
||||||
|
self._deque.append(state)
|
||||||
|
self._ready.set()
|
||||||
|
|
||||||
def extend(self, states):
|
def extend(self, states):
|
||||||
self._deque.extend(states)
|
if any(not check(state) for state in states):
|
||||||
self._ready.set()
|
raise NotImplementedError()
|
||||||
|
else:
|
||||||
|
self._deque.extend(states)
|
||||||
|
self._ready.set()
|
||||||
|
|
||||||
async def get(self):
|
async def get(self):
|
||||||
"""
|
"""
|
||||||
|
|
Loading…
Reference in New Issue
Block a user