| Commit message (Collapse) | Author | Age | Lines |
| |
|
|
|
|
|
| |
Some structs still have xml in their name but meh, at least that's not
visible to the user.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The outermost entities object only contains the url of the compat tweet,
the one linking to /i/web/status/[...]
The inner entities object, inside the "extended_tweet", is the one that
contains the quoted tweet url that we're supposed to replace.
But expand_entities() assumed that the quoted_status object would be
next to entities, which doesn't apply in the case of extended tweets.
So now it gets an extra parameter to look for entities.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Twitter streams send newlines to indicate that they are alive. The
twitter_http_stream() function processes those and sets the ponged
flag so that the whole connection doesn't timeout.
That function is used to handle both user stream and filter stream.
If the user stream is dead (not sending whitespace) but the filter
stream isn't, the latter keeps the connection alive while the main
twitter channel is completely dead.
This commit only sets the ponged flag for the user stream. This has
the side effect of not detecting if the filter stream dies - but that
didn't work before, anyway. In the future the whole stream connection
management should be revamped - for example stream disconnections
shouldn't take the whole account down, especially not filter streams.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Documentation over here:
https://dev.twitter.com/overview/api/upcoming-changes-to-tweets
This is already live in twitter, can be tested by including an
attachment from twitter web and then fill 140 characters.
Should be sanely backwards compatible with twitter clones - i'd expect
them to ignore the tweet_mode=extended parameter in REST queries, and
just not deliver extended_tweet objects / full_text strings at all.
|
|
|
|
|
|
| |
Fixes trac ticket 1254
Kinda dirty but better than keeping it broken.
|
|
|
|
|
|
|
| |
Just freeing the list on logout and when removing items from them.
Also remove the "checking mutes" debug which is disproportionately noisy
compared to the rest of the protocol.
|
|
|
|
|
|
|
| |
Twitter doesn't error if you mute the same user multiple times.
Also, correct signedness of the stringified user ids. bitlbee keeps them as
unsigned even if the json library uses signed for integers...
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Mostly minor rare leaks that happen in error conditions, and one
dereference before null check in twitter_logout (the null check is
probably the wrong one there, but it doesn't hurt to keep it)
|
|
|
|
|
|
|
| |
By asking the server for the username.
Storing the username somewhere would have made sense, but this command
isn't going to be used very often, so, whatever.
|
|
|
|
|
| |
Difficult because there's no bee_user struct pointing at the user themselves
so instead just fake one for very limited use.
|
|
|
|
| |
Also, fix bug in parsing of entities in DMs.
|
|
|
|
|
|
| |
Commit eb4ad8d (a merge commit, yes) changed it to _last_tweet and
missed one of the three. Not entirely sure if wilmer's fault, could be
mine when I did the merge of his merge on my side. Whatever.
|
|
|
|
|
|
|
|
|
|
|
| |
- Show version as part of the initial message of &bitlbee
- Use g_strerror() to show actual errors when saving xml configs
- Only show "The nick is (probably) not registered" for ENOENT, use
g_strerror() for the rest of OS errors when loading xml configs
- Show "Protocol not found: <name>" when find_protocol() returns null,
useful when the user uninstalls a plugin accidentally.
- Suggest the user to check the system clock when getting error 401 from
the twitter stream (other REST endpoints show a better error message)
|
|
|
|
|
|
|
| |
Used uncrustify, with the configuration file in ./doc/uncrustify.cfg
Commit author set to "Indent <please@skip.me>" so that it's easier to
skip while doing git blame.
|
|
|
|
|
|
| |
This reverts commit ce402b20d82ec323e6bd5e306de934773590742d.
See discussion in PR #10 for more details.
|
|
|
|
|
|
|
|
|
|
|
| |
Allow users to specify how tweets should be displayed
3 new settings are available to set how tweets are displayed:
- twitter_format_string for normal tweets
- retweet_format_string for retweets
- reply_format_string for replies
For full documentation see the help files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Filter group chats allow for the ability to read the tweets of select
users without actually following the users, and/or track keywords or
hashtags. A filter group chat can have multiple users, keywords, or
hashtags. These users, keywords, or hashtags can span multiple group
chats. This allows for rather robust filter organization.
The underlying structure for the filters is based on linked list, as
using the glib hash tables requires >= glib-2.16 for sanity. Since the
glib requirement of bitlbee is only 2.14, linked list are used in order
to prevent an overly complex implementation.
The idea for this patch was inspired by Artem Savkov's "Twitter search
channels" patch.
In order to use the filter group chats, a group chat must be added to
the twitter account. The channel room name is either follow:username,
track:keyword, and/or track:#hashtag. Multiple elements can be used by
separating each element by a semicolon.
|
| |
|
|
|
|
|
| |
This works by setting the last_tweet hidden account setting to the ID of
the last shown tweet.
|
|
|
|
|
|
| |
Fixes a few minor bugs with users who have uppercase characters in nicks
(see trac ticket 1138). Most notably, the "follow" command showing no
feedback that a user was followed
|
|
|
|
|
|
| |
Few BitlBee-specific diffs now. Annoyingly need to link to libm now for the
use of the function pow() since the lib now does its own number parsing...
|
| |
|
|\
| |
| |
| |
| |
| | |
XML-formatted user configs from disk I/O so we can try to start using other
mechanisms to store them (a REST API or something, for example).
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
my copyright mentions since some were getting pretty stale. Left files not
touched since before 2012 alone so that this change doesn't touch almost
EVERY source file.
|
| |
| |
| |
| |
| | |
API. A full list of diffs would be helpful, guys...
|
| |
| |
| |
| |
| | |
ways.
|
| | |
|
| |
| |
| |
| |
| | |
duplicate-tweet issues in non-streaming mode.
|
| |
| |
| |
| |
| | |
txs_free() to the right place - fixes a memory leak.
|
| |
| |
| |
| |
| | |
"no news is good news" can be a little confusing.
|
| |
| |
| |
| |
| | |
still using a decimal scanf format string. Messy code duplication. :-(
|
| |
| |
| |
| |
| | |
really should be enough.
|
| |
| |
| |
| |
| | |
you REALLY need to set G_SLICE=always-malloc. Argh!
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
like tweets but that's what you get with bad settings.. Also, don't show
DMs from ourselves.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
also for stream deduplication. Also, drop tweets from unknown people unless
fetch_mentions is set. The stream will feed us that spam either way but not
everyone wants to see it.
Last, fixing a bug where in streaming mode, per-user last tweet times were
no longer getting tracked.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
acknowledged, using this for Twitter streams and MSN so far.
|
| | |
|
| |
| |
| |
| |
| | |
those free()s were commented out?).
|