Exemple #1
0
        /// <summary>
        /// Удаляет существующий список друзей текущего пользователя.
        /// </summary>
        /// <param name="listId">идентификатор списка друзей, который необходимо удалить</param>
        /// <returns>После успешного выполнения возвращает true.</returns>
        /// <remarks>
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/friends.deleteList"/>.
        /// </remarks>
        public bool DeleteList(long listId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => listId);

            var parameters = new VkParameters {
                { "list_id", listId }
            };

            VkResponse response = _vk.Call("friends.deleteList", parameters);

            return(response);
        }
Exemple #2
0
        public bool ReorderLink(long groupId, ulong linkId, ulong after)
        {
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            var parameters = new VkParameters
            {
                { "group_id", groupId },
                { "link_id", linkId },
                { "after", after }
            };

            return(_vk.Call("groups.reorderLink", parameters));
        }
Exemple #3
0
        public bool ApproveRequest(long groupId, long userId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            VkErrors.ThrowIfNumberIsNegative(() => userId);
            var parameters = new VkParameters
            {
                { "group_id", groupId },
                { "user_id", userId }
            };

            return(_vk.Call("groups.approveRequest", parameters));
        }
Exemple #4
0
        public Link AddLink(long groupId, Url link, string text)
        {
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            var parameters = new VkParameters
            {
                { "group_id", groupId },
                { "link", link.Value },
                { "text", text }
            };

            return(_vk.Call("groups.addLink", parameters));
        }
Exemple #5
0
        public bool EditLink(long groupId, ulong linkId, string text)
        {
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            var parameters = new VkParameters
            {
                { "group_id", groupId },
                { "link_id", linkId },
                { "text", text }
            };

            return(_vk.Call("groups.editLink", parameters));
        }
Exemple #6
0
        /// <summary>
        /// Возвращает статистику для записи на стене.
        /// </summary>
        /// <param name="ownerId">
        /// Идентификатор сообщества — владельца записи. Указывается
        /// со знаком «минус».
        /// </param>
        /// <param name="postId">
        /// Идентификатор записи. Обратите внимание — данные по статистике доступны только
        /// для 300
        /// последних(самых свежих) записей на стене сообщества.
        /// </param>
        /// <returns>
        /// Возвращает результат выполнения метода.
        /// </returns>
        /// <remarks>
        /// Необходимо входить в число руководителей этого сообщества.
        /// Страница документации ВКонтакте https://vk.com/dev/stats.getPostReach
        /// </remarks>
        public PostReach GetPostReach(long ownerId, long postId)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => postId);

            var parameters = new VkParameters
            {
                { "owner_id", ownerId }
                , { "post_id", postId }
            };

            return(_vk.Call(methodName: "stats.getPostReach", parameters: parameters));
        }
        /// <summary>
        /// Редактирует списки друзей для выбранного друга.
        /// </summary>
        /// <param name="userId">
        /// Идентификатор пользователя (из числа друзей), для которого необходимо
        /// отредактировать списки
        /// друзей. положительное число, обязательный параметр (Положительное число,
        /// обязательный параметр).
        /// </param>
        /// <param name="listIds">
        /// Идентификаторы списков друзей, в которые нужно добавить пользователя. список
        /// положительных чисел,
        /// разделенных запятыми (Список положительных чисел, разделенных запятыми).
        /// </param>
        /// <returns>
        /// После успешного выполнения возвращает 1.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте http://vk.com/dev/friends.edit
        /// </remarks>
        public bool Edit(long userId, IEnumerable <long> listIds)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => userId);

            var parameters = new VkParameters
            {
                { "user_id", userId }
                , { "list_ids", listIds }
            };

            return(_vk.Call(methodName: "friends.edit", parameters: parameters));
        }
Exemple #8
0
        public VkCollection <GiftItem> Get(long userId, int?count = null, int?offset = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => userId);
            var parameters = new VkParameters
            {
                { "user_id", userId },
                { "count", count },
                { "offset", offset }
            };

            return(_vk.Call("gifts.get", parameters).ToVkCollectionOf <GiftItem>(x => x));
        }
Exemple #9
0
        /// <inheritdoc />
        public bool Delete(long?ownerId = null, long?postId = null)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => postId);

            var parameters = new VkParameters
            {
                { "owner_id", ownerId }
                , { "post_id", postId }
            };

            return(_vk.Call(methodName: "wall.delete", parameters: parameters));
        }
