gpt4 book ai didi

node.js - Twitter 的 Node 回复脚本实际上并未回复

转载 作者:太空宇宙 更新时间:2023-11-04 00:36:00 24 4
gpt4 key购买 nike

此 Twitter 脚本当前可以在选定用户发推文后向其发送推文,但它不会在推文下方实际回复,而是将其作为独立的新推文发布。我怎样才能让它真正回复而不是发一条新推文?我正在使用 Twit API:https://github.com/ttezel/twit

这是我所拥有的:

    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!");
}
}
}

最佳答案

为了使用 Twitter API 在推文对话中显示回复,您需要以下内容:

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

还需要 tweet 状态中的参数 in_reply_to_status_id。请参阅下面的代码更新,它现在应该保留对话:

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!");
}
}
}
}

关于node.js - Twitter 的 Node 回复脚本实际上并未回复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39008784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com