Esempio n. 1
0
        /// <summary>
        /// Retrieves Pubgplayer data form Pubg corp database
        /// </summary>
        ///
        public static async Task <PubgPlayer> GetPubgPlayer(string id = null, string name = null)
        {
            PubgPlayer player = null;

            try
            {
                var playerService = new PubgPlayerService();
                if (id != null)
                {
                    player = await playerService.GetPlayerAsync(PubgPlatform.Steam, id, Config.PubgToken);
                }
                else if (name != null)
                {
                    var result = await playerService.GetPlayersAsync(PubgPlatform.Steam, new GetPubgPlayersRequest
                    {
                        ApiKey      = Config.PubgToken,
                        PlayerNames = new string[] { name }
                    });

                    player = result.FirstOrDefault();
                }
            }
            catch (Exception ss)
            {
            }
            return(player);
        }
Esempio n. 2
0
        public void GetPlayers_Throws_Exception_When_NotFound()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var filter = new GetPubgPlayersRequest
            {
                PlayerNames = new string[] { "NonExistantPlayerHopefully" }
            };

            Assert.Throws <PubgNotFoundException>(() => playerService.GetPlayers(PubgRegion.PCEurope, filter));
        }
Esempio n. 3
0
        private static async Task <PubgPlayer> GetPlayerFromApiAsync(string username, PubgPlatform platform)
        {
            PubgPlayerService service = new PubgPlayerService();

            List <PubgPlayer> players = (await service.GetPlayersAsync(platform, new GetPubgPlayersRequest
            {
                PlayerNames = new[] { username }
            })).ToList();

            return(players.FirstOrDefault());
        }
Esempio n. 4
0
        public void Can_Get_LifetimeStats_For_Player_OnPC()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var playerId = Storage.GetMatch(PubgPlatform.Steam).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.PlayerId).FirstOrDefault();

            var lifeTimeStats = playerService.GetPlayerLifetimeStats(PubgPlatform.Steam, playerId);

            lifeTimeStats.PlayerId.Should().BeEquivalentTo(playerId);
            lifeTimeStats.SeasonId.Should().BeEquivalentTo("lifetime");
            lifeTimeStats.GameModeStats.Should().NotBeNull();
        }
Esempio n. 5
0
        public void Can_Get_Player()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var playerId = Storage.GetMatch(PubgRegion.PCEurope).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.PlayerId).FirstOrDefault();

            var player = playerService.GetPlayer(PubgRegion.PCEurope, playerId);

            player.Id.Should().NotBeNull();
            player.MatchIds.Should().NotBeNullOrEmpty();
            player.Name.Should().NotBeNullOrWhiteSpace();
        }
Esempio n. 6
0
        public async Task <PubgPlayer> GetPlayerByNameAsync(string playerName, PubgRegion region = PubgRegion.PCNorthAmerica)
        {
            PubgPlayerService playerService = new PubgPlayerService();

            var request = new GetPubgPlayersRequest
            {
                PlayerNames = new string[] { playerName }
            };
            var response = await playerService.GetPlayersAsync(region,
                                                               request);

            return(response.First());
        }
Esempio n. 7
0
        public async Task <RequestResult <PubgPlayer> > Handle(GetRecentMatchesForPlayer request, CancellationToken cancellationToken)
        {
            var pubgPlayerService = new PubgPlayerService();
            var playersRequest    = new GetPubgPlayersRequest()
            {
                PlayerNames = new string[] { "S_T_A_R" }
            };

            var players = pubgPlayerService.GetPlayers(PubgPlatform.Steam, playersRequest);

            return(players
                   .FirstOrDefault()?
                   .AsSuccessResult());
        }
Esempio n. 8
0
        public void Can_Get_Players_ById()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var playerIds = Storage.GetMatch(PubgRegion.PCEurope).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.PlayerId).Take(5).ToArray();

            var filter = new GetPubgPlayersRequest
            {
                PlayerIds = playerIds
            };

            var players = playerService.GetPlayers(PubgRegion.PCEurope, filter);

            Assert.NotEmpty(players);
            Assert.All(players.Select(p => p.Id), id => playerIds.Contains(id));
        }
Esempio n. 9
0
        public void Can_Get_Players_ByName()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var playerNames = Storage.GetMatch(PubgPlatform.Steam).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.Name).Take(5).ToArray();

            var filter = new GetPubgPlayersRequest
            {
                PlayerNames = playerNames
            };

            var players = playerService.GetPlayers(PubgPlatform.Steam, filter);

            Assert.NotEmpty(players);
            Assert.All(players.Select(p => p.Name), name => playerNames.Contains(name));
        }
