aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/jabber/presence.c
Commit message (Collapse)AuthorAgeLines
* Revert "hipchat: Implement their own variant of self-messages [...]"dequis2016-01-21-7/+1
| | | | | | | This reverts commit d11ccbf6ea94264bde8b0f525c4bbedf50de0174. After thinking about this long enough I've decided this is a bad idea, and better wait for the hipchat server to support carbons.
* hipchat: Implement their own variant of self-messages (not working yet)dequis2015-12-16-1/+7
| | | | | | | | | | | | Reuses part of the carbons code, but it's not like it at all. To be able to receive these messages at all, a different cap node whitelisted by them is required. I could have used one of the official clients, but let's try to get things done the right way. This will start working once they make that change in their servers, right now this is still in their ticket backlog. I'm merging this now because it's harmless and nice to have as part of the upcoming release.
* jabber: Fix detection of away state in choose_priority()dequis2015-11-24-1/+1
| | | | | | | | | | | | Thanks to this clang warning: comparison of array 'jd->away_state->code' not equal to a null pointer is always true [-Wtautological-pointer-compare] Although... given how ->code is offset 0, that might have worked sometimes if jd->away_state is null, assuming a compiler that doesn't hate humanity. Sadly, that is not something we can safely assume. I bet gcc saw this and thought "let's optimize your poor soul away".
* Lowering xmpp presence priority on away.Artem Savkov2015-05-28-1/+19
| | | | | When user set's away lower xmpp presence priority by 5 as most clients do, new priority won't go below zero though.
* Reindent everything to K&R style with tabsIndent2015-02-20-134/+117
| | | | | | | 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.
* Misc. cleanup. Also updated the Yahoo! module to deal with struct groupchatWilmer van der Gaast2010-05-08-1/+0
| | | | | in a GSList so that a default config fully compiles again.
* Starting to restore chatroom stuff. Only enough to create and be joinedWilmer van der Gaast2010-05-06-1/+3
| | | | | into a room. More will follow soon.
* Merging mainline.Wilmer van der Gaast2010-03-12-10/+7
|\
| * The Jabber part of the change. Also made representation of not-away a bitWilmer van der Gaast2010-03-06-10/+7
| | | | | | | | | | more consistent. Except for free-for-chat, which is nuts anyway.
* | resource_select now defaults to activity instead of priority. Also, addingWilmer van der Gaast2009-11-19-3/+0
|/ | | | | | | | | a activity_timeout setting. Now, messages to someone who hasn't spoken for a while will be sent to his/her bare JID, usually resulting in a broadcast. This should fix issues with messages sometimes arriving on someone's Crackberry/Android/etc instead of some place s/he's paying attention to. Last, the activity timer is only reset on incoming messages.
* Dropping warnings about unknown JIDs since they're spammy (mostly show upWilmer van der Gaast2008-12-14-4/+6
| | | | | | when the user logs in from mulitple locations) and the irc->debug setting shouldn't be read from inside the IM modules.
* Implemented XEP-0115. This adds some info to the <presence/> tags soWilmer van der Gaast2008-02-03-2/+32
| | | | | | clients interested in capabilities can cache discovery info, so they don't have to ask about it every time you/they log in.
* Fixed "Conditional jump or move depends on uninitialised value(s)" atWilmer van der Gaast2008-01-13-1/+1
| | | | | jabber_pkt_presence (presence.c:174). Valgrind-Wilmer: 1-0.
* Fixing bug #344, now away states should always be correct, even when peopleWilmer van der Gaast2008-01-11-19/+19
| | | | | | do complicated things with multiple resources. (There were two bugs and some duplicated code, so I moved things around a bit.)
* More consistency in error/warning errors. Until now "WARNING:" was usuallyWilmer van der Gaast2008-01-06-2/+2
| | | | | in upper case while "Error:" wasn't .... that doesn't really make sense.
* Handling of presence-error packets (only useful for groupchats now), movedWilmer van der Gaast2007-12-02-4/+5
| | | | | | jabber_chat_by_jid() (with the right name) to conference.c, I don't know what it was doing in jabber_util.c.
* (Hopefully) fixing one case where the Jabber module doesn't understand aWilmer van der Gaast2007-11-24-2/+8
| | | | | | <presence type=unavailable> tag properly and keeps showing the buddy as on-line. (When the tag comes from a bare JID.)
* Merging from devel/Jelmer.Wilmer van der Gaast2007-11-14-5/+0
|\
| * Removed some debugging stuff that shouldn't have been here for a long timeWilmer van der Gaast2007-11-14-5/+0
| | | | | | | | | | already.
* | Added jabber_error_parse() and using it for both stream- and stanzaWilmer van der Gaast2007-07-30-1/+11
| | | | | | | | | | (only presence so far) errors.
* | Keeping an original (not normalized) copy of the user's nickname. ThisWilmer van der Gaast2007-07-01-1/+1
| | | | | | | | | | | | | | fixes a bug reported by James Teh in the monster ticket #20. There's no proper garbage collection yet in the Jabber conference code, really have to do that soon. :-(
* | Properly updating away state info if one resource goes down while anotherWilmer van der Gaast2007-07-01-8/+17
| | | | | | | | | | | | one's still there. Not sending offline notifications is great, but updating the away state info is even better. :-)
* | Fixes: handling of being kicked, now sending <presence/> tags to allWilmer van der Gaast2007-04-22-0/+11
| | | | | | | | | | conferences the user's in.
* | Read-only support for Jabber conferences (non-anonymous rooms only).Wilmer van der Gaast2007-04-22-3/+26
|/ | | | | Just don't use this, you're really not going to like it. :-)
* Jabber module should always send the status information of the primaryWilmer van der Gaast2007-04-20-4/+4
| | | | | resource now, instead of just whatever came in last.
* Fixed NULL pointer dereference in Jabber code.Wilmer van der Gaast2007-04-17-1/+2
|
* Split serv_got_update() into imcb_buddy_(status|times). (Well, the secondWilmer van der Gaast2007-04-15-4/+11
| | | | | | | one isn't implemented yet, but I'll do that later.) At last I got rid of the hack called get_status_string(). And now Yahoo seems to mess up away messages...
* s/imc/imcb/ for callback functions. Moved things aroundin nogaim.h aWilmer van der Gaast2007-04-15-3/+3
| | | | | | little bit, grouping things by category instead of original Gaim 0.58 filename.
* More cleanups, mainly in the callbacks. Replaced things likeWilmer van der Gaast2007-04-05-3/+3
| | | | | | | | do_error_dialog() and (set|hide)_login_progress(_error)?() with things that hopefully make more sense. Although it's still not really great...
* s/gaim_connection/im_connection/ and some other minor API changes. The restWilmer van der Gaast2007-03-30-20/+20
| | | | | | will come tomorrow. It compiles, I'll leave the real testing up to someone else. ;-)
* Silencing some (hopefully) bogus warnings because too many people willWilmer van der Gaast2007-02-18-2/+4
| | | | | be annoyed by them.
* Improved handling of JIDs: Bare JIDs are allowed (*sigh*) and caseWilmer van der Gaast2006-11-13-44/+19
| | | | | insensitivity. Probably not complete yet...
* Proper cleanup of jabber buddy structures when removing a buddy from theWilmer van der Gaast2006-10-15-2/+26
| | | | | | | list, proper checking (and handling) of events related to buddies that aren't "hashed" yet, limit checks on priorityto setting, renamed JEP85 to XEP85, support for more XEP85 states.
* Oops... When I say ignore, I really mean ignore!Wilmer van der Gaast2006-10-10-0/+2
|
* Added resource selection (based on priority or time of last message) toWilmer van der Gaast2006-10-10-5/+22
| | | | | | | budd_by_jid(), added a full_jid property to easily address that resource without having to rebuild the full JID every time and implemented typing notification shite.
* The module now keeps track of all resources available for a buddy. ThisWilmer van der Gaast2006-10-09-13/+46
| | | | | | | | | means the buddy won't show up offline when one resource goes down (while there are still others available). It also remembers away state information for every separate resource. Later this system will be used to keep track of client capability information (Typing notices, yay...) and who knows what else.
* Added SRV lookups to automatically find out the correct server for aWilmer van der Gaast2006-10-07-3/+4
| | | | | domain.
* Fixed memory leak in jabber_buddy_ask() and added "handling" of type="error"Wilmer van der Gaast2006-10-02-0/+4
| | | | | <presence/> tags.
* Handling of incoming authorization requests, manual block/allow. (Doesn'tWilmer van der Gaast2006-09-24-0/+15
| | | | | seem to be completely like how it works on other IM networks.)
* Added add_buddy/remove_buddy functions. Removing a contact doesn't seemWilmer van der Gaast2006-09-24-0/+16
| | | | | to work perfectly though.
* Updated <presence> stuff to handle changing the priority setting.Wilmer van der Gaast2006-09-24-2/+10
|
* Implemented a list of away states, using this for a better set_away(), andWilmer van der Gaast2006-09-23-19/+1
| | | | | got rid of the double <presence> tag sent because of presence_announce().
* Implemented set_away() (VERY simple version, have to add an away stateWilmer van der Gaast2006-09-21-0/+19
| | | | | | table like in the MSN module), added sending of keepalive "packets" and removed old main() code (for testing only) from jabber.c.
* Added simple parsing of incoming <presence> tags, a nice </stream:stream>Wilmer van der Gaast2006-09-21-2/+22
| | | | | | at the end of sessions, support for sending messages, and restored the old (and leaking) xt_print(), which I'll only use for debugging.
* Now parsing roster properly. (Hopefully...)Wilmer van der Gaast2006-09-20-0/+15
|
* It can send a valid (pre-XMPP) login packet. Lots of work to do, still...Wilmer van der Gaast2006-09-20-1/+1
|
* Added some pretty empty files.Wilmer van der Gaast2006-09-20-0/+35