//Added by Avinash Verma & Sumit Gupta [30-01-15] private void AddFacebookFeedsWithPagination(string UserId, FacebookClient fb, dynamic profile) { int I = 0; try { //objFacebookFeed = new Domain.Socioboard.Domain.FacebookFeed(); MongoFacebookFeed objFacebookFeed = new MongoFacebookFeed(); System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls; string nexturl = "v2.0/me/feed";//"v2.0/me/posts"; for (int i = 0; i < 50; i++) { dynamic feeds = fb.Get(nexturl); //dynamic feedss = fb.Get("/338818712957141/posts"); //dynamic feedsss = fb.Get("/338818712957141/feed"); if (feeds != null) { try { nexturl = feeds["paging"]["next"].ToString(); } catch (Exception ex) { logger.Error(ex.Message); logger.Error(ex.StackTrace); } foreach (var result in feeds["data"]) { objFacebookFeed.Type = "fb_feed"; try { objFacebookFeed.UserId = UserId; } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } try { objFacebookFeed.ProfileId = profile["id"].ToString(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } try { objFacebookFeed.Id = MongoDB.Bson.ObjectId.GenerateNewId(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } objFacebookFeed.FromProfileUrl = "http://graph.facebook.com/" + result["from"]["id"] + "/picture?type=small"; objFacebookFeed.FromName = result["from"]["name"].ToString(); objFacebookFeed.FromId = result["from"]["id"].ToString(); objFacebookFeed.FeedId = result["id"].ToString(); objFacebookFeed.FeedDate = DateTime.Parse(result["created_time"].ToString()).ToString("yyyy/MM/dd HH:mm:ss"); objFacebookFeed.FbComment = "http://graph.facebook.com/" + result["id"] + "/comments"; objFacebookFeed.FbLike = "http://graph.facebook.com/" + result["id"] + "/likes"; //Added by Sumit Gupta [17-02-15] try { objFacebookFeed.Picture = result["picture"].ToString(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); objFacebookFeed.Picture = null; } string message = string.Empty; int lstfbcount = 0; if (lstfbcount < 25) { try { if (result["message"] != null) { message = result["message"]; lstfbcount++; } } catch (Exception ex) { Console.WriteLine(ex.StackTrace); try { if (result["description"] != null) { message = result["description"]; lstfbcount++; } } catch (Exception exx) { try { Console.WriteLine(exx.StackTrace); if (result["story"] != null) { message = result["story"]; lstfbcount++; } } catch (Exception exxx) { Console.WriteLine(exxx.StackTrace); message = string.Empty; } } } } objFacebookFeed.FeedDescription = message; objFacebookFeed.EntryDate = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss"); //// Edited by Antima[20/12/2014] //SentimentalAnalysis _SentimentalAnalysis = new SentimentalAnalysis(); //FeedSentimentalAnalysisRepository _FeedSentimentalAnalysisRepository = new FeedSentimentalAnalysisRepository(); //try //{ // if (_FeedSentimentalAnalysisRepository.checkFeedExists(objFacebookFeed.ProfileId.ToString(), Guid.Parse(UserId), objFacebookFeed.Id.ToString())) // { // if (!string.IsNullOrEmpty(message)) // { // string Network = "facebook"; // _SentimentalAnalysis.GetPostSentimentsFromUclassify(Guid.Parse(UserId), objFacebookFeed.ProfileId, objFacebookFeed.MessageId, message, Network); // } // } //} //catch (Exception ex) //{ // logger.Error(ex.Message); // logger.Error(ex.StackTrace); //} //if (!objFacebookFeedRepository.checkFacebookFeedExists(objFacebookFeed.FeedId)) //{ // I++; // objFacebookFeedRepository.addFacebookFeed(objFacebookFeed); // logger.Error("AddFacebookFeedsWithPaginationCount>>>"+I); //} I++; MongoRepository mongorepo = new MongoRepository("MongoFacebookFeed"); mongorepo.Add<MongoFacebookFeed>(objFacebookFeed); } } else { break; } } } catch (Exception ex) { logger.Error(ex.Message); logger.Error(ex.StackTrace); Console.Write(ex.StackTrace); } }
private List<Domain.Socioboard.Domain.MongoFacebookFeed> AddFacebookFeeds(string UserId, FacebookClient fb, dynamic profile) { //List of new Feeds List<Domain.Socioboard.Domain.MongoFacebookFeed> lstFacebookFeeds = new List<Domain.Socioboard.Domain.MongoFacebookFeed>(); try { // Domain.Socioboard.Domain.FacebookFeed objFacebookFeed = new Domain.Socioboard.Domain.FacebookFeed(); MongoFacebookFeed objFacebookFeed = new MongoFacebookFeed(); System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls; string nexturl = "v2.0/me/feed";//"v2.0/me/posts"; //for (int i = 0; i < 10; i++) { dynamic feeds = fb.Get(nexturl); //dynamic feedss = fb.Get("/338818712957141/posts"); //dynamic feedsss = fb.Get("/338818712957141/feed"); if (feeds != null) { try { nexturl = feeds["paging"]["next"].ToString(); } catch (Exception ex) { logger.Error(ex.Message); logger.Error(ex.StackTrace); } foreach (var result in feeds["data"]) { // objFacebookFeed = new Domain.Socioboard.Domain.FacebookFeed(); objFacebookFeed.Type = "fb_feed"; try { objFacebookFeed.UserId = UserId; } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } try { objFacebookFeed.ProfileId = profile["id"].ToString(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } try { objFacebookFeed.Id = MongoDB.Bson.ObjectId.GenerateNewId(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); } objFacebookFeed.FromProfileUrl = "http://graph.facebook.com/" + result["from"]["id"] + "/picture?type=small"; objFacebookFeed.FromName = result["from"]["name"].ToString(); objFacebookFeed.FromId = result["from"]["id"].ToString(); objFacebookFeed.FeedId = result["id"].ToString(); objFacebookFeed.FeedDate = DateTime.Parse(result["created_time"].ToString()).ToString("yyyy/MM/dd HH:mm:ss"); objFacebookFeed.FbComment = "http://graph.facebook.com/" + result["id"] + "/comments"; objFacebookFeed.FbLike = "http://graph.facebook.com/" + result["id"] + "/likes"; //Commented as these cause errors on API //Added by Sumit Gupta [31-01-15] to get post Shares/Likes/Comments #region Added by Sumit Gupta [31-01-15] //try //{ // dynamic like = fb.Get("v2.0/" + objFbPagePost.PostId + "/likes?summary=1&limit=0"); // objFbPagePost.Likes = Convert.ToInt32(like["summary"]["total_count"]); //} //catch (Exception ex) //{ // Console.WriteLine(ex.StackTrace); //} //try //{ // dynamic comment = fb.Get("v2.0/" + objFbPagePost.PostId + "/comments?summary=1&limit=0"); // objFbPagePost.Comments = Convert.ToInt32(comment["summary"]["total_count"]); //} //catch (Exception ex) //{ // Console.WriteLine(ex.StackTrace); //} //try //{ // dynamic shares = fb.Get("v2.0/" + objFbPagePost.PostId); // objFbPagePost.Shares = Convert.ToInt32(shares["shares"]["count"]); //} //catch (Exception ex) //{ // Console.WriteLine(ex.StackTrace); // logger.Error(ex.StackTrace); //} #endregion //Added by Sumit Gupta [17-02-15] try { objFacebookFeed.Picture = result["picture"].ToString(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); objFacebookFeed.Picture = ""; } string message = string.Empty; int lstfbcount = 0; if (lstfbcount < 25) { try { if (result["message"] != null) { message = result["message"]; lstfbcount++; } } catch (Exception ex) { Console.WriteLine(ex.StackTrace); try { if (result["description"] != null) { message = result["description"]; lstfbcount++; } } catch (Exception exx) { try { Console.WriteLine(exx.StackTrace); if (result["story"] != null) { message = result["story"]; lstfbcount++; } } catch (Exception exxx) { Console.WriteLine(exxx.StackTrace); message = string.Empty; } } } } if (message == null) { message = ""; } objFacebookFeed.FeedDescription = message; objFacebookFeed.EntryDate = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss"); //Check to avoid duplicacy //if (!objFacebookFeedRepository.checkFacebookFeedExists(objFacebookFeed.FeedId)) //{ // objFacebookFeedRepository.addFacebookFeed(objFacebookFeed); // lstFacebookFeeds.Add(objFacebookFeed); //} MongoRepository mongorepo = new MongoRepository("MongoFacebookFeed"); mongorepo.Add<MongoFacebookFeed>(objFacebookFeed); } } else { //break; } } } catch (Exception ex) { logger.Error(ex.Message); logger.Error(ex.StackTrace); Console.Write(ex.StackTrace); } return lstFacebookFeeds; }
private List<Domain.Socioboard.Domain.MongoFacebookFeed> AddFacebookFeeds(string UserId, FacebookClient fb, dynamic profile) { List<Domain.Socioboard.Domain.MongoFacebookFeed> lstFacebookFeeds = new List<Domain.Socioboard.Domain.MongoFacebookFeed>(); try { System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls; string nexturl = "v2.0/me/feed?limit=20"; dynamic feeds = fb.Get(nexturl); if (feeds != null) { foreach (var result in feeds["data"]) { MongoFacebookFeed objFacebookFeed = new MongoFacebookFeed(); objFacebookFeed.Type = "fb_feed"; try { objFacebookFeed.UserId = UserId; } catch { } try { objFacebookFeed.ProfileId = profile["id"].ToString(); } catch { } try { objFacebookFeed.Id = MongoDB.Bson.ObjectId.GenerateNewId(); } catch { } objFacebookFeed.FromProfileUrl = "http://graph.facebook.com/" + result["from"]["id"] + "/picture?type=small"; objFacebookFeed.FromName = result["from"]["name"].ToString(); objFacebookFeed.FromId = result["from"]["id"].ToString(); objFacebookFeed.FeedId = result["id"].ToString(); objFacebookFeed.FeedDate = DateTime.Parse(result["created_time"].ToString()).ToString("yyyy/MM/dd HH:mm:ss"); objFacebookFeed.FbComment = "http://graph.facebook.com/" + result["id"] + "/comments"; objFacebookFeed.FbLike = "http://graph.facebook.com/" + result["id"] + "/likes"; try { objFacebookFeed.Picture = result["picture"].ToString(); } catch { } string message = string.Empty; int lstfbcount = 0; if (lstfbcount < 25) { try { if (result["message"] != null) { message = result["message"]; lstfbcount++; } } catch (Exception ex) { try { if (result["description"] != null) { message = result["description"]; lstfbcount++; } } catch (Exception exx) { try { if (result["story"] != null) { message = result["story"]; lstfbcount++; } } catch (Exception exxx) { message = string.Empty; } } } } if (message == null) { message = ""; } objFacebookFeed.FeedDescription = message; objFacebookFeed.EntryDate = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss"); MongoRepository mongorepo = new MongoRepository("MongoFacebookFeed"); mongorepo.Add<MongoFacebookFeed>(objFacebookFeed); AddFbPostComments(objFacebookFeed.FeedId, fb, UserId); } } } catch (Exception ex) { logger.Error(ex.Message); } return lstFacebookFeeds; }