aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/bee.h
Commit message (Collapse)AuthorAgeLines
* Turn purple_chatlist_free() into a imcb_chat_list_free()dequis2016-10-16-0/+1
| | | | | I found myself copypasting this to jabber. Might as well make it part of the API.
* Rename bee_chat_list_finish() to imcb_chat_list_finish()dequis2016-10-16-1/+2
| | | | | | | | | 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.
* Added an interface for the listing of existing chatroomsjgeboski2016-09-19-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]
* Add imcb_buddy_nick_change(), like nick_hint but strongerdequis2016-03-20-0/+1
| | | | | | | 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/
* Add 'log' UI function, to avoid direct calls to irc_rootmsg from nogaimdequis2015-12-01-0/+2
| | | | | Just a trivial wrapper over irc_rootmsg(), but will help me to slightly reduce the ugliness of an unavoidably ugly hack for libpurple.
* IRC self-message support (messages sent by yourself from other clients)dequis2015-10-30-2/+2
| | | | | | | | | | | | | | | | | | | | | | 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.
* Add a per-user version of OPT_NOOTR, BEE_USER_NOOTRdequis2015-10-21-0/+1
|
* Pass 'reason' values around in imcb_chat_remove_buddy/chat_remove_userdequis2015-08-08-1/+1
|
* imcb_notify_email: change parameters to take a format stringdequis2015-05-28-2/+1
| | | | | | | 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
* Gmail notifications support through new imcb_notify_email() APIArtem Savkov2015-05-28-0/+2
|
* fix imcb_buddy_msg signature to take a const messageAntoine Pietri2015-03-01-1/+1
|
* Reindent everything to K&R style with tabsIndent2015-02-20-68/+66
| | | | | | | 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.
* irc-channel: implemented a special mode for show_usersjgeboski2015-01-28-0/+1
| | | | | | | | | | | | | 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.
* Fix incorrect Free Software Foundation addressMatej Cepl2015-01-16-2/+2
|
* Don't use the C++ keyword 'new' as a variable name.Alex Miller2011-12-18-1/+1
|
* First bits of CTCP support to contacts. (Try /CTCP VERSION on a JabberWilmer van der Gaast2010-12-06-0/+2
| | | | | contact.)
* Merging mainline.Wilmer van der Gaast2010-08-24-0/+2
|\
| * Process incoming XMPP groupchat invites in a saner way: Create a temporaryWilmer van der Gaast2010-08-23-0/+2
| | | | | | | | | | channel the user can easily /join.
* | Merge mainline.Wilmer van der Gaast2010-08-21-0/+2
|\|
| * Pass "user is mobile" info coming from OSCAR up to BitlBee and show mobileWilmer van der Gaast2010-08-21-0/+2
| | | | | | | | | | people as away=Mobile. Bug #462 (and others for other protocols).
* | Read incoming MSN status/away messages.Wilmer van der Gaast2010-08-14-0/+1
|/
* Allow protocol modules to keep per-contact protocol-specific data. UseWilmer van der Gaast2010-08-07-0/+1
| | | | | | 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.
* Source documentation update, including a short HACKING file.Wilmer van der Gaast2010-07-28-19/+43
|
* When addressing people in a chatroom, try to translate the nickname to theWilmer van der Gaast2010-07-05-0/+1
| | | | | original unstripped version (without ugly underscores, also).
* Auto joins for chatrooms.Wilmer van der Gaast2010-07-04-0/+3
|
* Restored nick_hint/nick_source functionality.Wilmer van der Gaast2010-06-07-0/+1
|
* Show idle + login time info in /WHOIS (if available).Wilmer van der Gaast2010-06-07-1/+3
|
* Inform the UI about group changes. This is important if the user hasWilmer van der Gaast2010-06-05-0/+1
| | | | | group channels.
* Restore add_* handle_unknown settings.Wilmer van der Gaast2010-06-03-1/+2
|
* Keep track of contact groups in a slightly more efficient way.Wilmer van der Gaast2010-05-09-1/+10
|
* Misc. cleanup. Also updated the Yahoo! module to deal with struct groupchatWilmer van der Gaast2010-05-08-0/+1
| | | | | in a GSList so that a default config fully compiles again.
* Support for receiving chatroom topics. Since I didn't restore named chatroomWilmer van der Gaast2010-05-08-0/+1
| | | | | support I could only test this using gdb.
* Restored imcb_chat_name_hint().Wilmer van der Gaast2010-05-08-0/+1
|
* Restored support for outgoing messages. This code is all so much saner now..Wilmer van der Gaast2010-05-08-0/+1
|
* Support for receiving messages in chatrooms.Wilmer van der Gaast2010-05-08-2/+2
|
* Starting to restore chatroom stuff. Only enough to create and be joinedWilmer van der Gaast2010-05-06-0/+26
| | | | | into a room. More will follow soon.
* Incoming typing notifications.Wilmer van der Gaast2010-04-13-0/+1
|
* Fixed cleanup issues when turning off an account. Also fixed syntax ofWilmer van der Gaast2010-04-12-1/+1
| | | | | *_user_free().
* Including DCC stuff again, with a wonderful extra layer of abstraction.Wilmer van der Gaast2010-04-11-0/+5
| | | | | | | 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.
* Get full names properly. Handling of nick_source setting andWilmer van der Gaast2010-04-04-0/+1
| | | | | imcb_nick_hint() is probably still broken.
* Can receive messages again.Wilmer van der Gaast2010-04-01-0/+1
|
* Cleaned lots of compiler warnings so I can get some signal again.Wilmer van der Gaast2010-04-01-1/+1
|
* Synced the values of some old OPT_* flags with BEE_USER_*.Wilmer van der Gaast2010-04-01-2/+2
|
* Restored "account" root command and restored enough stuff to be able toWilmer van der Gaast2010-03-31-0/+12
| | | | | send messages. Also started moving stuff out from nogaim.* into bee_* files.
* nogaim.c is close to doing something useful again without speaking any IRCWilmer van der Gaast2010-03-31-2/+4
| | | | | itself.
* Start restoring IM-related bits, added bee_user.c with basic functionsWilmer van der Gaast2010-03-29-5/+68
| | | | | and UI callbacks.
* PING and QUIT work now, and adding some files that weren't checked in soWilmer van der Gaast2010-03-26-0/+18
far.