public void addFacebookInsightStats(FacebookInsightStats fbinsightstats) { using (NHibernate.ISession session = SessionFactory.GetNewSession()) { using (NHibernate.ITransaction transaction = session.BeginTransaction()) { session.Save(fbinsightstats); transaction.Commit(); } } }
public void getFanPageLikesByGenderAge(string pageId, Guid UserId, int days) { try { string strAge = "https://graph.facebook.com/" + pageId + "/insights/page_fans_gender_age"; FacebookClient fb = new FacebookClient(); FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); FacebookAccount acc = fbAccRepo.getUserDetails(pageId); fb.AccessToken = acc.AccessToken; /////////////////////////////////////////////////// // string codedataurlgraphic = objAuthentication.RequestUrl(strAge, strToken); //if (txtDateSince.Text != "") // strAge = strAge + "&since=" + txtDateSince.Text; //if (txtDateUntill.Text != "") // strAge = strAge + "&until=" + txtDateUntill.Text; JsonObject outputreg = (JsonObject)fb.Get(strAge); JArray data = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); FacebookInsightStats objFbi = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); foreach (var item in data) { var values = item["values"]; foreach (var age in values) { var ageVal = age["value"]; var agevalarray = ageVal.ToString().Substring(1, ageVal.ToString().Length - 2).Split(','); for (int i = 0; i < agevalarray.Count(); i++) { var genderagearray = agevalarray[i].Split(':'); var gender = genderagearray[0].Split('.'); objFbi.AgeDiff = gender[1].Trim(); objFbi.Gender = gender[0].Trim(); objFbi.EntryDate = DateTime.Now; objFbi.FbUserId = pageId; objFbi.Id = Guid.NewGuid(); objFbi.PeopleCount = int.Parse(genderagearray[1]); objFbi.UserId = UserId; objFbi.CountDate = age["end_time"].ToString(); if (!objfbiRepo.checkFacebookInsightStatsExists(pageId, UserId, age["end_time"].ToString(), gender[1].Trim())) objfbiRepo.addFacebookInsightStats(objFbi); else objfbiRepo.updateFacebookInsightStats(objFbi); } // strFbAgeArray=strFbAgeArray+ } } } catch (Exception Err) { Console.Write(Err.StackTrace); } }
/// <addFacebookInsightStats> /// Add a new FacebbokinsightStats in database. /// </summary> /// <param name="fbinsightstats">Set Values in a FacebookInsightStats Class Property and Pass the same Object of FacebookInsightStats Class.(Domain.FacebookInsightStats)</param> public void addFacebookInsightStats(FacebookInsightStats fbinsightstats) { //Creates a database connection and opens up a session using (NHibernate.ISession session = SessionFactory.GetNewSession()) { //After Session creation, start Transaction. using (NHibernate.ITransaction transaction = session.BeginTransaction()) { //Proceed action, to save data. session.Save(fbinsightstats); transaction.Commit(); }//End Transaction }//End session }
public void getPageImpresion(string pageId, Guid UserId, int days) { try { string strAge = "https://graph.facebook.com/" + pageId + "/insights/page_impressions/day"; FacebookClient fb = new FacebookClient(); FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); FacebookAccount acc = fbAccRepo.getUserDetails(pageId); fb.AccessToken = acc.AccessToken; JsonObject outputreg = (JsonObject)fb.Get(strAge); JArray data = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); FacebookInsightStats objFbi = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); foreach (var item in data) { var values = item["values"]; foreach (var age in values) { objFbi.EntryDate = DateTime.Now; objFbi.FbUserId = pageId; objFbi.Id = Guid.NewGuid(); objFbi.PageImpressionCount = int.Parse( age["value"].ToString()); objFbi.UserId = UserId; objFbi.CountDate = age["end_time"].ToString(); if (!objfbiRepo.checkFbIPageImprStatsExists(pageId, UserId, age["end_time"].ToString())) objfbiRepo.addFacebookInsightStats(objFbi); else objfbiRepo.updateFacebookInsightStats(objFbi); } } } catch (Exception Err) { Console.Write(Err.StackTrace); } }
public void getLocation(string pageId, Guid UserId, int days) { try { string strStories = "https://graph.facebook.com/" + pageId + "/insights/page_fans_country"; FacebookClient fb = new FacebookClient(); FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); FacebookAccount acc = fbAccRepo.getUserDetails(pageId); fb.AccessToken = acc.AccessToken; JsonObject outputreg = (JsonObject)fb.Get(strStories); JArray data = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); FacebookInsightStats objFbi = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); foreach (var item in data) { var values = item["values"]; foreach (var loc in values) { var locVal = loc["value"]; var locvalarray = locVal.ToString().Substring(1, locVal.ToString().Length - 2).Split(','); for (int i = 0; i < locvalarray.Count(); i++) { var locationarr = locvalarray[i].Split(':'); objFbi.EntryDate = DateTime.Now; objFbi.FbUserId = pageId; objFbi.Id = Guid.NewGuid(); objFbi.Location = locationarr[0].ToString(); objFbi.PeopleCount = int.Parse(locationarr[1].ToString()); objFbi.UserId = UserId; objFbi.CountDate = loc["end_time"].ToString(); if (!objfbiRepo.checkFbILocationStatsExists(pageId, UserId, loc["end_time"].ToString(), locationarr[0].ToString())) objfbiRepo.addFacebookInsightStats(objFbi); else objfbiRepo.updateFacebookInsightStats(objFbi); } } } } catch (Exception Err) { Console.Write(Err.StackTrace); } }
//public void getPageImpresion(string pageId, Guid UserId, int days) //{ // try // { // string strAge = "https://graph.facebook.com/" + pageId + "/insights/page_impressions/day"; // FacebookClient fb = new FacebookClient(); // FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); // FacebookAccount acc = fbAccRepo.getUserDetails(pageId); // fb.AccessToken = acc.AccessToken; // JsonObject outputreg = (JsonObject)fb.Get(strAge); // JArray data = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); // FacebookInsightStats objFbi = new FacebookInsightStats(); // FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); // foreach (var item in data) // { // var values = item["values"]; // foreach (var age in values) // { // objFbi.EntryDate = DateTime.Now; // objFbi.FbUserId = pageId; // objFbi.Id = Guid.NewGuid(); // objFbi.PageImpressionCount = int.Parse(age["value"].ToString()); // objFbi.UserId = UserId; // objFbi.CountDate = age["end_time"].ToString(); // if (!objfbiRepo.checkFbIPageImprStatsExists(pageId, UserId, age["end_time"].ToString())) // objfbiRepo.addFacebookInsightStats(objFbi); // else // objfbiRepo.updateFacebookInsightStats(objFbi); // } // } // } // catch (Exception Err) // { // Console.Write(Err.StackTrace); // } //} public void getPageImpresion(string pageId, Guid UserId, int days) { JsonObject outputreg = new JsonObject(); try { int count = 0; string nextpage = string.Empty; string prevpage = string.Empty; string strAge = string.Empty; if (count == 0) { strAge = "https://graph.facebook.com/" + pageId + "/insights/page_impressions/day"; } else { strAge = prevpage; } FacebookClient fb = new FacebookClient(); FacebookAccountRepository fbAccRepo = new FacebookAccountRepository(); for (int i = 0; i < 11; i++) { if (count > 0) { strAge = prevpage; } FacebookAccount acc = fbAccRepo.getUserDetails(pageId); fb.AccessToken = acc.AccessToken; outputreg = (JsonObject)fb.Get(strAge); JArray data = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); //code written by abhay JObject data1 = (JObject)JsonConvert.DeserializeObject(outputreg["paging"].ToString()); if (count == 0) { prevpage = data1["previous"].ToString(); nextpage = data1["next"].ToString(); //End of block FacebookInsightStats objFbi = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); foreach (var item in data) { var values = item["values"]; foreach (var age in values) { //objFbi.EntryDate = DateTime.Now; objFbi.EntryDate = Convert.ToDateTime(age["end_time"].ToString()); objFbi.FbUserId = pageId; objFbi.Id = Guid.NewGuid(); objFbi.PageImpressionCount = int.Parse(age["value"].ToString()); objFbi.UserId = UserId; objFbi.CountDate = age["end_time"].ToString(); if (!objfbiRepo.checkFbIPageImprStatsExists(pageId, UserId, age["end_time"].ToString())) objfbiRepo.addFacebookInsightStats(objFbi); else objfbiRepo.updateFacebookInsightStats(objFbi); } } count++; } else { count++; prevpage = data1["previous"].ToString(); // nextpage = data1["next"].ToString(); //End of block FacebookInsightStats objFbi = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo = new FacebookInsightStatsRepository(); foreach (var item in data) { var values = item["values"]; foreach (var age in values) { //objFbi.EntryDate = DateTime.Now; objFbi.EntryDate = Convert.ToDateTime(age["end_time"].ToString()); objFbi.FbUserId = pageId; objFbi.Id = Guid.NewGuid(); objFbi.PageImpressionCount = int.Parse(age["value"].ToString()); objFbi.UserId = UserId; objFbi.CountDate = age["end_time"].ToString(); if (!objfbiRepo.checkFbIPageImprStatsExists(pageId, UserId, age["end_time"].ToString())) objfbiRepo.addFacebookInsightStats(objFbi); else objfbiRepo.updateFacebookInsightStats(objFbi); } } } } outputreg = (JsonObject)fb.Get(nextpage); JArray newdata = (JArray)JsonConvert.DeserializeObject(outputreg["data"].ToString()); JObject newdata1 = (JObject)JsonConvert.DeserializeObject(outputreg["paging"].ToString()); FacebookInsightStats objFbi1 = new FacebookInsightStats(); FacebookInsightStatsRepository objfbiRepo1 = new FacebookInsightStatsRepository(); foreach (var item in newdata) { var values = item["values"]; foreach (var age in values) { //objFbi1.EntryDate = DateTime.Now; objFbi1.EntryDate = Convert.ToDateTime(age["end_time"].ToString()); objFbi1.FbUserId = pageId; objFbi1.Id = Guid.NewGuid(); objFbi1.PageImpressionCount = int.Parse(age["value"].ToString()); objFbi1.UserId = UserId; objFbi1.CountDate = age["end_time"].ToString(); if (Convert.ToDateTime(age["end_time"].ToString()) > DateTime.Now) break; if (!objfbiRepo1.checkFbIPageImprStatsExists(pageId, UserId, age["end_time"].ToString())) objfbiRepo1.addFacebookInsightStats(objFbi1); else objfbiRepo1.updateFacebookInsightStats(objFbi1); } } } catch (Exception Err) { Console.Write(Err.StackTrace); } }
public void updateFacebookInsightStats(FacebookInsightStats fbaccount) { throw new NotImplementedException(); }