示例#1
0
        public async Task <List <NotificationRES> > Get()
        {
            Universal universal = new Universal();
            List <NotificationRES> notificationRESList = await universal.GET <List <NotificationRES> >("auth/user/notifications", true);

            Console.WriteLine($"Grabbed {notificationRESList.Count} Notifications!");
            Console.WriteLine();

            return(notificationRESList);
        }
示例#2
0
        public async Task <List <UserRES> > Get(int offset = 0, int count = 20, bool offline = false)
        {
            Universal      universal   = new Universal();
            List <UserRES> userRESList = await universal.GET <List <UserRES> >("auth/user/friends", true, $"&offset={offset}&count={count}&offline={offline.ToString().ToLowerInvariant()}");

            Console.WriteLine($"Grabbed {userRESList.Count} friends!");
            Console.WriteLine();

            return(userRESList);
        }
示例#3
0
        public async Task <List <WorldRES> > Get(string parameters)
        {
            Universal       universal    = new Universal();
            List <WorldRES> worldRESList = await universal.GET <List <WorldRES> >("worlds", true, parameters);

            Console.WriteLine($"Grabbed {worldRESList.Count} worlds!");
            Console.WriteLine();

            return(worldRESList);
        }
示例#4
0
        public async Task <List <AvatarRES> > Get(string parameters)
        {
            Universal        universal     = new Universal();
            List <AvatarRES> avatarRESList = await universal.GET <List <AvatarRES> >("avatars", true, parameters);

            Console.WriteLine($"Grabbed {avatarRESList.Count} avatars!");
            Console.WriteLine();

            return(avatarRESList);
        }
示例#5
0
        public async Task <List <PlayerModerationsRES> > GetPlayerModerated()
        {
            Universal universal = new Universal();
            List <PlayerModerationsRES> playerModeratedRESList = await universal.GET <List <PlayerModerationsRES> >("auth/user/playermoderated", true);

            Console.WriteLine($"Grabbed {playerModeratedRESList.Count} moderations!");
            Console.WriteLine();

            return(playerModeratedRESList);
        }
示例#6
0
        public async Task <List <ModerationsRES> > Get()
        {
            Universal             universal          = new Universal();
            List <ModerationsRES> moderationsRESList = await universal.GET <List <ModerationsRES> >("auth/user/moderations", true);

            Console.WriteLine($"Grabbed {moderationsRESList.Count} moderations!");
            Console.WriteLine();

            return(moderationsRESList);
        }
示例#7
0
        public async Task <List <FavoritesRES> > Get()
        {
            Universal           universal        = new Universal();
            List <FavoritesRES> favoritesRESList = await universal.GET <List <FavoritesRES> >("favorites", true);

            Console.WriteLine($"Grabbed {favoritesRESList.Count} favorites!");
            Console.WriteLine();

            return(favoritesRESList);
        }
示例#8
0
        public async Task <UserRES> GetByName(string name)
        {
            Universal universal = new Universal();
            UserRES   userRES   = await universal.GET <UserRES>("users/", name + "/name", true);

            Console.WriteLine($"{userRES.id}");
            Console.WriteLine($"Grabbed User: {userRES.displayName}");
            Console.WriteLine();

            return(userRES);
        }
示例#9
0
        public async Task <UserRES> GetById(string id)
        {
            Universal universal = new Universal();
            UserRES   userRES   = await universal.GET <UserRES>("users/", id, true);

            Console.WriteLine($"{userRES.id}");
            Console.WriteLine($"Grabbed User: '******'");
            Console.WriteLine();

            return(userRES);
        }
示例#10
0
        public async Task <FavoritesRES> GetSingle(string id)
        {
            Universal    universal    = new Universal();
            FavoritesRES favoritesRES = await universal.GET <FavoritesRES>("favorites/", id, true);

            Console.WriteLine($"{favoritesRES.id}");
            Console.WriteLine($"Grabbed favorite {favoritesRES.favoriteId} type of {favoritesRES.typeOptions}");
            Console.WriteLine();

            return(favoritesRES);
        }
示例#11
0
        public async Task <AvatarRES> GetSingle(string id)
        {
            Universal universal = new Universal();
            AvatarRES avatarRES = await universal.GET <AvatarRES>($"avatars/", id, true);

            Console.WriteLine($"{avatarRES.id}");
            Console.WriteLine($"Grabbed Avatar: ' {avatarRES.name} ' made by {avatarRES.authorName}");
            Console.WriteLine();

            return(avatarRES);
        }
