FromBytes() public static méthode

public static FromBytes ( byte buffer, ISessionStore store, string sessionUserId ) : Session
buffer byte
store ISessionStore
sessionUserId string
Résultat Session
Exemple #1
0
        public Session Load(string sessionUserId, string SessionPath = null)
        {
            string Path = string.Empty;

            if (SessionPath != null)
            {
                Path += SessionPath;
            }

            Path += sessionUserId;

            var sessionFileName = $"{Path}.dat";

            if (!File.Exists(sessionFileName))
            {
                return(null);
            }

            using (var stream = new FileStream(sessionFileName, FileMode.Open))
            {
                var buffer = new byte[2048];
                stream.Read(buffer, 0, 2048);

                return(Session.FromBytes(buffer, this, sessionUserId, SessionPath));
            }
        }
Exemple #2
0
        public Session Load(string sessionUserId)
        {
            using (var stream = new FileStream($"{sessionUserId}.dat", FileMode.Open))
            {
                var buffer = new byte[2048];
                stream.Read(buffer, 0, 2048);

                return(Session.FromBytes(buffer, this, sessionUserId));
            }
        }
        public Session Load(string sessionUserId)
        {
            var sessionFileName = $"{sessionUserId}.dat";

            if (!File.Exists(sessionFileName))
            {
                return(null);
            }

            using (var stream = new FileStream(sessionFileName, FileMode.Open))
            {
                var buffer = new byte[2048];
                stream.Read(buffer, 0, 2048);

                return(Session.FromBytes(buffer, this, sessionUserId));
            }
        }
Exemple #4
0
        private async Task MakeRequestAtDataCenterWithTemporarySubClient(TLMethod request, int dataCenter)
        {
            var fakeStore = new FakeSessionStore();
            var subClient = new TelegramClient(_apiId, _apiHash, fakeStore, "session", null, _useIpV6DataCenters)
            {
                _session   = Session.FromBytes(_session.ToBytes(), fakeStore, "session"),
                _transport = new TcpTransport(_session.DataCenter.Address, _session.DataCenter.Port, _handler)
            };
            await subClient.ConnectAsync();

            await subClient.ReconnectToDcAsync(dataCenter);

            request.ConfirmReceived = false;
            await subClient.RequestWithDcMigration(request);

            _session.LastMessageId = subClient._session.LastMessageId;
            _session.Sequence      = subClient._session.Sequence;
        }
Exemple #5
0
        public Session Load(string sessionUserId)
        {
            string sessionFileName = $"{sessionUserId}.dat";
            var    sessionPath     = basePath == null ? sessionFileName :
                                     Path.Combine(basePath.FullName, sessionFileName);

            if (!File.Exists(sessionPath))
            {
                return(null);
            }

            using (var stream = new FileStream(sessionPath, FileMode.Open))
            {
                var buffer = new byte[2048];
                stream.Read(buffer, 0, 2048);

                return(Session.FromBytes(buffer, this, sessionUserId));
            }
        }
Exemple #6
0
        public Session Load(string sessionUserId)
        {
            //string path = "App_Data\\Telegram";
            string path = "wwwroot\\App_Data\\Telegram"; // debug only

            string sessionFileName = $"{path}\\{sessionUserId}.dat";
            var    sessionPath     = basePath == null ? sessionFileName :
                                     Path.Combine(basePath.FullName, sessionFileName);

            if (!File.Exists(sessionPath))
            {
                return(null);
            }

            using (var stream = new FileStream(sessionPath, FileMode.Open))
            {
                var buffer = new byte[2048];
                stream.Read(buffer, 0, 2048);

                return(Session.FromBytes(buffer, this, sessionUserId));
            }
        }