public void Reply(string tweetMessage, int minDelay, int maxDelay) { //Login(); List<string> lstTemp = new List<string>(); //if (true) try { TwitterDataScrapper.StructTweetIDs TweeetData = new TwitterDataScrapper.StructTweetIDs(); if (!IsLoggedIn) { Login(); } if (IsNotSuspended) { if (IsLoggedIn) { int counter_Reply = 0; //foreach (TwitterDataScrapper.StructTweetIDs item in static_lst_Struct_TweetData) //{ // List_of_struct_Keydatafrom_tweetData_list.Enqueue(item); //TweeetData = List_of_struct_Keydatafrom_tweetData_list.Dequeue(); while (que_ReplyMessages.Count > 0) { int delay = 10 * 1000; int counter = 0; try { delay = RandomNumberGenerator.GenerateRandom(minDelay, maxDelay); } catch (Exception ex) { GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> Reply()-- delay --> " + ex.Message, Globals.Path_TweetingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> TweetAccountManager -- Reply() -- " + Username + " --> " + ex.Message, Globals.Path_TweetAccountManager); } // Code for Sending unique Reply // By Puja lock (locker_que_ReplyTweetMessage) { //if (IsreplyUniqueTweet) { if (que_ReplyMessages.Count > 0) { try { tweetMessage = que_ReplyMessages.Dequeue(); } catch (Exception ex) { GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> Reply()-- locker_que_ReplyTweetMessage --> " + ex.Message, Globals.Path_TweetingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> TweetAccountManager -- Reply()-- locker_que_ReplyTweetMessage -- " + Username + " --> " + ex.Message, Globals.Path_TweetAccountManager); } } else { Log("[ " + DateTime.Now + " ] => [ All Loaded Tweet Messages Used ]"); //break; } } //Code by Puja #region Code for Reply Per Tweet //if (IsReplyPerTweet) //{ // if (lstTemp.Count == 0) // { // foreach (string item in que_ReplyMessages) // { // lstTemp.Add(item); // } // } // if (counter > lstTemp.Count - 1) // { // counter = 0; // } // tweetMessage = lstTemp[counter]; // counter++; //} #endregion } lock (locker_que_keywyordStructData) { if (List_of_struct_Keydatafrom_tweetData_list.Count > 0) { try { TweeetData = List_of_struct_Keydatafrom_tweetData_list.Dequeue(); } catch (Exception ex) { GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> Reply()-- locker_que_ReplyTweetMessage --> " + ex.Message, Globals.Path_TweetingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> TweetAccountManager -- Reply()-- locker_que_ReplyTweetMessage -- " + Username + " --> " + ex.Message, Globals.Path_TweetAccountManager); } } else { TwitterDataScrapper tweetScrapper = new TwitterDataScrapper(); TweetAccountManager.static_lst_Struct_TweetData = tweetScrapper.GetTweetData(ReplyKeyword); foreach (TwitterDataScrapper.StructTweetIDs item in TweetAccountManager.static_lst_Struct_TweetData) { TweetAccountManager.List_of_struct_Keydatafrom_tweetData_list.Enqueue(item); } TweeetData = List_of_struct_Keydatafrom_tweetData_list.Dequeue(); } } if (!ReplyPerDay) { if (counter_Reply >= noOfRetweets) { Log("[ " + DateTime.Now + " ] => [ Finished Replying with : " + Username + " ]"); Log("------------------------------------------------------------------------------------------------------------------------------------------"); break; } } else if (ReplyPerDay) { if (AlreadyReply >= NoOFReplyPerDay) { Log("[ " + DateTime.Now + " ] => [ Already Replied " + AlreadyReply + " ]"); break; } } //if (counter_Reply >= noOfRetweets) //{ // //Log("Finished Replying with : " + Username); // break; //} string tweetStatus; tweeter.Reply(ref globusHttpHelper, pgSrc_Profile, postAuthenticityToken, TweeetData.ID_Tweet, TweeetData.username__Tweet_User, tweetMessage, out tweetStatus); if (tweetStatus == "posted") { counter_Reply++; AlreadyReply++; clsDBQueryManager DataBase = new clsDBQueryManager(); string dbTweetMessage = string.Empty; try { dbTweetMessage = StringEncoderDecoder.Encode(TweeetData.wholeTweetMessage); } catch { } DataBase.InsertMessageData(Username, "Reply", TweeetData.ID_Tweet_User, dbTweetMessage); Log("[ " + DateTime.Now + " ] => [ >> Replied : " + counter_Reply + " : " + tweetMessage + " by " + Username + " ]"); GlobusFileHelper.AppendStringToTextfileNewLine( tweetMessage + " by " + Username, Globals.path_ReplyInformation); } else { Log("[ " + DateTime.Now + " ] => [ >>Couldn't Reply >> " + tweetMessage + " by " + Username + " ]"); //GlobusFileHelper.AppendStringToTextfileNewLine(Username + ":" + Password + ":" + proxyAddress + ":" + proxyPort + ":" + proxyUsername + ":" + proxyPassword, Globals.path_FailedToFollowAccounts); } Log("[ " + DateTime.Now + " ] => [ Reply Delayed for " + delay + " Seconds ]"); Thread.Sleep(delay * 1000); if (ReplyPerDay) { if (AlreadyReply >= NoOFReplyPerDay) { Log("[ " + DateTime.Now + " ] => [ Finished Replying with : " + Username + " ]"); Log("------------------------------------------------------------------------------------------------------------------------------------------"); break; } } else if (que_ReplyMessages.Count <= 0) { Log("[ " + DateTime.Now + " ] => [ Finished Replying with : " + Username + " ]"); Log("------------------------------------------------------------------------------------------------------------------------------------------"); break; } } //Log("Finished Replying with : " + Username); } else { Log("[ " + DateTime.Now + " ] => [ Couldn't log in with " + Username + " ]"); GlobusFileHelper.AppendStringToTextfileNewLine(Username + ":" + Password + ":" + proxyAddress + ":" + proxyPort + ":" + proxyUsername + ":" + proxyPassword, Globals.path_FailedLoginAccounts); } } else { Log("[ " + DateTime.Now + " ] => [ " + Username + ">> Account Suspended ]"); } } catch (Exception ex) { GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> Reply() --> " + ex.Message, Globals.Path_TweetingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> TweetAccountManager -- Reply() -- " + Username + " --> " + ex.Message, Globals.Path_TweetAccountManager); } }