Example #1
0
        public bool AddShareathonPost(SharethonGroupPost shareathon)
        {
            bool IsSuccess = false;

            //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.
                    try
                    {
                        session.Save(shareathon);
                        transaction.Commit();
                        IsSuccess = true;
                        return(IsSuccess);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.StackTrace);
                        return(IsSuccess);
                    }
                } //End Transaction
            }     //End Session
        }
 public GroupPostDetails(SharethonGroupPost _SharethonGroupPost, int postCount)
 {
     this._SharethonGroupPost = _SharethonGroupPost;
     this.postCount           = postCount;
 }
Example #3
0
        public void ShareFeedonGroup(string fbAccesstoken, string FeedId, string pageId, string message,
                                     string fbgroupId, int time, string faceaccountId, double lastupdatetime, string Facebooknameid)
        {
            var lstPost = new List <string>();
            var lstCout = 0;
            var feedid  = FeedId.TrimEnd(',').Split(',');
            var grpid   = Facebooknameid.TrimEnd(',').Split(',');
            var r       = new Random();
            var length  = feedid.Length;
            var objSharethonGroupPost = new SharethonGroupPost();
            var mongoRepository       = new MongoRepository("SharethonGroupPost");

            while (length >= lstCout)
            {
                var i = r.Next(0, length - 1);
                if (!lstPost.Contains(feedid[i]))
                {
                    var postId = feedid[i];
                    lstPost.Add(feedid[i]);
                    lstCout++;
                    foreach (var item in grpid)
                    {
                        var groupData = Regex.Split(item, "<:>");

                        var postData = mongoRepository.Find <SharethonGroupPost>(t =>
                                                                                 t.Facebookgroupid.Equals(groupData[1]) && t.PostId.Equals(postId));

                        var task = Task.Run(async() => await postData);

                        var count = task.Result.Count;

                        var link = "https://www.facebook.com/" + pageId + "/posts/" + feedid[i];

                        try
                        {
                            if (count < 1)
                            {
                                //  dynamic output = fb.Post("v2.7/" + grpdata[1] + "/feed", args);
                                try
                                {
                                    var response = FacebookApiHelper.PublishPostOnPage(fbAccesstoken, groupData[1], string.Empty,
                                                                                       string.Empty, link);
                                    if (response.Contains("id"))
                                    {
                                        GroupapiHitsCount++;
                                    }
                                }
                                catch (Exception)
                                {
                                    GroupapiHitsCount = GroupMaxapiHitsCount;
                                }

                                objSharethonGroupPost.Id = ObjectId.GenerateNewId();
                                objSharethonGroupPost.Facebookaccountid = faceaccountId;
                                objSharethonGroupPost.Facebookgroupid   = groupData[1];
                                objSharethonGroupPost.Facebookgroupname = groupData[0];
                                objSharethonGroupPost.PostId            = feedid[i];
                                objSharethonGroupPost.PostedTime        = SBHelper.ConvertToUnixTimestamp(DateTime.UtcNow);
                                mongoRepository.Add(objSharethonGroupPost);
                            }
                        }
                        catch (Exception ex)
                        {
                            GroupapiHitsCount = GroupMaxapiHitsCount;
                            Console.WriteLine(ex.Message);
                        }
                    }
                    Thread.Sleep(1000 * 50);
                }

                Thread.Sleep(1000 * 60 * time);
            }
        }