mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2025-08-09 05:19:41 +00:00
Initial release
The initial release contains the most basic implementation of TLSharp core. This is also fully untested, since no test can be done until more work is done.
This commit is contained in:
39
requests/mtproto_request.py
Normal file
39
requests/mtproto_request.py
Normal file
@@ -0,0 +1,39 @@
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
|
||||
class MTProtoRequest:
|
||||
def __init__(self):
|
||||
self.sent = False
|
||||
|
||||
self.msg_id = 0 # Long
|
||||
self.sequence = 0
|
||||
|
||||
self.dirty = False
|
||||
self.send_time = None
|
||||
self.confirm_received = False
|
||||
|
||||
# These should be overrode
|
||||
self.confirmed = False
|
||||
self.responded = False
|
||||
|
||||
# These should not be overrode
|
||||
def on_send_success(self):
|
||||
self.send_time = datetime.now()
|
||||
self.sent = True
|
||||
|
||||
def on_confirm(self):
|
||||
self.confirm_received = True
|
||||
|
||||
def need_resend(self):
|
||||
return self.dirty or (self.confirmed and not self.confirm_received and
|
||||
datetime.now() - self.send_time > timedelta(seconds=3))
|
||||
|
||||
# These should be overrode
|
||||
def on_send(self, writer):
|
||||
pass
|
||||
|
||||
def on_response(self, reader):
|
||||
pass
|
||||
|
||||
def on_exception(self, exception):
|
||||
pass
|
Reference in New Issue
Block a user