public void GetLinkedinCompanyPageFeeds(oAuthLinkedIn _oauth, string UserId, string PageId) { LinkedinPageUpdate objlinkedinpageupdate = new LinkedinPageUpdate(); LinkedinPagePostRepository objlipagepostRepo = new LinkedinPagePostRepository(); List <LinkedinPageUpdate.CompanyPagePosts> objcompanypagepost = new List <LinkedinPageUpdate.CompanyPagePosts>(); objcompanypagepost = objlinkedinpageupdate.GetPagePosts(_oauth, PageId); LinkedinCompanyPagePosts lipagepost = new LinkedinCompanyPagePosts(); foreach (var item in objcompanypagepost) { lipagepost.Id = Guid.NewGuid(); lipagepost.Posts = item.Posts; lipagepost.PostDate = Convert.ToDateTime(item.PostDate); lipagepost.EntryDate = DateTime.Now; lipagepost.UserId = Guid.Parse(UserId); lipagepost.Type = item.Type; lipagepost.PostId = item.PostId; lipagepost.UpdateKey = item.UpdateKey; lipagepost.PageId = PageId; lipagepost.PostImageUrl = item.PostImageUrl; lipagepost.Likes = item.Likes; lipagepost.Comments = item.Comments; if (!objlipagepostRepo.checkLinkedInPostExists(lipagepost.PostId, lipagepost.UserId)) { objlipagepostRepo.addLinkedInPagepost(lipagepost); } else { objlipagepostRepo.updateLinkedinPostofPage(lipagepost); } } }
public static void SaveLinkedInCompanyPageFeed(oAuthLinkedIn _oauth, string PageId, long UserId, Helper.AppSettings _appSettings) { List <LinkedinPageUpdate.CompanyPagePosts> objcompanypagepost = Helper.LinkedInHelper.GetLinkedinCompanyPageFeeds(_oauth, PageId); LinkedinCompanyPagePosts lipagepost = new LinkedinCompanyPagePosts(); foreach (var item in objcompanypagepost) { lipagepost.Id = ObjectId.GenerateNewId(); lipagepost.strId = ObjectId.GenerateNewId().ToString(); lipagepost.Posts = item.Posts; lipagepost.PostDate = Convert.ToDateTime(item.PostDate).ToString("yyyy/MM/dd HH:mm:ss"); lipagepost.EntryDate = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss"); lipagepost.UserId = UserId; lipagepost.Type = item.Type; lipagepost.PostId = item.PostId; lipagepost.UpdateKey = item.UpdateKey; lipagepost.PageId = PageId; lipagepost.PostImageUrl = item.PostImageUrl; lipagepost.Likes = item.Likes; lipagepost.Comments = item.Comments; MongoRepository _CompanyPagePostsRepository = new MongoRepository("LinkedinCompanyPagePosts", _appSettings); var ret = _CompanyPagePostsRepository.Find <Domain.Socioboard.Models.Mongo.LinkedinCompanyPagePosts>(t => t.PostId == lipagepost.PostId); var task = Task.Run(async() => { return(await ret); }); int count = task.Result.Count; if (count < 1) { _CompanyPagePostsRepository.Add(lipagepost); } } }
public IHttpActionResult PsotCommentOnLinkedinCompanyPageUpdate(LinkedInManager LinkedInManager) { try { Domain.Socioboard.Domain.LinkedinCompanyPage objlicompanypage = new Domain.Socioboard.Domain.LinkedinCompanyPage(); objlicompanypage = objLinkedCmpnyPgeRepo.getCompanyPageInformation(LinkedInManager.ProfileId); oAuthLinkedIn Linkedin_oauth = new oAuthLinkedIn(); try { Linkedin_oauth.ConsumerKey = ConfigurationManager.AppSettings["LinkedinApiKey"]; } catch (Exception ex) { Console.WriteLine(ex.Message); } try { Linkedin_oauth.ConsumerSecret = ConfigurationManager.AppSettings["LinkedinSecretKey"]; } catch (Exception ex) { Console.WriteLine(ex.Message); } Linkedin_oauth.Verifier = objlicompanypage.OAuthVerifier; Linkedin_oauth.TokenSecret = objlicompanypage.OAuthSecret; Linkedin_oauth.Token = objlicompanypage.OAuthToken; Linkedin_oauth.Id = objlicompanypage.LinkedinPageId; Linkedin_oauth.FirstName = objlicompanypage.LinkedinPageName; Company company = new Company(); string res = company.SetCommentOnPagePost(Linkedin_oauth, LinkedInManager.ProfileId, LinkedInManager.Updatekey, LinkedInManager.comment); if (res != "Failed") { Domain.Socioboard.Domain.LinkedinCompanyPagePosts lipost = new LinkedinCompanyPagePosts(); lipost = objLinkedinPagePostRepository.getCompanyPagPostInformation(LinkedInManager.Updatekey); lipost.Comments = lipost.Comments + 1; objLinkedinPagePostRepository.updateLinkedinPostCommentofPage(lipost); } string data = new JavaScriptSerializer().Serialize(res); return(Ok(data)); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); return(Ok("Something Went Wrong")); } }
public static int UpdateLinkedInComanyPageFeed(Domain.Socioboard.Models.LinkedinCompanyPage linacc, oAuthLinkedIn _oauth) { DatabaseRepository dbr = new DatabaseRepository(); Domain.Socioboard.Models.Groupprofiles _grpProfile = dbr.Single <Domain.Socioboard.Models.Groupprofiles>(t => t.profileId.Contains(linacc.LinkedinPageId)); apiHitsCount = 0; if (linacc.lastUpdate.AddHours(1) <= DateTime.UtcNow) { if (linacc.IsActive) { dynamic profile = GetCompanyPageData(_oauth, linacc.LinkedinPageId); try { string NuberOfFollower = profile.num_followers.ToString(); linacc.NumFollowers = Convert.ToInt16(NuberOfFollower); } catch { linacc.NumFollowers = linacc.NumFollowers; } try { linacc.CompanyType = profile.company_type.ToString(); } catch { linacc.CompanyType = linacc.CompanyType; } try { linacc.LogoUrl = profile.logo_url.ToString(); _grpProfile.profilePic = profile.logo_url.ToString(); } catch { linacc.LogoUrl = linacc.LogoUrl; _grpProfile.profilePic = linacc.LogoUrl; } try { linacc.SquareLogoUrl = profile.square_logo_url.ToString(); } catch { linacc.SquareLogoUrl = linacc.SquareLogoUrl; } try { linacc.BlogRssUrl = profile.blog_rss_url.ToString(); } catch { linacc.BlogRssUrl = linacc.BlogRssUrl; } try { linacc.UniversalName = profile.universal_name.ToString(); } catch { linacc.UniversalName = linacc.UniversalName; } dbr.Update <Domain.Socioboard.Models.LinkedinCompanyPage>(linacc); try { List <LinkedinPageUpdate.CompanyPagePosts> objcompanypagepost = objLinkedinPageUpdate.GetPagePosts(_oauth, linacc.LinkedinPageId); if (apiHitsCount < MaxapiHitsCount && objcompanypagepost != null) { apiHitsCount++; LinkedinCompanyPagePosts lipagepost = new LinkedinCompanyPagePosts(); if (objcompanypagepost != null) { foreach (var item in objcompanypagepost) { lipagepost.Id = ObjectId.GenerateNewId(); lipagepost.strId = ObjectId.GenerateNewId().ToString(); lipagepost.Posts = item.Posts; lipagepost.PostDate = Convert.ToDateTime(item.PostDate).ToString("yyyy/MM/dd HH:mm:ss"); lipagepost.EntryDate = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss"); lipagepost.UserId = linacc.UserId; lipagepost.Type = item.Type; lipagepost.PostId = item.PostId; lipagepost.UpdateKey = item.UpdateKey; lipagepost.PageId = linacc.LinkedinPageId; lipagepost.PostImageUrl = item.PostImageUrl; lipagepost.Likes = item.Likes; lipagepost.Comments = item.Comments; MongoRepository _CompanyPagePostsRepository = new MongoRepository("LinkedinCompanyPagePosts"); var ret = _CompanyPagePostsRepository.Find <Domain.Socioboard.Models.Mongo.LinkedinCompanyPagePosts>(t => t.PostId == lipagepost.PostId); var task = Task.Run(async() => { return(await ret); }); int count = task.Result.Count; if (count < 1) { _CompanyPagePostsRepository.Add(lipagepost); } } } else { apiHitsCount = MaxapiHitsCount; } } } catch (Exception) { } linacc.lastUpdate = DateTime.UtcNow; dbr.Update <Domain.Socioboard.Models.LinkedinCompanyPage>(linacc); } } else { apiHitsCount = 0; } return(0); }