在 .net Core 控制台应用程序中使用 Twitter API 的流

问题描述 投票:0回答:0

我正在尝试使用 Twitter API 来监听与某个关键字匹配的新推文,但我似乎无法让它工作。我已经能够使用我的 API 凭据成功推送和阅读推文,所以我知道我的凭据是有效的。

这是我正在使用的代码:

using Tweetinvi;
using Tweetinvi.Models;
using Tweetinvi.Parameters;

var consumerKey = "Ef5KN4YsHyEPwcI77JjoPRsTw";
var consumerSecret = "mepw2bvbhaS7BqDlBupXtGrW2f0YBwebxVX932J43PxoSe6CYb";
var accessToken = "1154133280914059271-MLwk85DJekpHWYY2inGQYOF1tfeqFP";
var accessTokenSecret = "MsskhAdaRpDCUR07CgxT8r5vgNMp1X2Ohxxt826mn4slw";

var credentials = new TwitterCredentials(consumerKey, consumerSecret, accessToken, accessTokenSecret);
var client = new TwitterClient(credentials);

var stream = client.Streams.CreateFilteredStream();
stream.AddTrack("Hello, specific tweet!");

stream.MatchingTweetReceived += (sender, args) =>
{
    Console.WriteLine(args.Tweet.Text);
};


stream.StartMatchingAnyConditionAsync().ConfigureAwait(false);


//i can push
client.Tweets.PublishTweetAsync(new PublishTweetParameters("Hello, specific tweet!"));

//i can read
var userTimeline = await client.Timelines.GetUserTimelineAsync("Anton99836536");
var number = userTimeline.Length;
Console.WriteLine(number);

foreach (var item in userTimeline)
{
    Console.WriteLine(item.Text);
}

//i am authenticated
var user = await client.Users.GetAuthenticatedUserAsync();
Console.WriteLine(user);

当我运行这段代码时,它似乎连接到 Twitter API,但我从未看到任何推文被打印到控制台,即使我知道有匹配关键字“你好,特定推文!”的推文。

有人能帮我弄清楚我做错了什么以及我如何使用 Twitter API 收听新推文吗?

附言 我使用 .net core 6 控制台和 TweetinviAPI" Version="5.0.4"

我尝试获取符合我的过滤器的消息。

.net-core twitter stream console tweetinvi
© www.soinside.com 2019 - 2024. All rights reserved.