private void SetMinMessageId(byte[] bytes) { try { //var position = 0; //var encryptedMessage = (TLEncryptedTransportMessage)new TLEncryptedTransportMessage().FromBytes(bytes, ref position); //encryptedMessage.Decrypt(AuthKey); var encryptedMessage = new TLEncryptedTransportMessage(); using (var reader = new TLBinaryReader(bytes)) { encryptedMessage.Read(reader, AuthKey); } //position = 0; //TLTransportMessage transportMessage; //transportMessage = TLObject.GetObject<TLTransportMessage>(encryptedMessage.Query, ref position); var transportMessage = encryptedMessage.Query; MinMessageId = transportMessage.MsgId; System.Diagnostics.Debug.WriteLine("TCPTransport set min message_id={0} seq_no={1}", transportMessage.MsgId, transportMessage.SeqNo); } catch (Exception ex) { Execute.ShowDebugMessage("SetMessageId exception " + ex); } }
private static TLEncryptedTransportMessage CreateTLEncryptedMessage(byte[] authKey, TLContainerTransportMessage containerTransportMessage) { var message = new TLEncryptedTransportMessage { Data = containerTransportMessage.ToBytes() }; return(message.Encrypt(authKey)); }