Esempio n. 10
0
        public static PubgPlayer GetPlayer(PubgPlatform platform)
        {
            var player = StoredItems.OfType<PubgPlayer>().FirstOrDefault(p => p.ShardId == platform.Serialize());

            if (player != null)
                return player;

            var playerService = new PubgPlayerService(ApiKey);

            var region = platform == PubgPlatform.Xbox ? PubgRegion.XboxEurope : PubgRegion.PCEurope;

            var playerNames = GetMatch(platform).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.Name).Take(5);
            var players = playerService.GetPlayers(platform, new GetPubgPlayersRequest { PlayerNames = playerNames.ToArray() });

            StoredItems.AddRange(players);

            return players.FirstOrDefault();
        }
Esempio n. 11
0
        public static PubgPlayer GetPlayer(PubgRegion region)
        {
            var player = StoredItems.OfType <PubgPlayer>().FirstOrDefault(p => p.ShardId == region.Serialize());

            if (player != null)
            {
                return(player);
            }

            var playerService = new PubgPlayerService(ApiKey);
            var playerNames   = GetMatch(region).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.Name).Take(5);
            var players       = playerService.GetPlayers(region, new GetPubgPlayersRequest {
                PlayerNames = playerNames.ToArray()
            });

            StoredItems.AddRange(players);

            return(players.FirstOrDefault());
        }
Esempio n. 12
0
        static void Main(string[] args)
        {
            var fileName     = "sampleTelemetry.json";
            var matchDetails = TelemetryParser.ParseTelemetry(fileName);
            var popularGun   = matchDetails.Players.SelectMany(x => x.PlayerKills).Select(x => x.DamageCauser).GroupBy(x => x).OrderByDescending(gp => gp.Count()).Select(x => x.Key).First();

            Console.WriteLine("Map: {0}", matchDetails.MapName);
            Console.WriteLine("Match Started At: {0}", matchDetails.MatchStartTime);
            Console.WriteLine("Match Ended At: {0}", matchDetails.MatchEndTime);
            Console.WriteLine("Total Match Length: {0} minutes", matchDetails.MatchLength.TotalMinutes);
            Console.WriteLine("Most Popular Gun: {0}", popularGun);
            PubgConfiguration.Configure((settings) =>
            {
                settings.ApiKey = "API KEY HERE";
            });
            var playerService = new PubgPlayerService();
            var playerTask    = playerService.FilterPlayersById(PUBGTelemetryParser.Enums.PubgRegion.PcNorthAmerica, "account.b34d58ce76d5459daf24991532333f30");

            playerTask.Wait();
            var result = playerTask.Result;
        }
Esempio n. 13
0
        public void Can_Get_Season_For_Player()
        {
            var playerService = new PubgPlayerService(Storage.ApiKey);

            var region   = PubgRegion.PCEurope;
            var playerId = Storage.GetMatch(region).Rosters.SelectMany(r => r.Participants).Select(p => p.Stats.PlayerId).FirstOrDefault();
            var seasonId = Storage.GetSeason(region).Id;

            var playerSeason = playerService.GetPlayerSeason(region, playerId, seasonId);

            playerSeason.Should().NotBeNull();
            playerSeason.GameModeStats.Should().NotBeNull();
            playerSeason.SeasonId.Should().NotBeNullOrWhiteSpace();
            playerSeason.PlayerId.Should().NotBeNullOrWhiteSpace();
            playerSeason.GameModeStats.Should().NotBeNull();
            playerSeason.GameModeStats.Solo.Should().NotBeNull();
            playerSeason.GameModeStats.SoloFPP.Should().NotBeNull();
            playerSeason.GameModeStats.Duo.Should().NotBeNull();
            playerSeason.GameModeStats.DuoFPP.Should().NotBeNull();
            playerSeason.GameModeStats.Squad.Should().NotBeNull();
            playerSeason.GameModeStats.SquadFPP.Should().NotBeNull();
        }
Esempio n. 14
0
 public PlayerRepository()
 {
     PubgDB        = new PubgDB();
     playerService = new PubgPlayerService();
 }
Esempio n. 15
0
 public PlayerRepository(Player player)
 {
     playerService = new PubgPlayerService();
     PubgDB        = new PubgDB();
     Player        = player;
 }
 public MainViewModel(INavigationService navigationService, IDialogService dialogService, PubgPlayerService pubgPlayerService) : base(navigationService, dialogService)
 {
     SelectedRegion = Enums.PubgRegion.PcNorthAmerica;
     SubmitCommand  = new Command(async() => await GetPlayerData());
     _playerService = pubgPlayerService;
 }