示例#1
0
        public async Task Run(string user, string password, string homeserver = "https://matrix.org")
        {
            var client        = new MatrixClient(_logger, _httpClient, new Uri(homeserver));
            var loginResponse = await client.Login(user, password);

            Console.WriteLine(loginResponse);

            await client.StartEventPolling(loginResponse.AccessToken.NotNull(), TimeSpan.FromSeconds(5))
            .Do(syncResponse =>
            {
                Console.WriteLine($"Next batch: {syncResponse.NextBatch}");
            });
        }
示例#2
0
        public async Task Run(string user, string password, string homeserver = "https://matrix.org")
        {
            var client        = new MatrixClient(_logger, _httpClient, new Uri(homeserver));
            var loginResponse = await client.Login(user, password);

            Console.WriteLine(loginResponse);

            var events = client.StartEventPolling(loginResponse.AccessToken.NotNull(), TimeSpan.FromSeconds(5));

            events.Subscribe(
                syncResponse => Console.WriteLine($"Next batch: {syncResponse.NextBatch}"),
                Context.CancellationToken
                );
            await Context.CancellationToken.WhenCancelled();
        }