Exemple #1
0
 /// <inheritdoc />
 public async Task <VkCollection <User> > GetSuggestionsAsync(FriendsFilter filter = null, long?count = null,
                                                              long?offset          = null,
                                                              UsersFields fields   = null, NameCase nameCase = null)
 {
     return(await TypeHelper.TryInvokeMethodAsync(() =>
                                                  _vk.Friends.GetSuggestions(filter, count, offset, fields, nameCase)));
 }
 /// <inheritdoc />
 public Task <VkCollection <User> > GetSuggestionsAsync(FriendsFilter filter = null
                                                        , long?count         = null
                                                        , long?offset        = null
                                                        , UsersFields fields = null
                                                        , NameCase nameCase  = null)
 {
     return(TypeHelper.TryInvokeMethodAsync(func: () =>
                                            GetSuggestions(filter: filter, count: count, offset: offset, fields: fields, nameCase: nameCase)));
 }
Exemple #3
0
 public void FriendsFilterTest()
 {
     // get test
     Assert.That(FriendsFilter.Mutual.ToString(), Is.EqualTo("mutual"));
     Assert.That(FriendsFilter.Contacts.ToString(), Is.EqualTo("contacts"));
     Assert.That(FriendsFilter.MutualContacts.ToString(), Is.EqualTo("mutual_contacts"));
     // parse test
     Assert.That(FriendsFilter.FromJsonString("mutual"), Is.EqualTo(FriendsFilter.Mutual));
     Assert.That(FriendsFilter.FromJsonString("contacts"), Is.EqualTo(FriendsFilter.Contacts));
     Assert.That(FriendsFilter.FromJsonString("mutual_contacts"), Is.EqualTo(FriendsFilter.MutualContacts));
 }
Exemple #4
0
        public VkCollection <User> GetSuggestions(FriendsFilter filter = null, long?count = null, long?offset = null, UsersFields fields = null, NameCase nameCase = null)
        {
            var parameters = new VkParameters {
                { "filter", filter },
                { "count", count },
                { "offset", offset },
                { "fields", fields },
                { "name_case", nameCase }
            };

            return(_vk.Call("friends.getSuggestions", parameters).ToVkCollectionOf <User>(x => x));
        }
Exemple #5
0
        public void FriendsFilterTest()
        {
            // get test
            Assert.That(actual: FriendsFilter.Mutual.ToString(), expression: Is.EqualTo(expected: "mutual"));
            Assert.That(actual: FriendsFilter.Contacts.ToString(), expression: Is.EqualTo(expected: "contacts"));
            Assert.That(actual: FriendsFilter.MutualContacts.ToString(), expression: Is.EqualTo(expected: "mutual_contacts"));

            // parse test
            Assert.That(actual: FriendsFilter.FromJsonString(response: "mutual"), expression: Is.EqualTo(expected: FriendsFilter.Mutual));

            Assert.That(actual: FriendsFilter.FromJsonString(response: "contacts")
                        , expression: Is.EqualTo(expected: FriendsFilter.Contacts));

            Assert.That(actual: FriendsFilter.FromJsonString(response: "mutual_contacts")
                        , expression: Is.EqualTo(expected: FriendsFilter.MutualContacts));
        }
Exemple #6
0
        public FriendProfile[] AllFriends(int start = 0, int limit = 20, FriendsFilter filter = FriendsFilter.All)
        {
            var friends = _getFriends(start, limit, filter);

            if (friends == null)
            {
                return(new FriendProfile[0]);
            }
            FriendProfile[] prof = new FriendProfile[limit];
            int             x    = 0;

            foreach (var item in friends["profiles"])
            {
                prof[x++] = new FriendProfile
                {
                    OnlineId = item["onlineId"]
                };
            }
            return(prof);
        }
Exemple #7
0
 public short Count(FriendsFilter friendsFilter = FriendsFilter.All)
 {
     return((short)_getFriends(0, 0, friendsFilter)["totalResults"]);
 }
Exemple #8
0
        private dynamic _getFriends(int start = 0, int limit = 20, FriendsFilter filter = FriendsFilter.All)
        {
            string f = filter == FriendsFilter.All ? "" : "userFilter=online";

            return(Http.Get($"https://us-prof.np.community.playstation.net/userProfile/v1/users/me/friends/profiles2?fields=onlineId,avatarUrls,plus,aboutMe,trophySummary(@default),isOfficiallyVerified,personalDetail(@default,profilePictureUrls),primaryOnlineStatus,presences(@titleInfo,hasBroadcastData)&sort=name-onlineId&{f}&avatarSizes=m&profilePictureSizes=m&offset={start}&limit={limit}", null, null, new { Authorization = "Bearer " + Variables.AccessToken }).AsJson());
        }
Exemple #9
0
        /// <summary>
        /// Возвращает список профилей пользователей, которые могут быть друзьями текущего пользователя.
        /// </summary>
        /// <param name="filter">Типы предлагаемых друзей, которые нужно вернуть, перечисленные через запятую.</param>
        /// <param name="count">Количество рекомендаций, которое необходимо вернуть. положительное число, максимальное значение 500, по умолчанию 500 (положительное число, максимальное значение 500, по умолчанию 500).</param>
        /// <param name="offset">Смещение, необходимое для выбора определённого подмножества списка. положительное число (положительное число).</param>
        /// <param name="fields">Список дополнительных полей, которые необходимо вернуть. Доступные значения: nickname, screen_name, sex, bdate, city, country, timezone, photo_50, photo_100, photo_200_orig, has_mobile, contacts, education, online, counters, relation, last_seen, status, can_write_private_message, can_see_all_posts, can_post, universities список строк, разделенных через запятую(список строк, разделенных через запятую).</param>
        /// <param name="nameCase">Падеж для склонения имени и фамилии пользователя. Возможные значения: именительный – nom, родительный – gen, дательный – dat, винительный – acc, творительный – ins, предложный – abl. По умолчанию nom. строка (строка).</param>
        /// <returns>
        /// После успешного выполнения возвращает список объектов пользователей с дополнительным полем found_with для пользователей, найденных через импорт контактов. Для некоторых пользователей, которые были найдены давно поле found_with может отсутствовать.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/friends.getSuggestions" />.
        /// </remarks>
        public VkCollection<User> GetSuggestions(FriendsFilter filter = null, long? count = null, long? offset = null, UsersFields fields = null, NameCase nameCase = null)
        {
            var parameters = new VkParameters {
                { "filter", filter },
                { "count", count },
                { "offset", offset },
                { "fields", fields },
                { "name_case", nameCase }
            };

            return _vk.Call("friends.getSuggestions", parameters).ToVkCollectionOf<User>(x => x);
        }