示例#12
0
        public async Task <WorldMDRES> GetMetadata(string id)
        {
            Universal  universal  = new Universal();
            WorldMDRES worldMDRES = await universal.GET <WorldMDRES>("worlds/", id + "/metadata", true);

            Console.WriteLine($"{worldMDRES.id}");
            Console.WriteLine($"World Metadata: {worldMDRES.metadata}");
            Console.WriteLine();

            return(worldMDRES);
        }
示例#13
0
        public async Task <List <UserRES> > Get(string search = null, int n = 20, int offset = 0)
        {
            string search2 = string.IsNullOrEmpty(search) ? "" : $"&search={search}";

            Universal      universal   = new Universal();
            List <UserRES> userRESList = await universal.GET <List <UserRES> >("users", true, $"{search2}&n={n}&offset={offset}");

            Console.WriteLine($"Grabbed {userRESList.Count} users!");
            Console.WriteLine();

            return(userRESList);
        }
示例#14
0
        public async Task <WorldSelfRES> GetSingle(string id)
        {
            Universal    universal = new Universal();
            WorldSelfRES worldRES  = await universal.GET <WorldSelfRES>("worlds/", id, true);

            worldRES.instances = worldRES._instances.Select(data => new WorldInstance()
            {
                id        = (string)data[0],
                occupants = (int)data[1]
            }).ToList();

            Console.WriteLine($"{worldRES.id}");
            Console.WriteLine($"Grabbed World: ' {worldRES.name} ' made by {worldRES.authorName}");
            Console.WriteLine();

            return(worldRES);
        }
示例#15
0
        public async Task <List <UserRES> > GetAll()
        {
            Universal universal = new Universal();
            var       friends = new List <UserRES>();
            var       offset = 0; var step = 100; var pages = 15;

            for (int i = 0; i < pages; i++)
            {
                // Console.WriteLine($"{i} Getting online friends {offset} to {offset + step}");
                var friends_part = await universal.GET <List <UserRES> >("auth/user/friends", true, $"&offset={offset}&count={step}&offline=false");

                if (friends_part == null)
                {
                    break;
                }
                friends.AddRange(friends_part); // .Select(c => { c.Offline = true; return c; }));
                // Console.WriteLine($"{i} Got {friends_part.Count} online friends");
                if (friends_part.Count < 100)
                {
                    break;
                }
                offset += 100;
            }
            offset = 0;
            for (int i = 0; i < pages; i++)
            {
                // Console.WriteLine($"{i} Getting offline friends {offset} to {offset + step}");
                var friends_part = await universal.GET <List <UserRES> >("auth/user/friends", true, $"&offset={offset}&count={step}&offline=true");

                if (friends_part == null)
                {
                    break;
                }
                friends.AddRange(friends_part); // .Select(c => { c.Offline = true; return c; }));
                // Console.WriteLine($"{i} Got {friends_part.Count} offline friends");
                if (friends_part.Count < 100)
                {
                    break;
                }
                offset += 100;
            }
            Console.WriteLine($"Downloaded list of {friends.Count} friends");
            return(friends);
        }
示例#16
0
        public async Task <ConfigRES> Get()
        {
            Universal universal = new Universal();
            ConfigRES configRES = await universal.GET <ConfigRES>("config", false);

            if (string.IsNullOrEmpty(configRES.apiKey))
            {
                currentApiKey = configRES.apiKey;
                Console.WriteLine($"Changed ApiKey to: '{configRES.apiKey}'");
                Console.WriteLine();
            }
            if (currentApiKey != configRES.apiKey)
            {
                currentApiKey = configRES.apiKey;
                Console.WriteLine($"Changed ApiKey to: '{configRES.apiKey}'");
                Console.WriteLine();
            }

            Console.WriteLine($"{configRES.appName}");
            Console.WriteLine($"Current APIKey: {configRES.apiKey}");
            Console.WriteLine();

            return(configRES);
        }
