Le script de réponse de noeud pour twitter ne répond pas réellement

Ce script twitter peut actuellement tweeter l’utilisateur sélectionné une fois qu’il tweet, mais au lieu de répondre sous le tweet, il le tweete comme un nouveau tweet autonome. Comment puis-je le faire répondre au lieu de créer un nouveau tweet? J’utilise l’API Twit: https://github.com/ttezel/twit

Voici ce que j’ai

console.log('The bot is starting'); var Twit = require('twit'); var config = require('./config'); var T = new Twit(config); //Setting up a user stream var stream = T.stream('user'); stream.on('tweet', tweetEvent); function tweetEvent(eventMsg) { var replyto = eventMsg.user.screen_name; var text = eventMsg.text; var from = eventMsg.user.screen_name; console.log(replyto + ' '+ from); if (replyto =='other user's handle') { var newtweet = '@' + from + ' Hello!'; tweetIt(newtweet); } } function tweetIt(txt) { var tweet = { status: txt } T.post('statuses/update', tweet, tweeted); function tweeted(err, data, response) { if (err) { console.log("Something went wrong!"); } else { console.log("It worked!"); } } } 

Pour qu’une réponse apparaisse dans la conversation sur Twitter via l’API Twitter, vous avez besoin des éléments suivants:

 // the status update or tweet ID in which we will reply var nameID = tweet.id_str; 

Le paramètre in_reply_to_status_id est également nécessaire dans l’état du tweet . Voir les mises à jour de votre code ci-dessous et il devrait maintenant conserver la conversation:

 console.log('The bot is starting'); var Twit = require('twit'); var config = require('./config'); var T = new Twit(config); //Setting up a user stream var stream = T.stream('user'); stream.on('tweet', tweetEvent); function tweetEvent(tweet) { var reply_to = tweet.in_reply_to_screen_name; var text = tweet.text; var from = tweet.user.screen_name; var nameID = tweet.id_str; // params just to see what is going on with the tweets var params = {reply_to, text, from, nameID}; console.log(params); if (reply_to === 'YOUR_USERNAME') { var new_tweet = '@' + from + ' Hello!'; var tweet = { status: new_tweet, in_reply_to_status_id: nameID } T.post('statuses/update', tweet, tweeted); function tweeted(err, data, response) { if (err) { console.log("Something went wrong!"); } else { console.log("It worked!"); } } } }