2017-06-24 10 views
0

私は、特定の単語のツイートを検索して返信する基本的なTwitterボットを作っています。Twitter bot with node.js filter retweets

問題は、それがツイートとリツイートの両方に返信することですが、ツイートのみに返信したいのです。ストリームからリッツをフィルタリングするにはどうすればよいですか?

私は{ track: 'hello -filter:retweets'}を試しましたが、うまくいきませんでした。私はまた、ボットのような小さなさえずりを書いた

console.log('The bot is starting'); 
 

 

 
var ntwitter = require('ntwitter'); 
 

 
var bot = new ntwitter({ 
 
    consumer_key: '---', 
 
    consumer_secret: '---', 
 
    access_token_key: '---', 
 
    access_token_secret: '---' 
 
}); 
 

 
var callback = function handleError(error) { 
 
    if (error) { 
 
    console.error('response status:', error.statusCode); 
 
    console.error('data:', error.data); 
 
    } 
 
}; 
 

 
function startStreaming() { 
 

 
    bot.stream('statuses/filter', { track: 'hello'}, function(stream) { 
 

 
    console.log('Listening for Tweets...'); 
 

 
    stream.on('data', function(tweet) { 
 

 
     if (tweet.text.match(/hello/)) { 
 

 
      bot.updateStatus('@' + tweet.user.screen_name + 'hello' , {in_reply_to_status_id: tweet.id_str} , callback); 
 
      console.log("done") 
 
     } 
 
     }); 
 

 
    }); 
 
} 
 

 

 
startStreaming();

答えて