From a9c391efd5f0f73b5374dcfd807cdf59ed663e6b Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Fri, 20 May 2016 21:34:09 -0400 Subject: Now ignoring retweets as they aren't really mentions --- ebooks.cpp | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) (limited to 'ebooks.cpp') diff --git a/ebooks.cpp b/ebooks.cpp index 593f2fe..aa690c2 100644 --- a/ebooks.cpp +++ b/ebooks.cpp @@ -47,26 +47,29 @@ int main(int argc, char** args) client.setUserStreamNotifyCallback([&] (twitter::notification n) { if (n.getType() == twitter::notification::type::tweet) { - std::string original = n.getTweet().getText(); - std::string canonical; - std::transform(std::begin(original), std::end(original), std::back_inserter(canonical), [] (char ch) { - return std::tolower(ch); - }); - - if (canonical.find("@rawr_ebooks") != std::string::npos) + if (!n.getTweet().isRetweet()) { - std::string doc = "@" + n.getTweet().getAuthor().getScreenName() + " "; + std::string original = n.getTweet().getText(); + std::string canonical; + std::transform(std::begin(original), std::end(original), std::back_inserter(canonical), [] (char ch) { + return std::tolower(ch); + }); + + if (canonical.find("@rawr_ebooks") != std::string::npos) { - std::lock_guard stats_lock(stats_mutex); - doc += stats->randomSentence(140 - doc.length()); - doc.resize(140); - } + std::string doc = "@" + n.getTweet().getAuthor().getScreenName() + " "; + { + std::lock_guard stats_lock(stats_mutex); + doc += stats->randomSentence(140 - doc.length()); + doc.resize(140); + } - twitter::tweet tw; - twitter::response resp = client.updateStatus(doc, tw, n.getTweet()); - if (resp != twitter::response::ok) - { - std::cout << "Twitter error while tweeting: " << resp << std::endl; + twitter::tweet tw; + twitter::response resp = client.updateStatus(doc, tw, n.getTweet()); + if (resp != twitter::response::ok) + { + std::cout << "Twitter error while tweeting: " << resp << std::endl; + } } } } -- cgit 1.4.1