Exemple #10
0
        /// <summary>
        /// Удаляет запись со стены.
        /// </summary>
        /// <param name="ownerId">Идентификатор пользователя или сообщества, на стене которого находится запись.</param>
        /// <param name="postId">Идентификатор записи на стене.</param>
        /// <returns>
        /// После успешного выполнения возвращает true.
        /// </returns>
        /// <remarks>
        /// Для вызова этого метода Ваше приложение должно иметь права с битовой маской, содержащей <see cref="Settings.Wall"/>.
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/wall.delete"/>.
        /// </remarks>
        public bool Delete(long ownerId, long postId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => postId);

            var parameters = new VkParameters
            {
                { "owner_id", ownerId },
                { "post_id", postId }
            };

            return(_vk.Call("wall.delete", parameters));
        }
Exemple #11
0
        /// <summary>
        /// Удаляет комментарий текущего пользователя к записи на своей или чужой стене.
        /// </summary>
        /// <param name="commentId">Идентификатор пользователя, на чьей стене находится комментарий к записи. </param>
        /// <param name="ownerId">Идентификатор комментария.</param>
        /// <remarks>
        /// Для вызова этого метода Ваше приложение должно иметь права с битовой маской, содержащей <see cref="Settings.Wall"/>.
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/wall.deleteComment"/>.
        /// </remarks>
        public bool DeleteComment(long ownerId, long commentId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => commentId);

            var parameters = new VkParameters
            {
                { "owner_id", ownerId },
                { "comment_id", commentId }
            };

            return(_vk.Call("wall.deleteComment", parameters));
        }
Exemple #12
0
        /// <summary>
        /// Добавляет видеозапись в список пользователя.
        /// </summary>
        /// <param name="targetId">Идентификатор пользователя или сообщества, в которое нужно добавить видео.
        /// Обратите внимание, идентификатор сообщества в параметре target_id необходимо указывать со знаком "-" — например, target_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1)  целое число (Целое число).</param>
        /// <param name="videoId">Идентификатор видеозаписи. положительное число, обязательный параметр (Положительное число, обязательный параметр).</param>
        /// <param name="ownerId">Идентификатор пользователя или сообщества, которому принадлежит видеозапись. Обратите внимание, идентификатор сообщества в параметре owner_id необходимо указывать со знаком "-" — например, owner_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1)  целое число, обязательный параметр (Целое число, обязательный параметр).</param>
        /// <returns>
        /// После успешного выполнения возвращает <c>true</c>.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте http://vk.com/dev/video.add
        /// </remarks>
        public long Add(long videoId, long ownerId, long?targetId = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => videoId);

            var parameters = new VkParameters {
                { "target_id", targetId },
                { "video_id", videoId },
                { "owner_id", ownerId }
            };

            return(_vk.Call("video.add", parameters));
        }
Exemple #13
0
        /// <inheritdoc />
        public bool DeleteLink(long groupId, ulong linkId)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => groupId);

            var parameters = new VkParameters
            {
                { "group_id", groupId }
                , { "link_id", linkId }
            };

            return(_vk.Call(methodName: "groups.deleteLink", parameters: parameters));
        }
Exemple #14
0
        /// <summary>
        /// Удаляет пользователя из списка друзей или отклоняет заявку в друзья.
        /// </summary>
        /// <param name="userId">идентификатор пользователя, которого необходимо удалить из списка друзей, либо заявку от которого необходимо отклонить.</param>
        /// <returns>
        /// После успешного выполнения возвращает одно из следующих значений:
        /// 1 — пользователь удален из списка друзей;
        /// 2 — заявка на добавление в друзья от данного пользователя отклонена;
        /// 3 — рекомендация добавить в друзья данного пользователя удалена.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/friends.delete"/>.
        /// </remarks>
        public DeleteFriendStatus Delete(long userId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => userId);

            var parameters = new VkParameters {
                { "user_id", userId }
            };

            VkResponse response = _vk.Call("friends.delete", parameters);

            return(response);
        }
Exemple #15
0
        public bool DeleteAlbum(long albumId, long?groupId = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => albumId);

            var parameters = new VkParameters
            {
                { "group_id", groupId },
                { "album_id", albumId }
            };

            return(_vk.Call("video.deleteAlbum", parameters));
        }
Exemple #16
0
        public bool Restore(long videoId, long?ownerId = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => videoId);

            var parameters = new VkParameters
            {
                { "video_id", videoId },
                { "owner_id", ownerId }
            };

            return(_vk.Call("video.restore", parameters));
        }
Exemple #17
0
        public ReadOnlyCollection <Message> GetById(IEnumerable <long> messageIds, out int totalCount, int?previewLength = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => previewLength);
            var parameters = new VkParameters {
                { "message_ids", messageIds }, { "preview_length", previewLength }
            };

            VkResponse response = _vk.Call("messages.getById", parameters);

            totalCount = response["count"];
            return(response["items"].ToReadOnlyCollectionOf <Message>(r => r));
        }
