public static SocialImage ReturnSocialImage(InstagramMedia item) { SocialImage s = new SocialImage(); s.Image = item.Images.StandardResolution.Url; s.Date = item.Created; s.Caption = item.CaptionText; s.SocialLink = item.Link; return(s); }
public bool LikeToggle(string mediaid, string userid, string accessToken) { InstagramMedia media = MediaDetails(mediaid, accessToken).data; if (media.user_has_liked) { return(LikeDelete(mediaid, userid, accessToken)); } else { return(LikeAdd(mediaid, userid, accessToken)); } }
private Post MapInstagramMedia(InstagramMedia reader) { Post post = new Post() { Id = reader.Id, Username = reader.Username, Text = reader.Caption, Timestamp = DataReaderUtils.GetDateTime(reader.Timestamp), Likes = DataReaderUtils.GetInt(reader.Like_count) }; return(post); }
/// <summary> /// Like or Unlike the Media /// </summary> /// <param name="mediaid"></param> /// <param name="userid"></param> /// <param name="accessToken"></param> /// <returns></returns> public bool LikeToggle(string mediaid, string userid, string accessToken) { Media objMedia = new Media(); InstagramMedia media = objMedia.MediaDetails(mediaid, accessToken).data; if (media.user_has_liked) { return(DeleteLike(mediaid, accessToken)); } else { return(PostUserLike(mediaid, accessToken)); } }
/// <summary> /// Gets an instance of <var>InstagramMediaResponse</var> from /// the specified <var>JsonObject</var>. /// </summary> /// <param name="obj">The instance of <var>JsonObject</var> to parse.</param> public static InstagramMediaResponse Parse(JsonObject obj) { // Check if null if (obj == null) { return(null); } // Validate the response ValidateResponse(obj); // Parse the response return(new InstagramMediaResponse { JsonObject = obj, Data = InstagramMedia.Parse(obj.GetObject("data")) }); }
/// <summary> /// Gets an instance of <var>InstagramRecentMediaResponse</var> from /// the specified <var>JsonObject</var>. /// </summary> /// <param name="obj">The instance of <var>JsonObject</var> to parse.</param> public static InstagramRecentMediaResponse Parse(JsonObject obj) { // Check if null if (obj == null) { return(null); } // Validate the response ValidateResponse(obj); // Get the "paging" object JsonObject pagination = obj.GetObject("pagination"); // Parse the response return(new InstagramRecentMediaResponse { JsonObject = obj, NextUrl = pagination == null ? null : pagination.GetString("next_url"), NextMaxId = pagination == null ? null : pagination.GetString("next_max_id"), Data = InstagramMedia.ParseMultiple(obj.GetArray("data")) }); }
public override async Task ExecuteAsync(string generator, WebHookHandlerContext context) { // Get the WebHook client InstagramWebHookClient client = Dependencies.Client; // Convert the incoming data to a collection of InstagramNotifications var notifications = context.GetDataOrDefault <InstagramNotificationCollection>(); foreach (var notification in notifications) { // Use WebHook client to get detailed information about the posted media JArray entries = await client.GetRecentGeoMedia(context.Id, notification.ObjectId); foreach (JToken entry in entries) { InstagramPost post = entry.ToObject <InstagramPost>(); // Image information if (post.Images != null) { InstagramMedia thumbnail = post.Images.Thumbnail; InstagramMedia lowRes = post.Images.LowResolution; InstagramMedia stdRes = post.Images.StandardResolution; } // Video information if (post.Videos != null) { InstagramMedia lowBandwidth = post.Videos.LowBandwidth; InstagramMedia lowRes = post.Videos.LowResolution; InstagramMedia stdRes = post.Videos.StandardResolution; } // Get direct links and sizes of media Uri link = post.Link; } } }
public static async Task SaveCredentials(string userName = null, string password = null, Member member = null, FacebookUser fbUser = null, InstagramUser instagramUser = null, InstagramMedia instagramMedia = null, string userType = null) { var isExist = await CredentialsService.DoCredentialsExist(); if (isExist && instagramMedia != null) { var account = await CredentialsService.GetAccount(); var data = JsonConvert.SerializeObject(instagramMedia); account.Properties.Add("InstgramMedia", data); //AccountStore.Create().Save(account, "Fitness"); await SaveAsync(account, "Fitness"); } else { if (!string.IsNullOrWhiteSpace(userName) && !string.IsNullOrWhiteSpace(password)) { Account account = new Account { Username = userName, }; account.Properties.Add("Password", password); account.Properties.Add("UserType", userType); var data = JsonConvert.SerializeObject(member); account.Properties.Add("Member", data); if (fbUser != null) { var fbData = JsonConvert.SerializeObject(fbUser); account.Properties.Add("FacebookUser", fbData); } if (instagramUser != null) { var instData = JsonConvert.SerializeObject(instagramUser); account.Properties.Add("InstagramUser", instData); } if (instagramMedia != null) { var mediaData = JsonConvert.SerializeObject(instagramMedia); account.Properties.Add("InstgramMedia", mediaData); } await SaveAsync(account, "Fitness"); } } }
public async Task <List <InstagramMedia> > GetRecentMedia() { return(await _cacheService.GetAsync("GetRecentInstagramMedia", async() => { NameValueCollection queryString = HttpUtility.ParseQueryString(string.Empty); queryString.Add("access_token", _instagramConfig.AccessToken); // Get instagram images var instagramResults = await GetAsync <GetRecentMediaResponse>(_instagramConfig.BaseUrl, $"/v1/users/self/media/recent/?{queryString}"); List <InstagramMedia> items = null; if (instagramResults != null) { items = new List <InstagramMedia>(); foreach (var result in instagramResults.Data.Data) { if (result.Images != null) { var media = new InstagramMedia { DefaultImage = new ImageLink( result.Images.StandardResolution.Url, result.Images.StandardResolution.Width, result.Images.StandardResolution.Height, result.Link, "") { LowRes = result.Images.LowResolution.Url, LinkText = result.Caption?.Text } }; if (result.CarouselMedia != null && result.CarouselMedia.Any()) { // album media.Album = result.CarouselMedia.Where(x => x.Images != null) .Select(x => new Image( x.Images.StandardResolution.Url, x.Images.StandardResolution.Width, x.Images.StandardResolution.Height) { LowRes = x.Images.LowResolution.Url }) .ToList(); } items.Add(media); } } // Remove Hashtags and ..... from instagram comments foreach (var p in items) { if (string.IsNullOrEmpty(p.DefaultImage.LinkText)) { continue; } // Manage text p.DefaultImage.LinkText = RemoveInstagramQuirksFromString(p.DefaultImage.LinkText); p.DefaultImage.LinkText = Utilities.ReduceMultipleSpaces(p.DefaultImage.LinkText); p.DefaultImage.LinkText = RemoveHashTagFromString(p.DefaultImage.LinkText); } } return items; }, 1440).Unwrap()); }
public bool LikeToggle(string mediaid, string userid, string accessToken) { InstagramMedia media = MediaDetails(mediaid, accessToken).Data; return(media.UserHasLiked ? LikeDelete(mediaid, userid, accessToken) : LikeAdd(mediaid, userid, accessToken)); }