Exemple #1
0
        private Update[] GetUpdates()
        {
            try
            {
                var request = new UpdatesRequest
                {
                    Offset = updateOffset
                };

                var jsonText = api.SendRequest("getUpdates", request);
                var response = JsonConvert.DeserializeObject <Response>(jsonText);
                if (response.Success)
                {
                    return(response.Updates);
                }
                else
                {
                    return(new Update[0]);
                }
            }
            catch (Exception ex)
            {
                isRun = false;
                if (ex is WebException || ex is JsonException)
                {
                    Logger.LogFatal(ex);
                    return(new Update[0]);
                }
                throw;
            }
        }
Exemple #2
0
        public async Task GetUpdate()
        {
            if (_isUpdating)
            {
                return;
            }

            try
            {
                _isUpdating = true;

                UpdatesRequest request = new UpdatesRequest();
                request.LastActivityDate = LastActivity;
                UpdatesResponse response = await request.GetUpdate().ConfigureAwait(false);

                if (response.Matches != null && response.Matches.Length > 0)
                {
                    foreach (Match match in response.Matches)
                    {
                        _matches.Add(match);
                    }
                }

                LastActivity = DateTime.Parse(response.LastActivityDate);
            }
            catch (HttpRequestException e)
            {
                //if (e.Message.Contains("Unauthorized"))
                //{
                //    (Application.Current as IApp).Logout();
                //}
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception during update: " + ex.Message);
            }
            finally
            {
                _isUpdating = false;
            }
        }