Exemple #18
0
        /// <inheritdoc />
        public RepostResult Repost(string @object, string message, long?groupId, bool markAsAds)
        {
            VkErrors.ThrowIfNullOrEmpty(() => @object);
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            var parameters = new VkParameters {
                { "object", @object },
                { "message", message },
                { "group_id", groupId },
                { "mark_as_ads", markAsAds }
            };

            return(_vk.Call("wall.repost", parameters));
        }
Exemple #19
0
        public bool Delete(long ownerId, long docId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => ownerId);
            VkErrors.ThrowIfNumberIsNegative(() => docId);

            var parameters = new VkParameters
            {
                { "owner_id", ownerId },
                { "doc_id", docId }
            };

            return(_vk.Call("docs.delete", parameters));
        }
Exemple #20
0
        /// <inheritdoc />
        public ExternalLink AddLink(long groupId, Uri link, string text)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => groupId);

            var parameters = new VkParameters
            {
                { "group_id", groupId }
                , { "link", link }
                , { "text", text }
            };

            return(_vk.Call(methodName: "groups.addLink", parameters: parameters));
        }
Exemple #21
0
        /// <inheritdoc />
        public bool RemoveUser(long groupId, long userId)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => groupId);
            VkErrors.ThrowIfNumberIsNegative(expr: () => userId);

            var parameters = new VkParameters
            {
                { "group_id", groupId }
                , { "user_id", userId }
            };

            return(_vk.Call(methodName: "groups.removeUser", parameters: parameters));
        }
Exemple #22
0
        public bool Report(long userId, ReportType type, string comment = "")
        {
            VkErrors.ThrowIfNumberIsNegative(() => userId);

            var parameters = new VkParameters
            {
                { "user_id", userId },
                { "type", type },
                { "comment", comment }
            };

            return(_vk.Call("users.report", parameters));
        }
Exemple #23
0
        public User Get(long userId, ProfileFields fields = null,
                        NameCase nameCase = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => userId);

            var parameters = new VkParameters {
                { "fields", fields }, { "name_case", nameCase }, { "v", _vk.ApiVersion }, { "user_ids", userId }
            };

            VkResponseArray response = _vk.Call("users.get", parameters);

            return(response[0]);
        }
Exemple #24
0
        /// <summary>
        /// Позволяет пожаловаться на комментарий к видеозаписи.
        /// </summary>
        /// <param name="ownerId">
        /// Идентификатор владельца видеозаписи, к которой оставлен комментарий. целое
        /// число, обязательный
        /// параметр (Целое число, обязательный параметр).
        /// </param>
        /// <param name="commentId">
        /// Идентификатор комментария. положительное число, обязательный параметр
        /// (Положительное число,
        /// обязательный параметр).
        /// </param>
        /// <param name="reason">
        /// Тип жалобы:
        /// 0 – это спам
        /// 1 – детская порнография
        /// 2 – экстремизм
        /// 3 – насилие
        /// 4 – пропаганда наркотиков
        /// 5 – материал для взрослых
        /// 6 – оскорбление положительное число (Положительное число).
        /// </param>
        /// <returns>
        /// После успешного выполнения возвращает <c> true </c>.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте http://vk.com/dev/video.reportComment
        /// </remarks>
        public bool ReportComment(long commentId, long ownerId, ReportReason reason)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => commentId);

            var parameters = new VkParameters
            {
                { "comment_id", commentId }
                , { "owner_id", ownerId }
                , { "reason", reason }
            };

            return(_vk.Call(methodName: "video.reportComment", parameters: parameters));
        }
Exemple #25
0
        /// <summary>
        /// Возвращает список пользователей, находящихся в черном списке.
        /// </summary>
        /// <param name="offset">Смещение необходимое для выборки определенного подмножества черного списка. положительное число (Положительное число).</param>
        /// <param name="count">Количество записей, которое необходимо вернуть. положительное число, по умолчанию 20, максимальное значение 200 (Положительное число, по умолчанию 20, максимальное значение 200).</param>
        /// <returns>
        /// Возвращает набор объектов пользователей, находящихся в черном списке.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/account.getBanned" />.
        /// </remarks>
        public VkCollection <User> GetBanned(int?offset = null, int?count = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => offset);
            VkErrors.ThrowIfNumberIsNegative(() => count);

            var parameters = new VkParameters
            {
                { "offset", offset },
                { "count", count }
            };

            return(_vk.Call("account.getBanned", parameters).ToVkCollectionOf <User>(vkResponse => vkResponse));
        }
Exemple #26
0
        /// <summary>
        /// Убирает пользователя из черного списка сообщества.
        /// </summary>
        /// <param name="groupId">идентификатор сообщества</param>
        /// <param name="userId">идентификатор пользователя, которого нужно убрать из черного списка</param>
        /// <returns>После успешного выполнения возвращает true.</returns>
        /// <remarks>
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/groups.unbanUser"/>.
        /// </remarks>
        public bool UnbanUser(long groupId, long userId)
        {
            VkErrors.ThrowIfNumberIsNegative(() => groupId);
            VkErrors.ThrowIfNumberIsNegative(() => userId);

            var parameters = new VkParameters
                {
                    {"group_id", groupId},
                    {"user_id", userId}
                };

            return _vk.Call("groups.unbanUser", parameters);
        }
