diff --git a/telethon/network/mtprotoplainsender.py b/telethon/network/mtprotoplainsender.py index 82a8a18d..ddbd4a30 100644 --- a/telethon/network/mtprotoplainsender.py +++ b/telethon/network/mtprotoplainsender.py @@ -3,8 +3,8 @@ This module contains the class used to communicate with Telegram's servers in plain text, when no authorization key has been created yet. """ import struct -import time +from .mtprotostate import MTProtoState from ..errors import BrokenAuthKeyError from ..extensions import BinaryReader @@ -20,9 +20,7 @@ class MTProtoPlainSender: :param connection: the Connection to be used. """ - self._sequence = 0 - self._time_offset = 0 - self._last_msg_id = 0 + self._state = MTProtoState(auth_key=None) self._connection = connection async def send(self, request): @@ -30,7 +28,7 @@ class MTProtoPlainSender: Sends and receives the result for the given request. """ body = bytes(request) - msg_id = self._get_new_msg_id() + msg_id = self._state._get_new_msg_id() await self._connection.send( struct.pack('= new_msg_id: - new_msg_id = self._last_msg_id + 4 - - self._last_msg_id = new_msg_id - return new_msg_id