├── README.ru.md ├── media ├── it-icon.png ├── it-logo.png └── it-logo.psd ├── ModernDev.InTouch.Shared ├── Model │ ├── Tag.cs │ ├── AccountInfo.cs │ ├── EmptyItem.cs │ ├── Interfaces │ │ ├── IChatable.cs │ │ ├── IStatusAudio.cs │ │ ├── IProfileItem.cs │ │ ├── IVideoCatalogItem.cs │ │ └── IFeedback.cs │ ├── AudioAlbum.cs │ ├── Region.cs │ ├── Country.cs │ ├── Street.cs │ ├── Attachments │ │ ├── IMediaAttachment.cs │ │ └── IMessageAttachment.cs │ ├── Faculty.cs │ ├── FacultyChair.cs │ ├── DocUploadResponse.cs │ ├── CallbackServerState.cs │ ├── PostViews.cs │ ├── Tags.cs │ ├── MarketCategory.cs │ ├── VideoCatalog.cs │ ├── ServerInfo.cs │ ├── Notifications │ │ ├── WallNotification.cs │ │ ├── FollowNotification.cs │ │ ├── MentionNotification.cs │ │ ├── WallPublishNotification.cs │ │ ├── FriendAcceptedNotification.cs │ │ ├── ReplyTopicNotification.cs │ │ ├── CommentPostNotification.cs │ │ ├── CopyPostNotification.cs │ │ ├── CommentPhotoNotification.cs │ │ ├── CommentVideoNotification.cs │ │ ├── CopyPhotoNotification.cs │ │ ├── CopyVideoNotification.cs │ │ ├── LikePostNotification.cs │ │ ├── ReplyCommentNotification.cs │ │ ├── LikePhotoNotification.cs │ │ ├── LikeVideoNotification.cs │ │ ├── MentionCommentsNotification.cs │ │ ├── LikeCommentNotification.cs │ │ ├── ReplyCommentPhotoNotification.cs │ │ ├── ReplyCommentVideoNotification.cs │ │ ├── MentionCommentPhotoNotification.cs │ │ ├── MentionCommentVideoNotification.cs │ │ ├── ReplyCommentMarketNotification.cs │ │ ├── LikeCommentPhotoNotification.cs │ │ ├── LikeCommentTopicNotification.cs │ │ └── LikeCommentVideoNotification.cs │ ├── MixedProfilesList.cs │ ├── VideoPreview.cs │ ├── AudioUploadResponse.cs │ ├── Lyrics.cs │ ├── BaseCategory.cs │ ├── Currency.cs │ ├── FriendsList.cs │ ├── PlaceStatus.cs │ ├── UploadResponse.cs │ ├── Section.cs │ ├── Store.cs │ ├── ButtonAction.cs │ ├── ChatPushSettings.cs │ ├── NewChatPhoto.cs │ ├── PeriodData.cs │ ├── Button.cs │ ├── DialogsList.cs │ ├── GroupCatalogInfo.cs │ ├── TitledItem.cs │ ├── EditorStickers.cs │ ├── Reposts.cs │ ├── Mutual.cs │ ├── Status.cs │ ├── TopicsList.cs │ ├── Contacts.cs │ ├── LongPollServerData.cs │ ├── UserSubscriptions.cs │ ├── AlbumPhotoUploadResponse.cs │ ├── Application.cs │ ├── GeoPlace.cs │ ├── PhotosServerInfo.cs │ ├── Comments.cs │ ├── OnlineFriends.cs │ ├── LinkStatus.cs │ ├── AnswerVoters.cs │ ├── Rating.cs │ ├── Relative.cs │ ├── CallbackServerSettings.cs │ ├── NewProfileInfoSavingStatus.cs │ ├── GroupCover.cs │ ├── MediaLiked.cs │ ├── ObjectInfo.cs │ ├── UserExports.cs │ ├── City.cs │ ├── GraffitiPreview.cs │ ├── LastActivity.cs │ ├── PlaceType.cs │ ├── UserLastSeen.cs │ ├── DocType.cs │ ├── AuthStatus.cs │ ├── FriendRequest.cs │ ├── Counters.cs │ ├── CommunityCounters.cs │ ├── Price.cs │ ├── CoverImage.cs │ ├── Place.cs │ ├── MarketPhotoUploadResponse.cs │ ├── MutualFriends.cs │ └── Likes.cs ├── API │ ├── Methods │ │ ├── AudioMethods.cs │ │ ├── AuthMethods.cs │ │ ├── BoardMethods.cs │ │ ├── FaveMethods.cs │ │ ├── NotesMethods.cs │ │ ├── PagesMethods.cs │ │ ├── PollsMethods.cs │ │ ├── VideoMethods.cs │ │ ├── WallMethods.cs │ │ ├── AccountMethods.cs │ │ ├── DatabaseMethods.cs │ │ ├── FriendsMethods.cs │ │ ├── GroupsMethods.cs │ │ ├── MessagesMethods.cs │ │ ├── PhotosMethods.cs │ │ └── PlacesMethods.cs │ ├── MethodsParams │ │ ├── PagesGetParams.cs │ │ ├── WallPostParams.cs │ │ ├── AuthSignupParams.cs │ │ ├── GroupsEditParams.cs │ │ ├── PhotosGetParams.cs │ │ ├── VideoEditParams.cs │ │ ├── VideoSaveParams.cs │ │ ├── AudioSearchParams.cs │ │ ├── GroupsSearchParams.cs │ │ ├── LikesGetListParams.cs │ │ ├── MessagesGetParams.cs │ │ ├── MessagesSendParams.cs │ │ ├── UsersSearchParams.cs │ │ ├── VideoSearchParams.cs │ │ ├── WallPostEditParams.cs │ │ ├── WallSearchGetParams.cs │ │ ├── BaseAddCommentParams.cs │ │ ├── BaseGetCommentsParams.cs │ │ ├── BoardGetTopicsParams.cs │ │ ├── PhotosGetAlbumsParams.cs │ │ ├── PollsGetVotersParams.cs │ │ ├── WallAdsStealthParams.cs │ │ ├── MessagesGetHistoryAttachmentsParams.cs │ │ ├── MarketAddParams.cs │ │ ├── WallEditAdsStealthParams.cs │ │ ├── WallEditParams.cs │ │ ├── WallSearchParams.cs │ │ ├── MarketEditParams.cs │ │ ├── WallGetParams.cs │ │ ├── MarketGetCommentsParams.cs │ │ ├── VideoGetCommentsParams.cs │ │ ├── PhotosCreateAlbumParams.cs │ │ ├── NewsfeedGetRecommendedParams.cs │ │ ├── MarketCreateCommentParams.cs │ │ ├── VideoCreateCommentParams.cs │ │ ├── PhotosGetCommentsParam.cs │ │ ├── BoardGetCommentsParams.cs │ │ ├── PhotosEdiAlbumParams.cs │ │ ├── WallGetCommentsParam.cs │ │ ├── WallAddCommentParams.cs │ │ ├── PhotosCreateCommentParams.cs │ │ ├── BoardAddCommentParams.cs │ │ └── BasePhotosGetAlbumsParams.cs │ ├── Exceptions │ │ ├── InTouchException.cs │ │ └── InTouchResponseErrorException.cs │ └── MethodParamAttribute.cs ├── Enums │ ├── ProductAvailability.cs │ ├── UserSex.cs │ ├── BanTypes.cs │ ├── DeactivatedTypes.cs │ ├── AuthorizationDisplayTypes.cs │ ├── UsersSearchSections.cs │ ├── CommunityTypes.cs │ ├── ReportReasonTypes.cs │ ├── OccupationTypes.cs │ ├── PostSourcePlatforms.cs │ ├── CommunityManagerRoles.cs │ ├── CommunityAccessTypes.cs │ ├── CommunityAdminLevels.cs │ ├── ReportTypes.cs │ ├── ObjectTypes.cs │ ├── PostTypes.cs │ ├── SortOrder.cs │ ├── VideoCatalogItemTypes.cs │ ├── RelativeTypes.cs │ ├── LikesListFilterTypes.cs │ ├── VideoCatalogBlockTypes.cs │ ├── BDateVisibility.cs │ ├── MainSections.cs │ ├── GiftPrivacies.cs │ ├── CommunitiesFilterTypes.cs │ ├── MemberStatuses.cs │ ├── FriendshipStatuses.cs │ ├── AccountInfoFields.cs │ ├── CommunityMembersFilterTypes.cs │ ├── Services.cs │ ├── HintsSectionTypes.cs │ ├── FriendsOrder.cs │ ├── CommunitySubtypes.cs │ ├── LinkStatuses.cs │ ├── LinkStatsInterval.cs │ ├── ChatActions.cs │ ├── CommunityPrivacyTypes.cs │ ├── CommunityMembersSortOrder.cs │ ├── UserPersonalPoliticalViewsTypes.cs │ └── VideoCatalogFilterTypes.cs ├── ModernDev.InTouch.Shared.shproj └── Helpers │ ├── PrivateResolver.cs │ ├── JsonRequestParamsConverter.cs │ └── JsonNumberDateTimeConverter.cs ├── ModernDev.InTouch.Portable ├── packages.config └── Properties │ └── AssemblyInfo.cs ├── ModernDev.InTouch.UniversalWindows ├── packages.config └── Properties │ └── AssemblyInfo.cs ├── ModernDev.InTouch.Standard ├── project.json └── Properties │ └── AssemblyInfo.cs ├── ModernDev.InTouch.Tests └── packages.config └── appveyor.yml /README.ru.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/it-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/media/it-icon.png -------------------------------------------------------------------------------- /media/it-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/media/it-logo.png -------------------------------------------------------------------------------- /media/it-logo.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/media/it-logo.psd -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Tag.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/Model/Tag.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AccountInfo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/Model/AccountInfo.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/AudioMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/AudioMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/AuthMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/AuthMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/BoardMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/BoardMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/FaveMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/FaveMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/NotesMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/NotesMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/PagesMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/PagesMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/PollsMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/PollsMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/VideoMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/VideoMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/WallMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/WallMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/AccountMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/AccountMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/DatabaseMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/DatabaseMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/FriendsMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/FriendsMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/GroupsMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/GroupsMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/MessagesMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/MessagesMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/PhotosMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/PhotosMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Methods/PlacesMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/Methods/PlacesMethods.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PagesGetParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/PagesGetParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallPostParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/WallPostParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/AuthSignupParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/AuthSignupParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/GroupsEditParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/GroupsEditParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosGetParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/PhotosGetParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/VideoEditParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/VideoEditParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/VideoSaveParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/VideoSaveParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/AudioSearchParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/AudioSearchParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/GroupsSearchParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/GroupsSearchParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/LikesGetListParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/LikesGetListParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MessagesGetParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/MessagesGetParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MessagesSendParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/MessagesSendParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/UsersSearchParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/UsersSearchParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/VideoSearchParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/VideoSearchParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallPostEditParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/WallPostEditParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallSearchGetParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/WallSearchGetParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BaseAddCommentParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/BaseAddCommentParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BaseGetCommentsParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/BaseGetCommentsParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BoardGetTopicsParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/BoardGetTopicsParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosGetAlbumsParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/PhotosGetAlbumsParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PollsGetVotersParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/PollsGetVotersParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallAdsStealthParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/WallAdsStealthParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.Portable/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MessagesGetHistoryAttachmentsParams.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/virtyaluk/InTouch/HEAD/ModernDev.InTouch.Shared/API/MethodsParams/MessagesGetHistoryAttachmentsParams.cs -------------------------------------------------------------------------------- /ModernDev.InTouch.UniversalWindows/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Standard/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "supports": {}, 3 | "dependencies": { 4 | "Microsoft.NETCore.Portable.Compatibility": "1.0.1", 5 | "NETStandard.Library": "1.6.1", 6 | "Newtonsoft.Json": "9.0.1", 7 | "System.Net.Http": "4.3.1" 8 | }, 9 | "frameworks": { 10 | "netstandard1.1": {} 11 | } 12 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/EmptyItem.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | public class EmptyItem { } 16 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Interfaces/IChatable.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | public interface IChatable { } 16 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Interfaces/IStatusAudio.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | public interface IStatusAudio 16 | { 17 | Audio StatusAudio { get; set; } 18 | } 19 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AudioAlbum.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// Audio album. 17 | /// 18 | public class AudioAlbum : BaseAlbum 19 | { 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Tests/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Interfaces/IProfileItem.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A base interface for all "profiled" items like and . 17 | /// 18 | public interface IProfileItem { } 19 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MarketAddParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A class describes a method params. 17 | /// 18 | public class MarketAddParams : BaseMarketAddEditParams 19 | { 20 | 21 | } 22 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/ProductAvailability.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// availability statuses. 17 | /// 18 | public enum ProductAvailability 19 | { 20 | Available = 0, 21 | Deleted = 1, 22 | NotAvailable = 2 23 | } 24 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/UserSex.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// User sex 19 | /// 20 | [DebuggerDisplay("UserSex")] 21 | public enum UserSex 22 | { 23 | Female = 1, 24 | Male = 2, 25 | NotSpecified = 0 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallEditAdsStealthParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | public class WallEditAdsStealthParams : WallAdsStealthParams 16 | { 17 | /// 18 | /// Post Id. 19 | /// 20 | [MethodParam(Name = "post_id", IsRequired = true)] 21 | public int PostId { get; set; } 22 | } 23 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/BanTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Ban reason types. 19 | /// 20 | [DebuggerDisplay("BanTypes")] 21 | public enum BanTypes 22 | { 23 | Other = 0, 24 | Spam = 1, 25 | VerbalAbuse = 2, 26 | StrongLanguage = 3, 27 | IrrelevantMessages = 4 28 | } 29 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Region.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// A class describes a region. 20 | /// 21 | [DataContract] 22 | [DebuggerDisplay("Region {Title}")] 23 | public class Region : TitledItem 24 | { 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Country.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// A class describes a country. 20 | /// 21 | [DataContract] 22 | [DebuggerDisplay("Country {Title}")] 23 | public class Country : TitledItem 24 | { 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Street.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// A class describes a street. 20 | /// 21 | [DebuggerDisplay("Street {Title}")] 22 | [DataContract] 23 | public class Street : TitledItem 24 | { 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Attachments/IMediaAttachment.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An is a base interface for all kind of attachments. 17 | /// 18 | public interface IMediaAttachment 19 | { 20 | /// 21 | /// Item owner Id. 22 | /// 23 | int OwnerId { get; set; } 24 | } 25 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Faculty.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// A class describes a university's faculty. 20 | /// 21 | [DebuggerDisplay("Faculty {Title}")] 22 | [DataContract] 23 | public class Faculty : TitledItem 24 | { 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Attachments/IMessageAttachment.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An is a base interface for all kind of message attachments. 17 | /// 18 | public interface IMessageAttachment 19 | { 20 | /// 21 | /// Message ID the attachment is attached to. 22 | /// 23 | int? MessageId { get; set; } 24 | } 25 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/FacultyChair.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// A class describes a university's faculty chair. 20 | /// 21 | [DebuggerDisplay("FacultyChair {Title}")] 22 | [DataContract] 23 | public class FacultyChair : TitledItem 24 | { 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Interfaces/IVideoCatalogItem.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// Describes common state of and objects. 17 | /// 18 | public interface IVideoCatalogItem 19 | { 20 | long Id { get; set; } 21 | int OwnerId { get; set; } 22 | string Title { get; set; } 23 | VideoCatalogItemTypes Type { get; set; } 24 | } 25 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/DeactivatedTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Deactivated statuses 20 | /// 21 | [DebuggerDisplay("UserDeactivated")] 22 | public enum DeactivatedTypes 23 | { 24 | [EnumMember(Value = "deleted")] 25 | Deleted, 26 | [EnumMember(Value = "banned")] 27 | Banned 28 | } 29 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallEditParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class WallEditParams : WallPostEditParams 19 | { 20 | /// 21 | /// Post ID. 22 | /// 23 | [MethodParam(Name = "post_id", IsRequired = true)] 24 | public int PostId { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallSearchParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class WallSearchParams : WallSearchGetParams 19 | { 20 | /// 21 | /// Search query string. 22 | /// 23 | [MethodParam(Name = "query")] 24 | public string Query { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/AuthorizationDisplayTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch.API 16 | { 17 | /// 18 | /// Authorization window appearance. 19 | /// 20 | public enum AuthorizationDisplayTypes 21 | { 22 | [EnumMember(Value = "page")] 23 | Page, 24 | [EnumMember(Value = "popup")] 25 | Popup, 26 | [EnumMember(Value = "mobile")] 27 | Mobile 28 | } 29 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MarketEditParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A class describes a method params. 17 | /// 18 | public class MarketEditParams : BaseMarketAddEditParams 19 | { 20 | /// 21 | /// Item Id. 22 | /// 23 | [MethodParam(Name = "item_id", IsRequired = true)] 24 | public int ItemId { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallGetParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class WallGetParams : WallSearchGetParams 19 | { 20 | /// 21 | /// Filter to apply. 22 | /// 23 | [MethodParam(Name = "filter")] 24 | public PostFilterTypes Filter { get; set; } = PostFilterTypes.All; 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/UsersSearchSections.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Sections to search in. 20 | /// 21 | [DebuggerDisplay("UserSearchSections")] 22 | public enum UsersSearchSections 23 | { 24 | [EnumMember(Value = "friends")] 25 | Friends, 26 | 27 | [EnumMember(Value = "subscriptions")] 28 | Subscriptions 29 | } 30 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/DocUploadResponse.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Doc upload server response. 21 | /// 22 | [DebuggerDisplay("DocUploadResponse {File}")] 23 | [DataContract] 24 | public class DocUploadResponse 25 | { 26 | [DataMember] 27 | [JsonProperty("file")] 28 | public string File { get; set; } 29 | } 30 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MarketGetCommentsParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class MarketGetCommentsParams : BaseGetCommentsParams 19 | { 20 | /// 21 | /// Item Id. 22 | /// 23 | [MethodParam(Name = "item_id", IsRequired = true)] 24 | public int ItemId { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community types. 20 | /// 21 | [DebuggerDisplay("GroupTypes")] 22 | public enum CommunityTypes 23 | { 24 | [EnumMember(Value = "group")] Group, 25 | [EnumMember(Value = "public")] Public, 26 | [EnumMember(Value = "event")] Event, 27 | [EnumMember(Value = "page")] Page 28 | } 29 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/ReportReasonTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Reason for the complaint types. 19 | /// 20 | [DebuggerDisplay("ReportReasonTypes")] 21 | public enum ReportReasonTypes 22 | { 23 | Spam = 0, 24 | ChildPornography = 1, 25 | Extremism = 2, 26 | Violence = 3, 27 | DrugPropaganda = 4, 28 | AdultMaterial = 5, 29 | AbuseOrInsult = 6 30 | } 31 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/CallbackServerState.cs: -------------------------------------------------------------------------------- 1 | using System.Diagnostics; 2 | using System.Runtime.Serialization; 3 | using Newtonsoft.Json; 4 | 5 | namespace ModernDev.InTouch 6 | { 7 | /// 8 | /// A class describes Callback API server state. 9 | /// 10 | [DebuggerDisplay("CallbackServerState {State}")] 11 | [DataContract] 12 | public class CallbackServerState 13 | { 14 | /// 15 | /// State code. 16 | /// 17 | [JsonProperty("state_code")] 18 | [DataMember] 19 | public int StateCode { get; set; } 20 | 21 | /// 22 | /// State message. 23 | /// 24 | [JsonProperty("state")] 25 | [DataMember] 26 | public string State { get; set; } 27 | } 28 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/OccupationTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Occupation types 20 | /// 21 | [DebuggerDisplay("OccupationTypes")] 22 | public enum OccupationTypes 23 | { 24 | [EnumMember(Value = "work")] 25 | Work, 26 | [EnumMember(Value = "school")] 27 | School, 28 | [EnumMember(Value = "university")] 29 | University 30 | } 31 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/PostSourcePlatforms.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Platform names. 19 | /// 20 | public enum PostSourcePlatforms 21 | { 22 | [EnumMember(Value = "android")] 23 | Android, 24 | 25 | [EnumMember(Value = "iphone")] 26 | // ReSharper disable once InconsistentNaming 27 | IPhone, 28 | 29 | [EnumMember(Value = "wphone")] 30 | WindowsPhone 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/VideoGetCommentsParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A class describes a method params. 17 | /// 18 | public class VideoGetCommentsParams : BaseGetCommentsParams 19 | { 20 | /// 21 | /// Video ID. 22 | /// 23 | [MethodParam(Name = "video_id", IsRequired = true)] 24 | public int VideoId { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/PostViews.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2017 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Represents an information about post views. 21 | /// 22 | [DataContract, DebuggerDisplay("PostViews: {Count}")] 23 | public class PostViews 24 | { 25 | /// 26 | /// Views number. 27 | /// 28 | [DataMember, JsonProperty("views")] 29 | public int? Count { get; set; } 30 | } 31 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityManagerRoles.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community manager roles. 20 | /// 21 | [DebuggerDisplay("CommunityManagerRoles")] 22 | public enum CommunityManagerRoles 23 | { 24 | [EnumMember(Value = "moderator")] 25 | Moderator, 26 | 27 | [EnumMember(Value = "editor")] 28 | Editor, 29 | 30 | [EnumMember(Value = "administrator")] 31 | Administrator 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityAccessTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community access types. 20 | /// 21 | [DebuggerDisplay("CommunityAccessTypes")] 22 | public enum CommunityAccessTypes 23 | { 24 | [EnumMember(Value = "0")] 25 | ManagersOnly = 0, 26 | [EnumMember(Value = "1")] 27 | MembersOnly = 1, 28 | [EnumMember(Value = "2")] 29 | Everyone = 2 30 | } 31 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Interfaces/IFeedback.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// Describes an object that can be accepted as notification feedback. 17 | /// 18 | public interface IFeedback 19 | { 20 | /// 21 | /// The id of the wall's owner on which the post was published. 22 | /// 23 | int? ToId { get; set; } 24 | 25 | /// 26 | /// Feedback owner Id. 27 | /// 28 | int? FromId { get; set; } 29 | } 30 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Exceptions/InTouchException.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | public class InTouchException : Exception 18 | { 19 | public object Detail { get; private set; } 20 | public InTouchException(string message) : base(message) { } 21 | public InTouchException(string message, Exception innerException) : base(message, innerException) { } 22 | 23 | public InTouchException(string message, object detail) : base(message) 24 | { 25 | Detail = detail; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityAdminLevels.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community admin levels. 20 | /// 21 | [DebuggerDisplay("GroupAdminLevels")] 22 | public enum CommunityAdminLevels 23 | { 24 | [EnumMember(Value = "moderator")] 25 | Moderator = 1, 26 | [EnumMember(Value = "editor")] 27 | Editor = 2, 28 | [EnumMember(Value = "administrator")] 29 | Administrator = 3 30 | } 31 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Tags.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Information about tags. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Tags {Count}")] 24 | public class Tags 25 | { 26 | /// 27 | /// The total number of the tags. 28 | /// 29 | [DataMember] 30 | [JsonProperty("count")] 31 | public int Count { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/ReportTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Report types. 20 | /// 21 | [DebuggerDisplay("ReportType")] 22 | public enum ReportTypes 23 | { 24 | [EnumMember(Value = "porn")] 25 | Porn, 26 | [EnumMember(Value = "spam")] 27 | Spam, 28 | [EnumMember(Value = "insult")] 29 | Insult, 30 | [EnumMember(Value = "advertisment")] 31 | Advertisment 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosCreateAlbumParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class PhotosCreateAlbumParams : BasePhotosCreateEditAlbumParams 19 | { 20 | /// 21 | /// ID of the community in which the album will be created. 22 | /// 23 | [MethodParam(Name = "group_id")] 24 | public int? GroupId { get; set; } 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/ObjectTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Object types 20 | /// 21 | [DebuggerDisplay("ObjectTypes")] 22 | public enum ObjectTypes 23 | { 24 | [EnumMember(Value = "user")] 25 | User, 26 | 27 | [EnumMember(Value = "group")] 28 | Group, 29 | 30 | [EnumMember(Value = "page")] 31 | Page, 32 | 33 | [EnumMember(Value = "application")] 34 | Application 35 | } 36 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/NewsfeedGetRecommendedParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class NewsfeedGetRecommendedParams : BaseNewsfeedGetParams 19 | { 20 | /// 21 | /// Maximum number of photos to return. By default, 5. 22 | /// 23 | [MethodParam(Name = "max_photos")] 24 | public int MaxPhotosCount { get; set; } = 5; 25 | } 26 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/PostTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Post type 19 | /// 20 | [DataContract] 21 | public enum PostTypes 22 | { 23 | [EnumMember(Value = "post")] 24 | Post, 25 | 26 | [EnumMember(Value = "copy")] 27 | Copy, 28 | 29 | [EnumMember(Value = "reply")] 30 | Reply, 31 | 32 | [EnumMember(Value = "postpone")] 33 | PostPone, 34 | 35 | [EnumMember(Value = "suggest")] 36 | Suggest 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/MarketCategory.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes a product category. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("MarketCategory {Name}")] 24 | public class MarketCategory : BaseCategory 25 | { 26 | /// 27 | /// Category section. 28 | /// 29 | [DataMember] 30 | [JsonProperty("section")] 31 | public Section Section { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/VideoCatalog.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Video catalog. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("VideoCatalog")] 24 | public class VideoCatalog : ItemsList 25 | { 26 | /// 27 | /// Parameter to get the next page of results. 28 | /// 29 | [DataMember] 30 | [JsonProperty("next")] 31 | public string Next { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/SortOrder.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Sorting order 20 | /// 21 | [DebuggerDisplay("SortOrder")] 22 | public enum SortOrder 23 | { 24 | /// 25 | /// Chronological. 26 | /// 27 | [EnumMember(Value = "asc")] 28 | Ascending, 29 | 30 | /// 31 | /// Reverse chronological. 32 | /// 33 | [EnumMember(Value = "desc")] 34 | Descending 35 | } 36 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/ServerInfo.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes an info about uploading server. 21 | /// 22 | [DebuggerDisplay("ServerInfo")] 23 | [DataContract] 24 | public class ServerInfo 25 | { 26 | /// 27 | /// URL of the uploading server. 28 | /// 29 | [DataMember] 30 | [JsonProperty("upload_url")] 31 | public string UploadUrl { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/VideoCatalogItemTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Video catalog item types. 20 | /// 21 | [DebuggerDisplay("VideoCatalogItemTypes")] 22 | public enum VideoCatalogItemTypes 23 | { 24 | /// 25 | /// Video 26 | /// 27 | [EnumMember(Value = "video")] 28 | Video, 29 | 30 | /// 31 | /// Video album. 32 | /// 33 | [EnumMember(Value = "album")] 34 | Album 35 | } 36 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/RelativeTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Relationship types. 20 | /// 21 | [DebuggerDisplay("RelativeType")] 22 | public enum RelativeTypes 23 | { 24 | [EnumMember(Value = "sibling")] 25 | Sibling, 26 | [EnumMember(Value = "parent")] 27 | Parent, 28 | [EnumMember(Value = "child")] 29 | Child, 30 | [EnumMember(Value = "grandparent")] 31 | Grandparent, 32 | [EnumMember(Value = "grandchild")] 33 | Grandchild 34 | } 35 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/Exceptions/InTouchResponseErrorException.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | public class InTouchResponseErrorException : Exception 18 | { 19 | public ResponseError ResponseError { get; private set; } 20 | public InTouchResponseErrorException(string message) : base(message) { } 21 | public InTouchResponseErrorException(string message, Exception innerException) : base(message, innerException) { } 22 | 23 | public InTouchResponseErrorException(string message, ResponseError responseError) : base(message) 24 | { 25 | ResponseError = responseError; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/LikesListFilterTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Likes list filter types. 19 | /// 20 | public enum LikesListFilterTypes 21 | { 22 | /// 23 | /// Returns information about all users who liked the object. 24 | /// 25 | [EnumMember(Value = "likes")] 26 | Likes, 27 | 28 | /// 29 | /// Returns information only about users who told their friends about the object. 30 | /// 31 | [EnumMember(Value = "copies")] 32 | Copies 33 | } 34 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/VideoCatalogBlockTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Video catalog block types. 20 | /// 21 | [DebuggerDisplay("VideoCatalogBlockTypes")] 22 | public enum VideoCatalogBlockTypes 23 | { 24 | /// 25 | /// Video collections. 26 | /// 27 | [EnumMember(Value = "category")] 28 | Category, 29 | 30 | /// 31 | /// Community's videos. 32 | /// 33 | [EnumMember(Value = "channel")] 34 | Channel 35 | } 36 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/WallNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new post has been created on the user's wall. 21 | /// 22 | [DebuggerDisplay("WallNotification")] 23 | [DataContract] 24 | public class WallNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Post Feedback { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/BDateVisibility.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// User's bdate visibility. 19 | /// 20 | [DebuggerDisplay("BDateVisibility")] 21 | public enum BDateVisibility 22 | { 23 | /// 24 | /// Hide the date of birth. 25 | /// 26 | Hidden = 0, 27 | 28 | /// 29 | /// Show the date of birth. 30 | /// 31 | Visible = 1, 32 | 33 | /// 34 | /// Show only the month and the day. 35 | /// 36 | OnlyDayMonth = 2 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/MixedProfilesList.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using ModernDev.InTouch.Helpers; 17 | using Newtonsoft.Json; 18 | 19 | namespace ModernDev.InTouch 20 | { 21 | /// 22 | /// User subscriptions extended. 23 | /// 24 | [DebuggerDisplay("MixedProfilesList")] 25 | [DataContract] 26 | public class MixedProfilesList : ItemsList 27 | { 28 | [DataMember] 29 | [JsonProperty("items")] 30 | [JsonConverter(typeof (JsonIProfileItemListConverter))] 31 | public new List Items { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/MarketCreateCommentParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class MarketCreateCommentParams : BaseAddCommentParams 19 | { 20 | /// 21 | /// Item Id. 22 | /// 23 | [MethodParam(Name = "item_id", IsRequired = true)] 24 | public int ItemId { get; set; } 25 | 26 | /// 27 | /// Comment message. 28 | /// 29 | [MethodParam(Name = "message")] 30 | public string Message { get; set; } 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/MainSections.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Main sections. 20 | /// 21 | [DebuggerDisplay("MainSections")] 22 | public enum MainSections 23 | { 24 | [EnumMember(Value = "0")] 25 | NotPresented = 0, 26 | [EnumMember(Value = "1")] 27 | Photos = 1, 28 | [EnumMember(Value = "2")] 29 | Topics = 2, 30 | [EnumMember(Value = "3")] 31 | Audios = 3, 32 | [EnumMember(Value = "4")] 33 | Videos = 4, 34 | [EnumMember(Value = "5")] 35 | Market = 5 36 | } 37 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/FollowNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more followers of the user have appeared. 21 | /// 22 | [DebuggerDisplay("FollowNotification")] 23 | [DataContract] 24 | public class FollowNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/MentionNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new post that mentions the user has been posted on someone else's wall. 21 | /// 22 | [DebuggerDisplay("MentionNotification")] 23 | [DataContract] 24 | public class MentionNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Post Feedback { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/VideoPreview.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | [DataContract] 20 | [DebuggerDisplay("VideoPreview")] 21 | public class VideoPreview 22 | { 23 | [DataMember] 24 | [JsonProperty("src")] 25 | public string Src { get; set; } 26 | 27 | [DataMember] 28 | [JsonProperty("width")] 29 | public int Width { get; set; } 30 | 31 | [DataMember] 32 | [JsonProperty("height")] 33 | public int Height { get; set; } 34 | 35 | [DataMember] 36 | [JsonProperty("file_size")] 37 | public int FileSize { get; set; } 38 | } 39 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/GiftPrivacies.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// Gift privacy levels. 17 | /// 18 | public enum GiftPrivacies 19 | { 20 | /// 21 | /// Everyone can see the sender's name and the message. 22 | /// 23 | Open = 0, 24 | 25 | /// 26 | /// Everybody can see the sender's name, but only the owner can see the message. 27 | /// 28 | Hidden = 1, 29 | 30 | /// 31 | /// The sender's name is hidden for everyone and only the owner can see the message. 32 | /// 33 | Anonymous = 2 34 | } 35 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/WallPublishNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new post offered by the user has been published on the public page. 21 | /// 22 | [DebuggerDisplay("WallPublishNotification")] 23 | [DataContract] 24 | public class WallPublishNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Post Feedback { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/VideoCreateCommentParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class VideoCreateCommentParams : BaseAddCommentParams 19 | { 20 | /// 21 | /// Video ID. 22 | /// 23 | [MethodParam(Name = "video_id", IsRequired = true)] 24 | public int VideoId { get; set; } 25 | 26 | /// 27 | /// Comment text. 28 | /// 29 | [MethodParam(Name = "message")] 30 | public string Message { get; set; } 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/FriendAcceptedNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A friend request made by the user has been accepted. 21 | /// 22 | [DebuggerDisplay("FriendAcceptedNotification")] 23 | [DataContract] 24 | public class FriendAcceptedNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosGetCommentsParam.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class PhotosGetCommentsParam : BaseGetCommentsParams 19 | { 20 | /// 21 | /// Photo ID. 22 | /// 23 | [MethodParam(Name = "photo_id", IsRequired = true)] 24 | public int PhotoId { get; set; } 25 | 26 | /// 27 | /// Photo access key. 28 | /// 29 | [MethodParam(Name = "access_key")] 30 | public string AccessKey { get; set; } 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BoardGetCommentsParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A class describes a method params. 17 | /// 18 | public class BoardGetCommentsParams : BaseGetCommentsParams 19 | { 20 | /// 21 | /// ID of the community that owns the discussion board. 22 | /// 23 | [MethodParam(Name = "group_id", IsRequired = true)] 24 | public int GroupId { get; set; } 25 | 26 | /// 27 | /// Topic ID. 28 | /// 29 | [MethodParam(Name = "topic_id", IsRequired = true)] 30 | public int TopicId { get; set; } 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AudioUploadResponse.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Audio upload server response. 21 | /// 22 | [DebuggerDisplay("AudioUploadResponse {Server}")] 23 | [DataContract] 24 | public class AudioUploadResponse : UploadResponse 25 | { 26 | /// 27 | /// Audio data. 28 | /// 29 | [DataMember] 30 | [JsonProperty("audio")] 31 | public string Audio { get; set; } 32 | 33 | [DataMember] 34 | [JsonProperty("redirect")] 35 | public string Redirect { get; set; } 36 | } 37 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunitiesFilterTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Types of communities to filter on. 20 | /// 21 | [DebuggerDisplay("CommunitiesFielterTypes")] 22 | public enum CommunitiesFilterTypes 23 | { 24 | [EnumMember(Value = "admin")] 25 | Admin, 26 | 27 | [EnumMember(Value = "editor")] 28 | Editor, 29 | 30 | [EnumMember(Value = "moder")] 31 | Moderator, 32 | 33 | [EnumMember(Value = "groups")] 34 | Groups, 35 | 36 | [EnumMember(Value = "publics")] 37 | Publics, 38 | 39 | [EnumMember(Value = "events")] 40 | Events 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Lyrics.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Audio lyrics. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Lyrics")] 24 | public class Lyrics 25 | { 26 | /// 27 | /// Lyrics Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("lyrics_id")] 31 | public int LyricsId { get; set; } 32 | 33 | /// 34 | /// Lyrics text. 35 | /// 36 | [DataMember] 37 | [JsonProperty("text")] 38 | public string Text { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/MemberStatuses.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Community membership statuses. 21 | /// 22 | [DebuggerDisplay("MemberStatuses")] 23 | public enum MemberStatuses 24 | { 25 | [EnumMember(Value = "0")] 26 | NotAMember = 0, 27 | [EnumMember(Value = "1")] 28 | IsAMember = 1, 29 | [EnumMember(Value = "2")] 30 | NotSure = 2, 31 | [EnumMember(Value = "3")] 32 | DeclinedTheInvitation = 3, 33 | [EnumMember(Value = "4")] 34 | AppliedToJoin = 4, 35 | [EnumMember(Value = "5")] 36 | Invited = 5, 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/BaseCategory.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A base class for all kind of categories. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("BaseCategory {Name}")] 24 | public abstract class BaseCategory 25 | { 26 | /// 27 | /// Category Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Category name. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Currency.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Currency info. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Currency {Id} {Name}")] 24 | public class Currency 25 | { 26 | /// 27 | /// Currency Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Currency symbol. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/FriendsList.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Friends list item. 21 | /// 22 | [DebuggerDisplay("FriendsList {Id} {Name}")] 23 | [DataContract] 24 | public class FriendsList 25 | { 26 | /// 27 | /// List id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// List name. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/PlaceStatus.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Status of place editing. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("PlaceStatus")] 24 | public class PlaceStatus 25 | { 26 | /// 27 | /// Whether the editing is successful. 28 | /// 29 | [DataMember] 30 | [JsonProperty("success")] 31 | public bool Success { get; set; } 32 | 33 | /// 34 | /// Formatted address string. 35 | /// 36 | [DataMember] 37 | [JsonProperty("address")] 38 | public string Address { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosEdiAlbumParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class PhotosEdiAlbumParams : BasePhotosCreateEditAlbumParams 19 | { 20 | /// 21 | /// ID of the photo album to be edited. 22 | /// 23 | [MethodParam(Name = "album_id", IsRequired = true)] 24 | public int AlbumId { get; set; } 25 | 26 | /// 27 | /// ID of the user or community that owns the album. 28 | /// 29 | [MethodParam(Name = "owner_id")] 30 | public int OwnerId { get; set; } 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/UploadResponse.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Upload server response. 21 | /// 22 | [DebuggerDisplay("UploadResponse {Server}")] 23 | [DataContract] 24 | public abstract class UploadResponse 25 | { 26 | /// 27 | /// Server name. 28 | /// 29 | [DataMember] 30 | [JsonProperty("server")] 31 | public string Server { get; set; } 32 | 33 | /// 34 | /// Hash 35 | /// 36 | [DataMember] 37 | [JsonProperty("hash")] 38 | public string Hash { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Section.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes a category section. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Section {Name}")] 24 | public class Section 25 | { 26 | /// 27 | /// Section Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Section name. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/FriendshipStatuses.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Friendship statuses. 19 | /// 20 | [DebuggerDisplay("FriendshipStatuses")] 21 | public enum FriendshipStatuses 22 | { 23 | /// 24 | /// Not a friend. 25 | /// 26 | NotFriend = 0, 27 | 28 | /// 29 | /// Friend request sent. 30 | /// 31 | RequestSent = 1, 32 | 33 | /// 34 | /// Incoming friend request. 35 | /// 36 | IncomingRequest = 2, 37 | 38 | /// 39 | /// Is a friend. 40 | /// 41 | Friend = 3 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Store.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class represents an information about a market. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Store {Name}")] 24 | public class Store 25 | { 26 | /// 27 | /// Market's ID. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Market's name. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/ButtonAction.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class represents an information about button's action. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("ButtonAction {Url}")] 24 | public class ButtonAction 25 | { 26 | /// 27 | /// Action's type. 28 | /// 29 | [DataMember] 30 | [JsonProperty("type")] 31 | public string Type { get; set; } 32 | 33 | /// 34 | /// URL to head over to. 35 | /// 36 | [DataMember] 37 | [JsonProperty("url")] 38 | public string Url { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/ChatPushSettings.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Chat notification settings. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("ChatPushSettings")] 24 | public class ChatPushSettings 25 | { 26 | /// 27 | /// Sounds status. 28 | /// 29 | [DataMember] 30 | [JsonProperty("sounds")] 31 | public int Sounds { get; set; } 32 | 33 | /// 34 | /// Disabled status. 35 | /// 36 | [DataMember] 37 | [JsonProperty("disabled_until")] 38 | public int DisabledUntil { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/NewChatPhoto.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Chat photo changing information. 21 | /// 22 | [DebuggerDisplay("NewChatPhoto")] 23 | [DataContract] 24 | public class NewChatPhoto 25 | { 26 | /// 27 | /// The id of message sent by system. 28 | /// 29 | [DataMember] 30 | [JsonProperty("message_id")] 31 | public int MessageId { get; set; } 32 | 33 | /// 34 | /// Chat object. 35 | /// 36 | [DataMember] 37 | [JsonProperty("chat")] 38 | public Chat Chat { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/PeriodData.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Describes the statistic for a certain period. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("PeriodData")] 24 | public class PeriodData 25 | { 26 | [DataMember] 27 | [JsonProperty("value")] 28 | public string Value { get; set; } 29 | 30 | [DataMember] 31 | [JsonProperty("name")] 32 | public string Name { get; set; } 33 | 34 | [DataMember] 35 | [JsonProperty("visitors")] 36 | public int Visitors { get; set; } 37 | 38 | [DataMember] 39 | [JsonProperty("code")] 40 | public string Code { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallGetCommentsParam.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class WallGetCommentsParam : BaseGetCommentsParams 19 | { 20 | /// 21 | /// Post ID. 22 | /// 23 | [MethodParam(Name = "post_id", IsRequired = true)] 24 | public int PostId { get; set; } 25 | 26 | /// 27 | /// Number of characters at which to truncate comments when previewed. By default, 90. Specify 0 if you do not want to truncate comments. 28 | /// 29 | [MethodParam(Name = "preview_length")] 30 | public int PreviewLength { get; set; } = 0; 31 | } 32 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/AccountInfoFields.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// fields. 20 | /// 21 | [DebuggerDisplay("AccountInfoFields")] 22 | public enum AccountInfoFields 23 | { 24 | [EnumMember(Value = "country")] 25 | Country, 26 | 27 | [EnumMember(Value = "https_required")] 28 | HttpsRequired, 29 | 30 | [EnumMember(Value = "own_posts_default")] 31 | OwnPostsDefault, 32 | 33 | [EnumMember(Value = "no_wall_replies")] 34 | NoWallReplies, 35 | 36 | [EnumMember(Value = "intro")] 37 | Intro, 38 | 39 | [EnumMember(Value = "lang")] 40 | Lang 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityMembersFilterTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | using System.Diagnostics; 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Types of community members. 19 | /// 20 | [DebuggerDisplay("CommunityMembersFilterTypes")] 21 | public enum CommunityMembersFilterTypes 22 | { 23 | /// 24 | /// Friends. 25 | /// 26 | [EnumMember(Value = "friends")] 27 | Friends, 28 | 29 | /// 30 | /// Those who pressed 'I may attend'. 31 | /// 32 | [EnumMember(Value = "unsure")] 33 | Unsure, 34 | 35 | /// 36 | /// Community managers. 37 | /// 38 | [EnumMember(Value = "managers")] 39 | Managers 40 | } 41 | } -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- 1 | platform: x64 2 | configuration: Release 3 | version: 1.0.{build} 4 | skip_non_tags: true 5 | skip_branch_with_pr: true 6 | 7 | assembly_info: 8 | patch: true 9 | file: '**\AssemblyInfo.cs' 10 | assembly_version: '{version}' 11 | assembly_file_version: '{version}' 12 | assembly_informational_version: '{version}' 13 | 14 | build: 15 | publish_nuget: true 16 | parallel: true 17 | project: ModernDev.InTouch.sln 18 | 19 | before_build: 20 | - nuget restore 21 | 22 | after_build: 23 | - nuget pack ModernDev.InTouch.nuspec -version %APPVEYOR_BUILD_VERSION% 24 | - appveyor PushArtifact ModernDev.InTouch.%APPVEYOR_BUILD_VERSION%.nupkg 25 | 26 | pull_requests: 27 | do_not_increment_build_number: true 28 | 29 | nuget: 30 | disable_publish_on_pr: true 31 | 32 | notifications: 33 | - provider: Webhook 34 | url: https://webhooks.gitter.im/e/fccbbe8e33b7c9ea1f62 35 | on_build_success: true 36 | on_build_failure: true 37 | on_build_status_changed: true 38 | 39 | deploy: 40 | - provider: NuGet 41 | api_key: 42 | secure: gQtaTM1+Mnxb1MlzKyPU/eZVqd5U8DZOwEB3978le7Ps5W3KQrdSygRbT5MHt+Dk 43 | artifact: /.*\.nupkg/ 44 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/Services.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Services to lookup contacts. 20 | /// 21 | [DebuggerDisplay("Services")] 22 | public enum Services 23 | { 24 | [EnumMember(Value = "email")] 25 | Email, 26 | 27 | [EnumMember(Value = "phone")] 28 | Phone, 29 | 30 | [EnumMember(Value = "twitter")] 31 | Twitter, 32 | 33 | [EnumMember(Value = "facebook")] 34 | Facebook, 35 | 36 | [EnumMember(Value = "odnoklassniki")] 37 | Ok, 38 | 39 | [EnumMember(Value = "instagram")] 40 | Instagram, 41 | 42 | [EnumMember(Value = "google")] 43 | Google 44 | } 45 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Button.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class represents an information about a button. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Button {Title}")] 24 | public class Button 25 | { 26 | /// 27 | /// Button's title. 28 | /// 29 | [DataMember] 30 | [JsonProperty("title")] 31 | public string Title { get; set; } 32 | 33 | /// 34 | /// Button's action 35 | /// 36 | [DataMember] 37 | [JsonProperty("action")] 38 | public ButtonAction Action { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/DialogsList.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Dialogs list. 21 | /// 22 | [DebuggerDisplay("DialogsList")] 23 | [DataContract] 24 | public class DialogsList : ItemsList 25 | { 26 | /// 27 | /// The real offset. 28 | /// 29 | [DataMember] 30 | [JsonProperty("real_offset")] 31 | public int RealOffset { get; set; } 32 | 33 | /// 34 | /// The number of unread dialogs. 35 | /// 36 | [DataMember] 37 | [JsonProperty("unread_dialogs")] 38 | public int UnreadDialogs { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/HintsSectionTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Types of hint sections. 20 | /// 21 | [DebuggerDisplay("HintsSectionTypes")] 22 | public enum HintsSectionTypes 23 | { 24 | [EnumMember(Value = "groups")] 25 | Groups, 26 | 27 | [EnumMember(Value = "events")] 28 | Events, 29 | 30 | [EnumMember(Value = "publics")] 31 | Publics, 32 | 33 | [EnumMember(Value = "correspondents")] 34 | Correspondents, 35 | 36 | [EnumMember(Value = "people")] 37 | People, 38 | 39 | [EnumMember(Value = "friends")] 40 | Friends, 41 | 42 | [EnumMember(Value = "mutual_friends")] 43 | MutualFriends 44 | } 45 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/GroupCatalogInfo.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// Group catalog info. 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("GroupCatalogInfo")] 25 | public class GroupCatalogInfo 26 | { 27 | /// 28 | /// True - catalog is available. 29 | /// 30 | [DataMember] 31 | [JsonProperty("enabled")] 32 | public bool Enabled { get; set; } 33 | 34 | /// 35 | /// Market categories. 36 | /// 37 | [DataMember] 38 | [JsonProperty("categories")] 39 | public List Categories { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/TitledItem.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A base class for all items that contains id and title properties. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("TitledItem {Title}")] 24 | public abstract class TitledItem 25 | { 26 | /// 27 | /// Item ID. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Item title. 35 | /// 36 | [DataMember] 37 | [JsonProperty("title")] 38 | public string Title { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/ModernDev.InTouch.Shared.shproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | fc97ea26-e93d-4853-ae7f-695d80cd68b8 5 | 14.0 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/FriendsOrder.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Runtime.Serialization; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | public enum FriendsOrder 18 | { 19 | /// 20 | /// By rating, similar to how friends are sorted in My friends section. 21 | /// 22 | [EnumMember(Value = "hints")] 23 | Hints, 24 | 25 | /// 26 | /// Randomly. 27 | /// 28 | [EnumMember(Value = "random")] 29 | Random, 30 | 31 | /// 32 | /// Mobile app users first. 33 | /// 34 | [EnumMember(Value = "value")] 35 | Mobile, 36 | 37 | /// 38 | /// By name. 39 | /// 40 | [EnumMember(Value = "name")] 41 | Name 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.UniversalWindows/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Resources; 2 | using System.Reflection; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("ModernDev.InTouch")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("Modern-Dev")] 11 | [assembly: AssemblyProduct("ModernDev.InTouch")] 12 | [assembly: AssemblyCopyright("Copyright © 2017")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | [assembly: NeutralResourcesLanguage("en")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("0.1.0.0")] 28 | [assembly: AssemblyFileVersion("0.1.0.0")] -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunitySubtypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Public page subtypes. 19 | /// 20 | [DebuggerDisplay("CommunitySubtypes")] 21 | public enum CommunitySubtypes 22 | { 23 | /// 24 | /// Place or small business. 25 | /// 26 | PlaceOrSmallBusiness = 1, 27 | 28 | /// 29 | /// Company, organization or website. 30 | /// 31 | CompanyOrganizationOrWebsite = 2, 32 | 33 | /// 34 | /// Famous person or group of people. 35 | /// 36 | PersonOrGroupOfPeople = 3, 37 | 38 | /// 39 | /// Product or work of art. 40 | /// 41 | ProductOrArtWork = 4 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/LinkStatuses.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Link statuses. 20 | /// 21 | [DebuggerDisplay("LinkStatuses")] 22 | public enum LinkStatuses 23 | { 24 | /// 25 | /// Link is not blocked. 26 | /// 27 | [EnumMember(Value = "not_banned")] 28 | NotBanned, 29 | 30 | /// 31 | /// Link is blocked. 32 | /// 33 | [EnumMember(Value = "banned")] 34 | Banned, 35 | 36 | /// 37 | /// Link is being checked; retry after several seconds. 38 | /// 39 | [EnumMember(Value = "processing")] 40 | Processing 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/EditorStickers.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// An class describes photo editor stickers. 22 | /// 23 | [DebuggerDisplay("EditorStickers")] 24 | [DataContract] 25 | public class EditorStickers 26 | { 27 | /// 28 | /// Base URL. 29 | /// 30 | [DataMember] 31 | [JsonProperty("base_url")] 32 | public string BaseUrl { get; set; } 33 | 34 | /// 35 | /// Sticker IDs. 36 | /// 37 | [DataMember] 38 | [JsonProperty("sticker_ids")] 39 | public List StickerIds { get; set; } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Reposts.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Information about reposts. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Reposts {Count}")] 24 | public class Reposts 25 | { 26 | /// 27 | /// The total number of users who reposts the specified object. 28 | /// 29 | [DataMember] 30 | [JsonProperty("count")] 31 | public int Count { get; set; } 32 | 33 | /// 34 | /// Whether the user reposted the post 35 | /// 36 | [DataMember] 37 | [JsonProperty("user_reposted")] 38 | public bool UserReposted { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Mutual.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// An information about mutual friends. 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("Mutual {Count}")] 25 | public class Mutual 26 | { 27 | /// 28 | /// Total number of mutual friends. 29 | /// 30 | [DataMember] 31 | [JsonProperty("count")] 32 | public int Count { get; set; } 33 | 34 | /// 35 | /// A list of mutual friends ids. 36 | /// 37 | [DataMember] 38 | [JsonProperty("users")] 39 | public List Users { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Status.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes a user's or a community's text status. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Status {Text}")] 24 | public class Status 25 | { 26 | /// 27 | /// Text of the status. 28 | /// 29 | [DataMember] 30 | [JsonProperty("text")] 31 | public string Text { get; set; } 32 | 33 | /// 34 | /// The current audio user listening to (if any). 35 | /// 36 | [DataMember] 37 | [JsonProperty("audio")] 38 | public Audio Audio { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/TopicsList.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Topics list. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("TopicsList")] 24 | public class TopicsList : ItemsList 25 | { 26 | /// 27 | /// Default sort order set by community admin. 28 | /// 29 | [DataMember] 30 | [JsonProperty("default_order")] 31 | public int DefaultOrder { get; set; } 32 | 33 | /// 34 | /// Whether the current user can create new topics in the current community. 35 | /// 36 | [DataMember] 37 | [JsonProperty("can_add_topics")] 38 | public bool CanAddTopics { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Helpers/PrivateResolver.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Reflection; 14 | using Newtonsoft.Json; 15 | using Newtonsoft.Json.Serialization; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | internal class PrivateResolver : DefaultContractResolver 20 | { 21 | protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization) 22 | { 23 | var prop = base.CreateProperty(member, memberSerialization); 24 | 25 | if (!prop.Writable) 26 | { 27 | var property = member as PropertyInfo; 28 | 29 | if (property != null) 30 | { 31 | var hasPrivateSetter = property.SetMethod != null; 32 | prop.Writable = hasPrivateSetter; 33 | } 34 | } 35 | 36 | return prop; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Contacts.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// Founded contacts. 22 | /// 23 | [DebuggerDisplay("Contacts")] 24 | [DataContract] 25 | public class Contacts 26 | { 27 | /// 28 | /// A list of objects. 29 | /// 30 | [DataMember] 31 | [JsonProperty("found")] 32 | public List Found { get; set; } 33 | 34 | /// 35 | /// A list of contacts that were not found. 36 | /// 37 | [DataMember] 38 | [JsonProperty("other")] 39 | public List Other { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/LongPollServerData.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// The data to interact with Long Poll server. 21 | /// 22 | [DebuggerDisplay("LongPollServerData")] 23 | [DataContract] 24 | public class LongPollServerData 25 | { 26 | [DataMember] 27 | [JsonProperty("key")] 28 | public string Key { get; set; } 29 | 30 | [DataMember] 31 | [JsonProperty("server")] 32 | public string Server { get; set; } 33 | 34 | [DataMember] 35 | [JsonProperty("ts")] 36 | public int TS { get; set; } 37 | 38 | [DataMember] 39 | [JsonProperty("pts")] 40 | public int PTS { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/UserSubscriptions.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// User subscriptions. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("UserSubscriptions {Users.Count} {Groups.Count}")] 24 | public class UserSubscriptions 25 | { 26 | /// 27 | /// Users in subscriptions. 28 | /// 29 | [DataMember] 30 | [JsonProperty("users")] 31 | public ItemsList Users { get; set; } 32 | 33 | /// 34 | /// Groups in subscriptions. 35 | /// 36 | [DataMember] 37 | [JsonProperty("groups")] 38 | public ItemsList Groups { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AlbumPhotoUploadResponse.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Album photo upload server response. 21 | /// 22 | [DebuggerDisplay("PhotoUploadResponse {AlbumId} {PhotosList}")] 23 | [DataContract] 24 | public class AlbumPhotoUploadResponse : UploadResponse 25 | { 26 | /// 27 | /// Photos list. 28 | /// 29 | [DataMember] 30 | [JsonProperty("photos_list")] 31 | public string PhotosList { get; set; } 32 | 33 | /// 34 | /// Album Id. 35 | /// 36 | [DataMember] 37 | [JsonProperty("aid")] 38 | public string AlbumId { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Application.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// An class represents an information about market's app. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Application {AppId}")] 24 | public class Application 25 | { 26 | /// 27 | /// A object. 28 | /// 29 | [DataMember] 30 | [JsonProperty("store")] 31 | public Store Store { get; set; } 32 | 33 | /// 34 | /// App's ID int the market. 35 | /// 36 | [DataMember] 37 | [JsonProperty("app_id")] 38 | public int AppId { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/LinkStatsInterval.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Link stats interval. 20 | /// 21 | [DebuggerDisplay("LinkStatusInterval")] 22 | public enum LinkStatsInterval 23 | { 24 | /// 25 | /// Hour 26 | /// 27 | [EnumMember(Value = "hour")] 28 | Hour, 29 | 30 | /// 31 | /// Day 32 | /// 33 | [EnumMember(Value = "day")] 34 | Day, 35 | 36 | /// 37 | /// Week 38 | /// 39 | [EnumMember(Value = "week")] 40 | Week, 41 | 42 | /// 43 | /// Month 44 | /// 45 | [EnumMember(Value = "month")] 46 | Month 47 | } 48 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/GeoPlace.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes an information about geo location. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("GeoPlace {Country}, {City}")] 24 | public class GeoPlace : BasicPlace 25 | { 26 | /// 27 | /// The name of the country. 28 | /// 29 | [DataMember] 30 | [JsonProperty("country")] 31 | public string Country { get; set; } 32 | 33 | /// 34 | /// The name of the city. 35 | /// 36 | [DataMember] 37 | [JsonProperty("city")] 38 | public string City { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/PhotosServerInfo.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Photos server info. 21 | /// 22 | [DebuggerDisplay("PhotosServerInfo {AlbumId} {UserId}")] 23 | [DataContract] 24 | public class PhotosServerInfo : ServerInfo 25 | { 26 | /// 27 | /// Id of the user who uploads the photo. 28 | /// 29 | [DataMember] 30 | [JsonProperty("user_id")] 31 | public int UserId { get; set; } 32 | 33 | /// 34 | /// Album Id, in which the photo will be uploaded. 35 | /// 36 | [DataMember] 37 | [JsonProperty("album_id")] 38 | public int AlbumId { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Comments.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using ModernDev.InTouch.Helpers; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// Information about comments. 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("Comments {Count}")] 25 | public class Comments 26 | { 27 | /// 28 | /// The total number of the comments. 29 | /// 30 | [DataMember] 31 | [JsonProperty("count")] 32 | public int Count { get; set; } 33 | 34 | /// 35 | /// Whether the current user can leave comments to the post 36 | /// 37 | [DataMember] 38 | [JsonProperty("can_posst")] 39 | public bool CanPost { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/OnlineFriends.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// Online friends 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("OnlineFriends")] 25 | public class OnlineFriends 26 | { 27 | /// 28 | /// A list of Ids of online friends. 29 | /// 30 | [DataMember] 31 | [JsonProperty("online")] 32 | public List Online { get; set; } 33 | 34 | /// 35 | /// A list of Ids of online from mobile. 36 | /// 37 | [DataMember] 38 | [JsonProperty("online_mobile")] 39 | public List OnlineMobile { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/WallAddCommentParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class WallAddCommentParams : BaseAddCommentParams 19 | { 20 | /// 21 | /// Post ID. 22 | /// 23 | [MethodParam(Name = "post_id", IsRequired = true)] 24 | public int PostId { get; set; } 25 | 26 | /// 27 | /// (Required if attachments is not set.) Text of the comment. 28 | /// 29 | [MethodParam(Name = "text")] 30 | public string Text { get; set; } 31 | 32 | /// 33 | /// 34 | /// 35 | [MethodParam(Name = "ref")] 36 | public string Ref { get; set; } 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/ChatActions.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Chat service actions. 20 | /// 21 | [DebuggerDisplay("ChatActions")] 22 | public enum ChatActions 23 | { 24 | [EnumMember(Value = "chat_photo_update")] 25 | PhotoUpdate, 26 | 27 | [EnumMember(Value = "chat_photo_remove")] 28 | PhotoRemove, 29 | 30 | [EnumMember(Value = "chat_create")] 31 | Create, 32 | 33 | [EnumMember(Value = "chat_title_update")] 34 | TitleUpdate, 35 | 36 | [EnumMember(Value = "chat_invite_user")] 37 | InviteUser, 38 | 39 | [EnumMember(Value = "chat_kick_user")] 40 | KickUser, 41 | 42 | [EnumMember(Value = "none")] 43 | None 44 | } 45 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/LinkStatus.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | using Newtonsoft.Json.Converters; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// The link status. 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("LinkStatus {Status} {Link}")] 25 | public class LinkStatus 26 | { 27 | /// 28 | /// The link itself. 29 | /// 30 | [DataMember] 31 | [JsonProperty("link")] 32 | public string Link { get; set; } 33 | 34 | /// 35 | /// The link status. 36 | /// 37 | [DataMember] 38 | [JsonProperty("status")] 39 | [JsonConverter(typeof(StringEnumConverter))] 40 | public LinkStatuses Status { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AnswerVoters.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// An class describes an information about users accepted the answer. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("AnswerVoters {AnswerId} {Users.Count}")] 24 | public class AnswerVoters 25 | { 26 | /// 27 | /// Answer Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("answer_id")] 31 | public int AnswerId { get; set; } 32 | 33 | /// 34 | /// Users accepted the answer. 35 | /// 36 | [DataMember] 37 | [JsonProperty("users")] 38 | public ItemsList Users { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodParamAttribute.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | 15 | namespace ModernDev.InTouch 16 | { 17 | /// 18 | /// Describes a property and its settings. 19 | /// 20 | [AttributeUsage(AttributeTargets.Property)] 21 | public class MethodParamAttribute : Attribute 22 | { 23 | /// 24 | /// The name of the property 25 | /// 26 | public string Name; 27 | 28 | /// 29 | /// Whether the property is required. 30 | /// 31 | public bool IsRequired = false; 32 | 33 | /// 34 | /// The max value of the property. 35 | /// 36 | public int MaxAllowed; 37 | 38 | /// 39 | /// The property extra settings. 40 | /// 41 | public object Extra; 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Rating.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class represents an information about product's rating. 21 | /// 22 | [DebuggerDisplay(("Rating {Stars}_{ReviewsCount}"))] 23 | [DataContract] 24 | public class Rating 25 | { 26 | /// 27 | /// Product's stars count. 28 | /// 29 | [DataMember] 30 | [JsonProperty("start")] 31 | public int Stars { get; set; } 32 | 33 | /// 34 | /// The number of reviews the current product has received. 35 | /// 36 | [DataMember] 37 | [JsonProperty("reviews_count")] 38 | public int ReviewsCount { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Relative.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | using Newtonsoft.Json.Converters; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// A class describes user's relative. 22 | /// 23 | [DebuggerDisplay("Relative {Id} {Type}")] 24 | [DataContract] 25 | public class Relative 26 | { 27 | /// 28 | /// Relationship type. 29 | /// 30 | [DataMember] 31 | [JsonConverter(typeof(StringEnumConverter))] 32 | [JsonProperty("type")] 33 | public RelativeTypes Type { get; set; } 34 | 35 | /// 36 | /// User ID. 37 | /// 38 | [DataMember] 39 | [JsonProperty("id")] 40 | public int Id { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/CallbackServerSettings.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes callback server settings. 21 | /// 22 | [DebuggerDisplay("CallbackServerSettings")] 23 | [DataContract] 24 | public class CallbackServerSettings 25 | { 26 | #region Properties 27 | 28 | /// 29 | /// Server URL. 30 | /// 31 | [JsonProperty("server_url")] 32 | [DataMember] 33 | public string ServerUrl { get; set; } 34 | 35 | /// 36 | /// Secret key. 37 | /// 38 | [JsonProperty("secret_key")] 39 | [DataMember] 40 | public string SecretKey { get; set; } 41 | #endregion 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/NewProfileInfoSavingStatus.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Saving profile info status. 21 | /// 22 | [DebuggerDisplay("NewProfileInfoSavingStatus")] 23 | [DataContract] 24 | public class NewProfileInfoSavingStatus 25 | { 26 | /// 27 | /// True if the information is saved, False if no fields were saved. 28 | /// 29 | [DataMember] 30 | [JsonProperty("changed")] 31 | public bool Changed { get; set; } 32 | 33 | /// 34 | /// Info about name change request (if any). 35 | /// 36 | [DataMember] 37 | [JsonProperty("name_request")] 38 | public NameRequest NameRequest { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Portable/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Resources; 2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | using System.Runtime.InteropServices; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("ModernDev.InTouch")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("Modern-Dev")] 13 | [assembly: AssemblyProduct("ModernDev.InTouch")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: NeutralResourcesLanguage("en")] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("0.1.0.0")] 30 | [assembly: AssemblyFileVersion("0.1.0.0")] 31 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/GroupCover.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// A class describes community cover. 22 | /// 23 | [DebuggerDisplay("GroupCover")] 24 | [DataContract] 25 | public class GroupCover 26 | { 27 | #region Properties 28 | 29 | /// 30 | /// Information whether the cover is enabled. 31 | /// 32 | [DataMember] 33 | [JsonProperty("enabled")] 34 | public bool Enabled { get; set; } 35 | 36 | /// 37 | /// Cover image copies. 38 | /// 39 | [DataMember] 40 | [JsonProperty("images")] 41 | public List Images { get; set; } 42 | #endregion 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/MediaLiked.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A describes an information about an object in the Likes list of the user. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("MediaLiked {Liked} {Copied}")] 24 | public class MediaLiked 25 | { 26 | /// 27 | /// Whether the user liked an object. 28 | /// 29 | [DataMember] 30 | [JsonProperty("liked")] 31 | public bool Liked { get; set; } 32 | 33 | /// 34 | /// Whether the user copied an object to their wall. 35 | /// 36 | [DataMember] 37 | [JsonProperty("copied")] 38 | public bool Copied { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Standard/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Resources; 2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | using System.Runtime.InteropServices; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("ModernDev.InTouch.")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("ModernDev")] 13 | [assembly: AssemblyProduct("ModernDev.InTouch")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: NeutralResourcesLanguage("en")] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("0.1.0.0")] 30 | [assembly: AssemblyFileVersion("0.1.0.0")] 31 | -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/ObjectInfo.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | using Newtonsoft.Json.Converters; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// An describes general information about VK object. 22 | /// 23 | [DebuggerDisplay("ObjectInfo {Type} {Id}")] 24 | [DataContract] 25 | public class ObjectInfo 26 | { 27 | /// 28 | /// Object Id. 29 | /// 30 | [DataMember] 31 | [JsonProperty("object_id")] 32 | public int Id { get; set; } 33 | 34 | /// 35 | /// Object type. 36 | /// 37 | [DataMember] 38 | [JsonProperty("type")] 39 | [JsonConverter(typeof(StringEnumConverter))] 40 | public ObjectTypes Type { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/UserExports.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// An class describes external services with export configured. 21 | /// 22 | [DebuggerDisplay("UserExports")] 23 | [DataContract] 24 | public class UserExports 25 | { 26 | [DataMember] 27 | [JsonProperty("facebook")] 28 | public string Facebook { get; set; } 29 | 30 | [DataMember] 31 | [JsonProperty("twitter")] 32 | public string Twitter { get; set; } 33 | 34 | [DataMember] 35 | [JsonProperty("livejournal")] 36 | public string LiveJournal { get; set; } 37 | 38 | [DataMember] 39 | [JsonProperty("instagram")] 40 | public string Instagram { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/PhotosCreateCommentParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// An class describes a method params. 17 | /// 18 | public class PhotosCreateCommentParams : BaseAddCommentParams 19 | { 20 | /// 21 | /// Photo ID. 22 | /// 23 | [MethodParam(Name = "photo_id", IsRequired = true)] 24 | public int PhotoId { get; set; } 25 | 26 | /// 27 | /// Comment text. 28 | /// 29 | [MethodParam(Name = "message")] 30 | public string Message { get; set; } 31 | 32 | /// 33 | /// Photo access key. 34 | /// 35 | [MethodParam(Name = "access_key")] 36 | public string AccessKey { get; set; } 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/City.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes a city. 21 | /// 22 | [DebuggerDisplay("City {Title}")] 23 | [DataContract] 24 | public class City : TitledItem 25 | { 26 | [DataMember] 27 | [JsonProperty("important")] 28 | public bool Important { get; set; } 29 | 30 | /// 31 | /// The area of the city. 32 | /// 33 | [DataMember] 34 | [JsonProperty("area")] 35 | public string Area { get; set; } 36 | 37 | /// 38 | /// The region of the city. 39 | /// 40 | [DataMember] 41 | [JsonProperty("region")] 42 | public string Region { get; set; } 43 | } 44 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/ReplyTopicNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new reply has been added about the user's topic. 21 | /// 22 | [DebuggerDisplay("ReplyTopicNotification")] 23 | [DataContract] 24 | public class ReplyTopicNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Topic Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/GraffitiPreview.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Graffiti preview info. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("GrafittiPreview")] 24 | public class GraffitiPreview 25 | { 26 | /// 27 | /// Graffiti URL. 28 | /// 29 | [DataMember] 30 | [JsonProperty("src")] 31 | public string Src { get; set; } 32 | 33 | /// 34 | /// Image with in px. 35 | /// 36 | [DataMember] 37 | [JsonProperty("width")] 38 | public int Width { get; set; } 39 | 40 | /// 41 | /// Image height in px. 42 | /// 43 | [DataMember] 44 | [JsonProperty("height")] 45 | public int Height { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/LastActivity.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using ModernDev.InTouch.Helpers; 17 | using Newtonsoft.Json; 18 | 19 | namespace ModernDev.InTouch 20 | { 21 | /// 22 | /// Users last activity. 23 | /// 24 | [DebuggerDisplay("LastActivity")] 25 | [DataContract] 26 | public class LastActivity 27 | { 28 | /// 29 | /// Whether the user is online. 30 | /// 31 | [DataMember] 32 | [JsonProperty("online")] 33 | public bool IsOnline { get; set; } 34 | 35 | /// 36 | /// The time of user's last activity. 37 | /// 38 | [DataMember] 39 | [JsonProperty("time")] 40 | [JsonConverter(typeof(JsonNumberDateTimeConverter))] 41 | public DateTime LastActivityTime { get; set; } 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CommentPostNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment has been added about the user's post. 21 | /// 22 | [DebuggerDisplay("CommentPostNotification")] 23 | [DataContract] 24 | public class CommentPostNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Post Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CopyPostNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more users have copied the user's post. 21 | /// 22 | [DebuggerDisplay("CopyPostNotification")] 23 | [DataContract] 24 | public class CopyPostNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Post Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Helpers/JsonRequestParamsConverter.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | using System.Linq; 15 | using Newtonsoft.Json; 16 | using Newtonsoft.Json.Linq; 17 | 18 | namespace ModernDev.InTouch.Helpers 19 | { 20 | internal class JsonRequestParamsConverter : JsonConverter 21 | { 22 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) 23 | { 24 | writer.WriteNull(); 25 | } 26 | 27 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) 28 | { 29 | return serializer.Deserialize(reader) 30 | .OfType() 31 | .ToDictionary(jObj => (string) jObj["key"], jObj => (string) jObj["value"]); 32 | } 33 | 34 | public override bool CanConvert(Type objectType) 35 | { 36 | return true; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CommentPhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment has been added about the user's photo. 21 | /// 22 | [DebuggerDisplay("CommentPhotoNotification")] 23 | [DataContract] 24 | public class CommentPhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Photo Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CommentVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment has been added about the user's video. 21 | /// 22 | [DebuggerDisplay("CommentVideoNotification")] 23 | [DataContract] 24 | public class CommentVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Video Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CopyPhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more users have copied the user's photo. 21 | /// 22 | [DebuggerDisplay("CopyPhotoNotification")] 23 | [DataContract] 24 | public class CopyPhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Photo Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/CopyVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more users have copied the user's video. 21 | /// 22 | [DebuggerDisplay("CopyVideoNotification")] 23 | [DataContract] 24 | public class CopyVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Video Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikePostNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's post. 21 | /// 22 | [DebuggerDisplay("LikePostNotification")] 23 | [DataContract] 24 | public class LikePostNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Post Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/ReplyCommentNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new reply has been added about the user's comment. 21 | /// 22 | [DebuggerDisplay("ReplyCommentNotification")] 23 | [DataContract] 24 | public class ReplyCommentNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikePhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's photo. 21 | /// 22 | [DebuggerDisplay("LikePhotoNotification")] 23 | [DataContract] 24 | public class LikePhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Photo Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikeVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's video. 21 | /// 22 | [DebuggerDisplay("LikeVideoNotification")] 23 | [DataContract] 24 | public class LikeVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Video Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/MentionCommentsNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment that mentions the user has been posted. 21 | /// 22 | [DebuggerDisplay("MentionCommentsNotification")] 23 | [DataContract] 24 | public class MentionCommentsNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Post Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikeCommentNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's comment. 21 | /// 22 | [DebuggerDisplay("LikeCommentNotification")] 23 | [DataContract] 24 | public class LikeCommentNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityPrivacyTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community privacy types. 20 | /// 21 | [DebuggerDisplay("CommunityPrivacyTypes")] 22 | public enum CommunityPrivacyTypes 23 | { 24 | /// 25 | /// Anyone can join an open community. 26 | /// 27 | [EnumMember(Value = "open")] 28 | Open, 29 | 30 | /// 31 | /// Users can join a closed community if they receive an invitation or send a request. 32 | /// 33 | [EnumMember(Value = "closed")] 34 | Closed, 35 | 36 | /// 37 | /// Private communities are only seen by those, who have been invited by the management. 38 | /// 39 | [EnumMember(Value = "private")] 40 | Private 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/PlaceType.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Place type. 21 | /// 22 | [DebuggerDisplay("PlaceType {Title}")] 23 | [DataContract] 24 | public class PlaceType 25 | { 26 | /// 27 | /// Place type id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Place type title. 35 | /// 36 | [DataMember] 37 | [JsonProperty("title")] 38 | public string Title { get; set; } 39 | 40 | /// 41 | /// URL of a place type icon. 42 | /// 43 | [DataMember] 44 | [JsonProperty("icon")] 45 | public string Icon { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/UserLastSeen.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using ModernDev.InTouch.Helpers; 17 | using Newtonsoft.Json; 18 | 19 | namespace ModernDev.InTouch 20 | { 21 | /// 22 | /// Last visit date. 23 | /// 24 | [DebuggerDisplay("UserLastSeen {Time} {Platform}")] 25 | [DataContract] 26 | public class UserLastSeen 27 | { 28 | /// 29 | /// Last visit date (in Unix time). 30 | /// 31 | [DataMember] 32 | [JsonProperty("time")] 33 | [JsonConverter(typeof(JsonNumberDateTimeConverter))] 34 | public DateTime Time { get; set; } 35 | 36 | /// 37 | /// Type of the platform that used for the last authorization. 38 | /// 39 | [DataMember] 40 | [JsonProperty("platform")] 41 | public int? Platform { get; set; } 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/DocType.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Document type object. 21 | /// 22 | [DebuggerDisplay("DocType {Name} {Count}")] 23 | [DataContract] 24 | public class DocType 25 | { 26 | /// 27 | /// Type Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("id")] 31 | public int Id { get; set; } 32 | 33 | /// 34 | /// Type name. 35 | /// 36 | [DataMember] 37 | [JsonProperty("name")] 38 | public string Name { get; set; } 39 | 40 | /// 41 | /// The number of items of that type. 42 | /// 43 | [DataMember] 44 | [JsonProperty("count")] 45 | public int Count { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/ReplyCommentPhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new reply has been added about the user's comment about a photo. 21 | /// 22 | [DebuggerDisplay("ReplyCommentPhotoNotification")] 23 | [DataContract] 24 | public class ReplyCommentPhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/ReplyCommentVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new reply has been added about the user's comment about a video. 21 | /// 22 | [DebuggerDisplay("ReplyCommentVideoNotification")] 23 | [DataContract] 24 | public class ReplyCommentVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BoardAddCommentParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | /// 16 | /// A class describes a method params. 17 | /// 18 | public class BoardAddCommentParams : BaseAddCommentParams 19 | { 20 | /// 21 | /// ID of the community that owns the discussion board. 22 | /// 23 | [MethodParam(Name = "group_id", IsRequired = true)] 24 | public int GroupId { get; set; } 25 | 26 | /// 27 | /// ID of the topic to be commented on. 28 | /// 29 | [MethodParam(Name = "topic_id", IsRequired = true)] 30 | public int TopicId { get; set; } 31 | 32 | /// 33 | /// (Required if attachments is not set.) Text of the comment. 34 | /// 35 | [MethodParam(Name = "text")] 36 | public string Text { get; set; } 37 | } 38 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/MentionCommentPhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment that mentions the user has been published on the photo. 21 | /// 22 | [DebuggerDisplay("MentionCommentPhotoNotification")] 23 | [DataContract] 24 | public class MentionCommentPhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Photo Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/MentionCommentVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new comment that mentions the user has been published on the video. 21 | /// 22 | [DebuggerDisplay("MentionCommentVideoNotification")] 23 | [DataContract] 24 | public class MentionCommentVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Video Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/ReplyCommentMarketNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A new reply has been added about the user's comment about a market item. 21 | /// 22 | [DebuggerDisplay("ReplyCommentMarketNotification")] 23 | [DataContract] 24 | public class ReplyCommentMarketNotification : NotificationItem 25 | { 26 | /// 27 | /// A object describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public Comment Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikeCommentPhotoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's comment about a photo. 21 | /// 22 | [DebuggerDisplay("LikeCommentPhotoNotification")] 23 | [DataContract] 24 | public class LikeCommentPhotoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikeCommentTopicNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's comment about a topic. 21 | /// 22 | [DebuggerDisplay("LikeCommentTopicNotification")] 23 | [DataContract] 24 | public class LikeCommentTopicNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Notifications/LikeCommentVideoNotification.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// One or more Likes have been added to the user's comment about a video. 21 | /// 22 | [DebuggerDisplay("LikeCommentVideoNotification")] 23 | [DataContract] 24 | public class LikeCommentVideoNotification : NotificationItem 25 | { 26 | /// 27 | /// A list of objects describing feedback. 28 | /// 29 | [DataMember] 30 | [JsonProperty("feedback")] 31 | public ItemsList Feedback { get; set; } 32 | 33 | /// 34 | /// An object describing a material owns feedback. 35 | /// 36 | [DataMember] 37 | [JsonProperty("parent")] 38 | public Comment Parent { get; set; } 39 | } 40 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/AuthStatus.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Authentication status. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("AuthStatus")] 24 | public class AuthStatus 25 | { 26 | /// 27 | /// ID of the registered user. 28 | /// 29 | [DataMember] 30 | [JsonProperty("uid")] 31 | public int UId { get; set; } 32 | 33 | /// 34 | /// Whether the confirmation or restoring is success. 35 | /// 36 | [DataMember] 37 | [JsonProperty("success")] 38 | public bool Success { get; set; } 39 | 40 | /// 41 | /// 42 | /// 43 | [DataMember] 44 | [JsonProperty("sid")] 45 | public string SId { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/FriendRequest.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Friend request. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Mutual {UserId}")] 24 | public class FriendRequest 25 | { 26 | /// 27 | /// User Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("user_id")] 31 | public int UserId { get; set; } 32 | 33 | /// 34 | /// Suggestion sender Id. 35 | /// 36 | [DataMember] 37 | [JsonProperty("from")] 38 | public string From { get; set; } 39 | 40 | /// 41 | /// An information about mutual friends. 42 | /// 43 | [DataMember] 44 | [JsonProperty("mutual")] 45 | public Mutual Mutual { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Counters.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Number of various objects the user\community has. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Counters")] 24 | public class Counters 25 | { 26 | /// 27 | /// Number of photo albums. 28 | /// 29 | [DataMember] 30 | [JsonProperty("albums")] 31 | public int Albums { get; set; } 32 | 33 | /// 34 | /// Number of videos. 35 | /// 36 | [DataMember] 37 | [JsonProperty("videos")] 38 | public int Videos { get; set; } 39 | 40 | /// 41 | /// Number of audios. 42 | /// 43 | [DataMember] 44 | [JsonProperty("audios")] 45 | public int Audios { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/CommunityMembersSortOrder.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Community members sort order types. 20 | /// 21 | [DebuggerDisplay("CommunityMembersSortOrder")] 22 | public enum CommunityMembersSortOrder 23 | { 24 | /// 25 | /// User Id ascending. 26 | /// 27 | [EnumMember(Value = "id_asc")] 28 | IdAscending, 29 | 30 | /// 31 | /// User Id descending. 32 | /// 33 | [EnumMember(Value = "id_desc")] 34 | IdDescending, 35 | 36 | /// 37 | /// Join date ascending. 38 | /// 39 | [EnumMember(Value = "time_asc")] 40 | TimeAscending, 41 | 42 | /// 43 | /// Join date descending. 44 | /// 45 | [EnumMember(Value = "time_desc")] 46 | TimeDescending 47 | } 48 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Helpers/JsonNumberDateTimeConverter.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System; 14 | using Newtonsoft.Json; 15 | using static ModernDev.InTouch.Helpers.Utils; 16 | 17 | namespace ModernDev.InTouch.Helpers 18 | { 19 | internal class JsonNumberDateTimeConverter : JsonConverter 20 | { 21 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) 22 | { 23 | writer.WriteValue(((DateTime) value).ToUnixTimeStamp()); 24 | } 25 | 26 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, 27 | JsonSerializer serializer) 28 | { 29 | if (reader.Value != null) 30 | { 31 | return UnixTimeStampToDateTime((long) reader.Value); 32 | } 33 | 34 | return null; 35 | } 36 | 37 | public override bool CanConvert(Type objectType) 38 | { 39 | return objectType == typeof (DateTime); 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/API/MethodsParams/BasePhotosGetAlbumsParams.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | namespace ModernDev.InTouch 14 | { 15 | public class BasePhotosGetAlbumsParams : MethodParamsGroup 16 | { 17 | /// 18 | /// ID of the user or community that owns the albums. 19 | /// 20 | [MethodParam(Name = "owner_id")] 21 | public int? OwnerId { get; set; } 22 | 23 | /// 24 | /// Offset needed to return a specific subset of albums. 25 | /// 26 | [MethodParam(Name = "offset")] 27 | public int Offset { get; set; } 28 | 29 | /// 30 | /// Number of albums to return. 31 | /// 32 | [MethodParam(Name = "count")] 33 | public int? Count { get; set; } 34 | 35 | /// 36 | /// True - to return photo sizes in a special format. 37 | /// 38 | [MethodParam(Name = "photo_sizes")] 39 | public bool PhotoSizes { get; set; } 40 | } 41 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/CommunityCounters.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Number of various objects the community has. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("CommunityCounters")] 24 | public class CommunityCounters : Counters 25 | { 26 | /// 27 | /// Number of photos. 28 | /// 29 | [DataMember] 30 | [JsonProperty("photos")] 31 | public int Photos { get; set; } 32 | 33 | /// 34 | /// Number of topics. 35 | /// 36 | [DataMember] 37 | [JsonProperty("topics")] 38 | public int Topics { get; set; } 39 | 40 | /// 41 | /// Number of documents. 42 | /// 43 | [DataMember] 44 | [JsonProperty("docs")] 45 | public int Docs { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Price.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes product's price. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Price {Text}")] 24 | public class Price 25 | { 26 | /// 27 | /// The price of the product. 28 | /// 29 | [DataMember] 30 | [JsonProperty("amount")] 31 | public int Amount { get; set; } 32 | 33 | /// 34 | /// Currency. 35 | /// 36 | [DataMember] 37 | [JsonProperty("currency")] 38 | public Currency Currency { get; set; } 39 | 40 | /// 41 | /// A string representation of the price. 42 | /// 43 | [DataMember] 44 | [JsonProperty("text")] 45 | public string Text { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/CoverImage.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes single community cover image. 21 | /// 22 | [DebuggerDisplay("CoverImage")] 23 | [DataContract] 24 | public class CoverImage 25 | { 26 | #region Properties 27 | 28 | /// 29 | /// URL of the image copy. 30 | /// 31 | [DataMember] 32 | [JsonProperty("url")] 33 | public string URL { get; set; } 34 | 35 | /// 36 | /// Image width. 37 | /// 38 | [DataMember] 39 | [JsonProperty("width")] 40 | public int Width { get; set; } 41 | 42 | /// 43 | /// Image height. 44 | /// 45 | [DataMember] 46 | [JsonProperty("height")] 47 | public int Height { get; set; } 48 | #endregion 49 | } 50 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Place.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// A class describes a location item. 21 | /// 22 | [DebuggerDisplay("Place {Title}")] 23 | [DataContract] 24 | public partial class Place : BasicPlace 25 | { 26 | /// 27 | /// Country ID. 28 | /// 29 | [DataMember] 30 | [JsonProperty("country")] 31 | public int CountryId { get; set; } 32 | 33 | /// 34 | /// City ID. 35 | /// 36 | [DataMember] 37 | [JsonProperty("city")] 38 | public int? CityId { get; set; } 39 | 40 | /// 41 | /// Distance from the initial search point. 42 | /// 43 | [DataMember] 44 | [JsonProperty("distance")] 45 | public int Distance { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/MarketPhotoUploadResponse.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Photo upload server response. 21 | /// 22 | [DebuggerDisplay("MarketPhotoUploadResponse {Server}")] 23 | [DataContract] 24 | public class MarketPhotoUploadResponse : PhotoUploadResponse 25 | { 26 | /// 27 | /// Group Id. 28 | /// 29 | [DataMember] 30 | [JsonProperty("gid")] 31 | public string GroupId { get; set; } 32 | 33 | /// 34 | /// Crop data. 35 | /// 36 | [DataMember] 37 | [JsonProperty("crop_data")] 38 | public string CropData { get; set; } 39 | 40 | /// 41 | /// Crop hash. 42 | /// 43 | [DataMember] 44 | [JsonProperty("crop_hash")] 45 | public string CropHash { get; set; } 46 | } 47 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/UserPersonalPoliticalViewsTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Political views. 20 | /// 21 | [DebuggerDisplay("UserPersonalPoliticalViewsTypes")] 22 | public enum UserPersonalPoliticalViewsTypes 23 | { 24 | [EnumMember(Value = "Communist")] 25 | Communist = 1, 26 | [EnumMember(Value = "Socialist")] 27 | Socialist = 2, 28 | [EnumMember(Value = "Moderate")] 29 | Moderate = 3, 30 | [EnumMember(Value = "Liberal")] 31 | Liberal = 4, 32 | [EnumMember(Value = "Conservative")] 33 | Conservative = 5, 34 | [EnumMember(Value = "Monarchist")] 35 | Monarchist = 6, 36 | [EnumMember(Value = "Ultraconservative")] 37 | Ultraconservative = 7, 38 | [EnumMember(Value = "Apathetic")] 39 | Apathetic = 8, 40 | [EnumMember(Value = "Libertian")] 41 | Libertian = 9 42 | } 43 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Enums/VideoCatalogFilterTypes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | 16 | namespace ModernDev.InTouch 17 | { 18 | /// 19 | /// Video catalog filter types. 20 | /// 21 | [DebuggerDisplay("VideoCatalogFilterTypes")] 22 | public enum VideoCatalogFilterTypes 23 | { 24 | /// 25 | /// 26 | /// 27 | [EnumMember(Value = "my")] 28 | My, 29 | 30 | /// 31 | /// 32 | /// 33 | [EnumMember(Value = "feed")] 34 | Feed, 35 | 36 | /// 37 | /// 38 | /// 39 | [EnumMember(Value = "ugc")] 40 | Popular, 41 | 42 | /// 43 | /// 44 | /// 45 | [EnumMember(Value = "series")] 46 | Series, 47 | 48 | /// 49 | /// 50 | /// 51 | [EnumMember(Value = "top")] 52 | EditorsChoice 53 | } 54 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/MutualFriends.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Collections.Generic; 14 | using System.Diagnostics; 15 | using System.Runtime.Serialization; 16 | using Newtonsoft.Json; 17 | 18 | namespace ModernDev.InTouch 19 | { 20 | /// 21 | /// An info about mutual friends. 22 | /// 23 | [DataContract] 24 | [DebuggerDisplay("MutualFriends {Count}")] 25 | public class MutualFriends 26 | { 27 | /// 28 | /// User Id. 29 | /// 30 | [DataMember] 31 | [JsonProperty("id")] 32 | public int Id { get; set; } 33 | 34 | /// 35 | /// Count of common friends. 36 | /// 37 | [DataMember] 38 | [JsonProperty("common_count")] 39 | public int Count { get; set; } 40 | 41 | /// 42 | /// A list of Ids of common friends. 43 | /// 44 | [DataMember] 45 | [JsonProperty("common_friends")] 46 | public List Friends { get; set; } 47 | } 48 | } -------------------------------------------------------------------------------- /ModernDev.InTouch.Shared/Model/Likes.cs: -------------------------------------------------------------------------------- 1 | /** 2 | * This file\code is part of InTouch project. 3 | * 4 | * InTouch - is a .NET wrapper for the vk.com API. 5 | * https://github.com/virtyaluk/InTouch 6 | * 7 | * Copyright (c) 2016 Bohdan Shtepan 8 | * http://modern-dev.com/ 9 | * 10 | * Licensed under the GPLv3 license. 11 | */ 12 | 13 | using System.Diagnostics; 14 | using System.Runtime.Serialization; 15 | using Newtonsoft.Json; 16 | 17 | namespace ModernDev.InTouch 18 | { 19 | /// 20 | /// Information about likes. 21 | /// 22 | [DataContract] 23 | [DebuggerDisplay("Likes: {UserLikes}, {Count}")] 24 | public partial class Likes 25 | { 26 | /// 27 | /// Whether the current user likes the specified object. 28 | /// 29 | [DataMember] 30 | [JsonProperty("user_likes")] 31 | public bool UserLikes { get; set; } 32 | 33 | /// 34 | /// Number of users who liked the comment. 35 | /// 36 | [DataMember] 37 | [JsonProperty("count")] 38 | public int Count { get; set; } 39 | 40 | /// 41 | /// Whether the user can like the comment. 42 | /// 43 | [DataMember] 44 | [JsonProperty("can_like")] 45 | public bool CanLike { get; set; } 46 | } 47 | } --------------------------------------------------------------------------------