Exemplo n.º 1
0
        public async void SearchAsync()
        {
            SearchResults.Clear();
            if (!string.IsNullOrEmpty(Username))
            {
                var bungie = new BungieService(Shared.SharedData.BungieApiKey);

                var destinyPlayers = await bungie.GetDestinyPlayers(-1, Username);

                foreach (var player in destinyPlayers)
                {
                    SearchResults.Add(new PlayerSearchResultViewModel(player));
                }
            }
        }
Exemplo n.º 2
0
        private async void btnSyncActivities_Click(object sender, RoutedEventArgs e)
        {
            //tbStatus.Text = "In progress...";

            try
            {
                var bungie = new BungieService(SharedData.BungieApiKey);

                int    platform    = 1;
                string accountName = "BlackDragon1999";

                var destinyPlayer  = (await bungie.GetDestinyPlayers(platform, accountName)).First();
                var accountId      = destinyPlayer.MembershipId;
                var destinyProfile = await bungie.GetDestinyProfile(platform, accountId);

                int mode = 5;

                await bungie.DownloadDestinyManifest();

                foreach (var characterId in destinyProfile.Data.CharacterIds)
                {
                    var history = await bungie.GetActivityHistory(platform, accountId, characterId, mode);

                    await Task.WhenAll(from pgcr in history
                                       select Task.Run(async() =>
                    {
                        var getActivityDefinition = bungie.GetActivityDefinitionAsync(pgcr.ActivityDetails.ReferenceId);
                        var getModeDefinition     = bungie.GetActivityModeDefinitionAsync(pgcr.ActivityDetails.Mode);

                        var activity = new DestinyUserActivity(pgcr, await getActivityDefinition, await getModeDefinition, characterId);

                        var msGraph = new MsGraphService(SharedData.MsGraphClientId);
                        await msGraph.CreateOrReplaceActivityAsync(activity.Activity);
                    }));
                }

                //tbStatus.Text = "Done";
            }
            catch (Exception ex)
            {
                //tbStatus.Text = $"Failed: {ex.ToString()}";
            }
        }