示例#17
0
        public async Task <List <AvatarRES> > Get(UserOptionsA?userOptions = null, bool?featured = null, string tag = null,
                                                  string search            = null, int?n = null, int?offset = null, OrderOptionsA?orderOptions = null, ReleaseStatusA?releaseStatus = null,
                                                  SortOptionsA?sortOptions = null, string maxUnityVersion = null, string minUnityVersion = null,
                                                  string maxAssetVersion   = null, string minAssetVersion = null, string platform        = null)
        {
            var param = new StringBuilder();

            param.Append($"&n={n}");
            param.Append($"&offset={offset}");

            if (featured.HasValue)
            {
                param.Append($"&featured={featured.Value}");

                if (featured.Value && sortOptions.HasValue == false)
                {
                    param.Append("&sort=order");
                }
            }

            if (sortOptions.HasValue)
            {
                param.Append($"&sort={sortOptions.Value.ToString().ToLowerInvariant()}");
            }

            if (userOptions.HasValue)
            {
                param.Append($"&user={userOptions.Value.ToString().ToLowerInvariant()}");
            }
            if (!string.IsNullOrEmpty(tag))
            {
                param.Append($"&tag={tag.ToLower()}");
            }
            if (!string.IsNullOrEmpty(search))
            {
                param.Append($"&search={search.ToLower()}");
            }
            if (orderOptions.HasValue)
            {
                param.Append($"&order={orderOptions.Value.ToString().ToLowerInvariant()}");
            }
            if (releaseStatus.HasValue)
            {
                param.Append($"&releaseStatus={releaseStatus.Value.ToString().ToLowerInvariant()}");
            }
            if (!string.IsNullOrEmpty(maxUnityVersion))
            {
                param.Append($"&maxUnityVersion={maxUnityVersion}");
            }
            if (!string.IsNullOrEmpty(minUnityVersion))
            {
                param.Append($"&minUnityVersion={minUnityVersion}");
            }
            if (!string.IsNullOrEmpty(maxAssetVersion))
            {
                param.Append($"&maxAssetVersion={maxAssetVersion}");
            }
            if (!string.IsNullOrEmpty(minAssetVersion))
            {
                param.Append($"&minAssetVersion={minAssetVersion}");
            }
            if (!string.IsNullOrEmpty(platform))
            {
                param.Append($"&platform={platform}");
            }

            Universal        universal     = new Universal();
            List <AvatarRES> avatarRESList = await universal.GET <List <AvatarRES> >("avatars", true, param.ToString());

            Console.WriteLine($"Grabbed {avatarRESList.Count} avatars!");
            Console.WriteLine();

            return(avatarRESList);
        }
示例#18
0
        public async Task <List <WorldRES> > Get(WorldGroups?endpoint        = null, bool?featured    = null,
                                                 SortOptions?sort            = null, UserOptions?user = null,
                                                 string userId               = null, string keyword   = null, string tags = null, string excludeTags = null,
                                                 ReleaseStatus?releaseStatus = null, int offset       = 0, int count      = 20)
        {
            var param = new StringBuilder();

            param.Append($"&n={count}");
            param.Append($"&offset={offset}");

            if (featured.HasValue)
            {
                param.Append($"&featured={featured.Value}");

                if (featured.Value && sort.HasValue == false)
                {
                    param.Append("&sort=order");
                }
            }

            if (sort.HasValue)
            {
                param.Append($"&sort={sort.Value.ToString().ToLowerInvariant()}");

                if (sort.Value == SortOptions.Popularity && featured.HasValue == false)
                {
                    param.Append("&featured=false");
                }
            }

            if (user.HasValue)
            {
                param.Append($"&user={user.Value.ToString().ToLowerInvariant()}");
            }
            if (!string.IsNullOrEmpty(userId))
            {
                param.Append($"&userId={userId}");
            }
            if (!string.IsNullOrEmpty(keyword))
            {
                param.Append($"&search={keyword}");
            }
            if (!string.IsNullOrEmpty(tags))
            {
                param.Append($"&tag={tags}");
            }
            if (!string.IsNullOrEmpty(excludeTags))
            {
                param.Append($"&notag={excludeTags}");
            }
            if (releaseStatus.HasValue)
            {
                param.Append($"&releaseStatus={releaseStatus.Value.ToString().ToLowerInvariant()}");
            }

            string baseUrl = "worlds";

            if (endpoint.HasValue)
            {
                switch (endpoint.Value)
                {
                case WorldGroups.Active:
                    baseUrl = "worlds/active";
                    break;

                case WorldGroups.Recent:
                    baseUrl = "worlds/recent";
                    break;

                case WorldGroups.Favorite:
                    baseUrl = "worlds/favorites";
                    break;
                }
            }

            Universal       universal        = new Universal();
            List <WorldRES> worldSelfRESList = await universal.GET <List <WorldRES> >(baseUrl, true, param.ToString());

            Console.WriteLine($"Grabbed {worldSelfRESList.Count} Worlds!");
            Console.WriteLine();

            return(worldSelfRESList);
        }