Breaking Changes
This version contains breaking changes specially because of naming improvements :
- LoggedUser =>
AuthenticatedUser.
The class and interface are now
AuthenticatedUser and
IAuthenticatedUser.
To get the authenticated user please do the same as before :
var authenticatedUser = User.GetAuthenticatedUser();
- TokenRateLimits =>
CredentialsRateLimits
- TokenRateLimit =>
EndpointRateLimits
- Favourites =>
Favorites
- IFilteredStream.MatchingTweetAndLocationReceived have been removed (see more).
- Settings.ShowDebug does no longer exist as all the information it provided are now available in theTweetinviEvents.
Tweet
- Updated TweetLength calculation to match the new Twitter calculation.
- You now have access to the unretweet endpoint.
var success = = Tweet.UnRetweet(tweet);
// ORvar tweet = Tweet.GetTweet(...);
tweet.UnRetweet();
- User.GetFavorites can now take optional parameters.
User.GetFavoritedTweets("tweetinviapi", new GetUserFavoritesParameters()
{
MaximumNumberOfTweetsToRetrieve = 10,
IncludeEntities = true,
SinceId = 42,
MaxId = 4242
});
Filtered Streams
The matching mechanism has been improved to analyze all the different tweet fields that are used by the Twitter Stream API to filter tweets.
MatchOn
FilteredStream now have a new
MatchOn property that specify which fields need to be analyzed to match Tweets. In Tweetinvi <= 0.9.10.2, the matching process only considered the
Text property.
In this new version, Tweetinvi matches with ALL the fields by default (
MatchOn.Everything).
// Match only on the Tweet Text or any of the entities of the tweet,
fs.MatchOn = MatchOn.TweetText | MatchOn.AllEntities;
MatchingTweetReceived
MatchingTweetReceived event args now includes all the matching information that are used by Tweetinvi to detect if a Tweet is matching or not.
var tracks = args.MatchingTracks;
var followers = args.MatchingFollowers; // newvar locations = args.MatchingLocations; // new
The event args now also includes a new
MatchOn property that let you know which fields of the Tweet have been used to match the tweet.
Therefore if
args.MatchOn == MatchOn.UrlEntities it means that the tweet has been matched on a url but not via the text.
MatchingTweetAndLocationReceived
This event has been deleted because you can now access all the information in
MatchingTweetReceived as explained above.
Rate Limits
TwitterQuery now includes 2 new fields that are
QueryRateLimits and
CredentialsRateLimits.
This can be quite useful when registering the
TweetinviEvents.
Videos Upload
- Videos are now automatically uploaded in chunks of 2 MB. This simplify the upload of videos > 5 MB.
Other improvements
- Improved the models documentation.
- Improved error handling.
- UnBlockUser is now accessible from the
AuthenticatedUser as well as the static User class.
var success = User.UnBlockUser("bidochon");
// ORvar authenticatedUser = User.GetAuthenticatedUser();
authenticatedUser.UnBlockUser("bidochon");
- ITrends now includes the
tweet_volume field/
Bug Fixes
- Fixed potential deadlock when using tweetinvi async functions.
- PublishTweet/Message failed when used with a mix of special characters.
- Tweet.GetTweets correctly returns collection with a single matching element.