| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
| |
I found myself copypasting this to jabber. Might as well make it part of
the API.
|
|
|
|
|
|
|
|
|
| |
bee_chat_list_finish is still available as a deprecated function but it
will be removed before the next stable release
It has never been part of any release, just keeping it for a while for
the sake of being polite to the users of the discord plugin who may be
using the experimental chat list branch.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Several protocols can provide a list of existing chatrooms that a user
is able join. This is crucial for the usage of several protocols, most
notably Purple and Facebook.
Plugins wishing to support this extended functionality must implement
the new prpl->chat_list() function. This implemented function will in
most cases send a remote request for the list of chatrooms. Once the
list of chatrooms is obtained, a bee_chat_info_t GSList must be created
and assigned to the im_connection->chatlist field. Then a call to the
bee_chat_list_finish() is needed to display the list to the user.
The chat list is maintained entirely by the plugin, so it is important
to ensure all pointers related to the chat list remain valid until the
chat list is set to NULL. This list is used internally by bitlbee to
calculate indexes, which then allows the user to join a chat with an
index, rather than some random identifier. It also important to ensure
the list is properly freed whenever it is updated, or when the account
is disconnect via the prpl->logout() function.
On the user interface side of things, the 'chat list' subcommand was
recommissioned. For a user to list the existing chat rooms:
chat list <account id>
Afterwards a user can join a chatroom in the list with its index. This
extends the functionality of the 'chat add' subcommand by adding in
support for the exclamation point operator to denote an index.
chat add <account id> !<index> [channel]
|
|
|
|
|
|
|
| |
nick_hint only works when creating new users, it's a no-op after the
user is online. This new function takes care of nick changes after that.
It also helps clean up couple of hacks in irc_im.c \o/
|
|
|
|
|
| |
Just a trivial wrapper over irc_rootmsg(), but will help me to slightly
reduce the ugliness of an unavoidably ugly hack for libpurple.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds an OPT_SELFMESSAGE flag that can be passed to imcb_buddy_msg()
or imcb_chat_msg() to indicate that the protocol knows that the message
being sent is a self message.
This needs to be explicit since the old behavior is to silently drop
these messages, which also removed server echoes.
This commit doesn't break API/ABI, the flags parameters that were added
are all internal (between protocols and UI code)
On the irc protocol side, the situation isn't very nice, since some
clients put these messages in the wrong window. Irssi, hexchat and mirc
get this wrong. Irssi 0.8.18 has a fix for it, and the others have
scripts to patch it.
But meanwhile, there's a "self_messages" global setting that lets users
disable this, or get them as normal messages / notices with a "->"
prefix, which loosely imitates the workaround used by the ZNC
"privmsg_prefix" module.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Saves some messing with g_strdup_printf for the callers, and
flags/sent_at weren't used anyway.
Also check if the mail_notifications setting is enabled
|
| |
|
| |
|
|
|
|
|
|
|
| |
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 allows for users to be declared as being special, which does not
have any specific meaning. The meaning of being special is different
from protocol-to-protocol, which many protocols do not even implement.
This functionality is mainly geared towards a special user state which
only some protocols may actually need to define. For example, with the
third-party Steam plugin, this can be used for denoting a user which is
actively playing a game.
By default, this mode will not actually be used by any plugin. However,
it does default to the half-operator user mode.
|
| |
|
| |
|
|
|
|
|
| |
contact.)
|
|\ |
|
| |
| |
| |
| |
| | |
channel the user can easily /join.
|
|\| |
|
| |
| |
| |
| |
| | |
people as away=Mobile. Bug #462 (and others for other protocols).
|
|/ |
|
|
|
|
|
|
| |
this in the Twitter module to remember the id and timestamp of a contact's
last tweet, which can later be used for simple replies/retweets.
|
| |
|
|
|
|
|
| |
original unstripped version (without ugly underscores, also).
|
| |
|
| |
|
| |
|
|
|
|
|
| |
group channels.
|
| |
|
| |
|
|
|
|
|
| |
in a GSList so that a default config fully compiles again.
|
|
|
|
|
| |
support I could only test this using gdb.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
into a room. More will follow soon.
|
| |
|
|
|
|
|
| |
*_user_free().
|
|
|
|
|
|
|
| |
Some hooks are missing so sending files doesn't work yet. Receiving also
still seems to have some issues. On the plus side, at least the MSN/Jabber
modules work again.
|
|
|
|
|
| |
imcb_nick_hint() is probably still broken.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
send messages. Also started moving stuff out from nogaim.* into bee_* files.
|
|
|
|
|
| |
itself.
|
|
|
|
|
| |
and UI callbacks.
|
|
far.
|