Exemple #27
0
        public bool ReportComment(long commentId, long ownerId, Enums.ContentReportType reason)
        {
            VkErrors.ThrowIfNumberIsNegative(() => commentId);

            var parameters = new VkParameters
            {
                { "comment_id", commentId },
                { "owner_id", ownerId },
                { "reason", reason }
            };

            return(_vk.Call("video.reportComment", parameters));
        }
Exemple #28
0
        /// <summary>
        /// Возвращает список пользователей, добавленных текущим пользователем в закладки.
        /// </summary>
        /// <param name="offset">
        /// Смещение, необходимое для выборки определенного подмножества пользователей. По
        /// умолчанию — 0.
        /// положительное число (Положительное число).
        /// </param>
        /// <param name="count">
        /// Количество пользователей, информацию о которых необходимо вернуть.
        /// положительное число, по
        /// умолчанию 50 (Положительное число, по умолчанию 50).
        /// </param>
        /// <returns>
        /// После успешного выполнения возвращает список объектов пользователей.
        /// </returns>
        /// <remarks>
        /// Страница документации ВКонтакте http://vk.com/dev/fave.getUsers
        /// </remarks>
        public VkCollection <User> GetUsers(int?count = null, int?offset = null)
        {
            VkErrors.ThrowIfNumberIsNegative(expr: () => count);
            VkErrors.ThrowIfNumberIsNegative(expr: () => offset);

            var parameters = new VkParameters
            {
                { "count", count }
                , { "offset", offset }
            };

            return(_vk.Call(methodName: "fave.getUsers", parameters: parameters).ToVkCollectionOf <User>(selector: x => x));
        }
Exemple #29
0
        /// <summary>
        /// Удаляет видеозапись со страницы пользователя.
        /// </summary>
        /// <param name="videoId">Идентификатор видеозаписи.</param>
        /// <param name="ownerId">Идентификатор пользователя или сообщества, которому принадлежит видеозапись.
        /// Обратите внимание, идентификатор сообщества в параметре <paramref name="ownerId"/> необходимо указывать со знаком "-" — например,
        /// <paramref name="ownerId"/>=-1 соответствует идентификатору сообщества ВКонтакте API (club1).
        /// </param>
        /// <returns>После успешного выполнения возвращает true.</returns>
        /// <remarks>
        /// Для вызова этого метода Ваше приложение должно иметь права с битовой маской, содержащей <see cref="Settings.Video"/>.
        /// Страница документации ВКонтакте <see href="http://vk.com/dev/video.delete"/>.
        /// </remarks>
        public bool Delete(long videoId, long?ownerId = null)
        {
            VkErrors.ThrowIfNumberIsNegative(() => videoId);

            var parameters = new VkParameters
            {
                { "video_id", videoId },
                { "owner_id", ownerId },
                { "v", _vk.ApiVersion }
            };

            return(_vk.Call("video.delete", parameters));
        }
Exemple #30
0
		/// <summary>
		/// Копирует объект на стену пользователя или сообщества.
		/// </summary>
		/// <param name="object">Строковый идентификатор объекта, который необходимо разместить на стене, например, wall66748_3675 или wall-1_340364. строка, обязательный параметр (Строка, обязательный параметр).</param>
		/// <param name="message">Сопроводительный текст, который будет добавлен к записи с объектом. строка (Строка).</param>
		/// <param name="groupId">Идентификатор сообщества, на стене которого будет размещена запись с объектом. Если не указан, запись будет размещена на стене текущего пользователя. положительное число (Положительное число).</param>
		/// <param name="ref">Строка (Строка).</param>
		/// <returns>
		/// После успешного выполнения возвращает объект со следующими полями:
		///
		/// success
		/// post_id — идентификатор созданной записи;
		/// reposts_count — количество репостов объекта с учетом осуществленного;
		/// likes_count — число отметок «Мне нравится» у объекта.
		/// </returns>
		/// <remarks>
		/// Страница документации ВКонтакте http://vk.com/dev/wall.repost
		/// </remarks>
		public RepostResult Repost(string @object, string message, long? groupId, string @ref)
		{
			VkErrors.ThrowIfNullOrEmpty(() => @object);
			VkErrors.ThrowIfNumberIsNegative(() => groupId);
			var parameters = new VkParameters {
				{ "object", @object },
				{ "message", message },
				{ "group_id", groupId },
				{ "ref", @ref }
			};

			return _vk.Call("wall.repost", parameters);
		}