Commit Graph
205 Commits
Author SHA1 Message Date
louiz’ fd7c365288 Use the same function for both history orders 2018-02-13 03:10:00 +01:00
louiz’ 99389eefba Always return the oldest matching messages from MAM, even if no date is set 2018-02-10 17:47:42 +01:00
louiz’ 37340e593f Add a <x muc#user> node on outgoing private MUC messages
See https://xmpp.org/extensions/xep-0045.html#privatemessage

fix #3321
2017-12-26 19:52:41 +01:00
louiz’ 24dc05dd97 Run some of the ci tests against a postgresql docker container 2017-12-03 16:46:14 +01:00
louiz’ 90dd8e8b42 Fix #3304 2017-11-07 23:18:30 +01:00
louiz’ cb6b50dc01 Change how we count the number of connected resources to a server 2017-11-07 23:05:05 +01:00
louiz’ bfcf294517 Add the persistent_by_default configuration option
fix #3293
2017-09-09 17:09:17 +02:00
louiz’ dabc48b79b Mark messages from the IRC server as private and no-copy
fix #3284
2017-08-30 16:14:35 +02:00
louiz’ fcaffb9e77 Add support for the "history" node on MUC join
Supports the "seconds", "maxstanzas", "since" and "maxchars" (but only =0)
attributes.

fix #3270
2017-08-27 22:37:46 +02:00
louiz’ 25243f53c2 In fixed mode, server messages come from biboumi’s hostname directly
Instead of irc.example.com@biboumi, because that’s actually user named
“irc.example.com”, in that case.
And that fixes the raw messages in fixed mode.

fix #3286
2017-08-27 14:32:29 +02:00
louiz’ 655151d88a Cache the encoding_in database value, to avoid doing a query for each message 2017-08-26 13:51:15 +02:00
louiz’ f7cbe8531d Correctly remove the last resource from the channel, in persistent mode
fix #3277
2017-07-16 20:22:23 +02:00
louiz’ f9a6f97396 Implement the roster presences from IRC servers 2017-07-16 00:16:43 +02:00
louiz’ 8232c2cccc Remove an unused variable 2017-07-08 19:21:53 +02:00
louiz’ 9fa1852c7e Send status code='332' on biboumi or IRC server’s shutdown 2017-07-08 18:10:47 +02:00
louiz’ faed8952cb Remove a bunch of useless string_literal usage 2017-07-08 14:04:35 +02:00
louiz’ 9f7782bb0c Add a global “persistent” option 2017-07-06 22:24:42 +02:00
louiz’ 369ccb0376 Add default values for the database columns 2017-06-14 00:19:15 +02:00
louiz’ 50cadf3dac Implement our own database ORM, and update the whole code to use it
Entirely replace LiteSQL

fix #3271
2017-06-14 00:19:15 +02:00
louiz’ cf1c8f188c Remove a few warnings occuring in some build config 2017-05-21 12:23:10 +02:00
louiz’ f7d4db4812 Remove a useless debug log 2017-05-08 23:02:14 +02:00
louiz’ da701069dc Little fix and cleanup in the channels list code 2017-05-08 18:47:02 +02:00
louiz’ 5ef674c486 Revert "Add a linger_time configuration option on IRC servers"
This reverts commit 5d801ddcd0.
2017-04-20 10:12:00 +02:00
louiz’ e3ee824e5c Revert "Cancel the IRC server linger timer when we try to-rejoin a channel on it"
This reverts commit 45f7396c8d.
2017-04-20 10:09:35 +02:00
louiz’ 51696c091c Make sure the channel is joined before trying to leave it
fix #3243
2017-04-19 23:33:48 +02:00
louiz’ 727d887d7b Fix wrong JID computing when sending iq ping or version in fixed mode
fix #3259
2017-04-20 00:24:59 +02:00
louiz’ 68d6b82940 Properly handle multiline topics
fix #3254
2017-04-09 23:05:32 +02:00
louiz’ be9c577de8 Apply all the clang-tidy performance-* fixes 2017-04-07 19:01:49 +02:00
louiz’ 0878a0342c Do not allow pings from resources that aren’t in the channel
fix #3252
2017-04-04 21:38:53 +02:00
louiz’ 7f2127a7ea Add the archive ID to messages when they are sent to users
This makes us compatible with mam 6.0

fix #3249
2017-03-30 18:16:44 +02:00
louiz’ 1a09c965eb Remove two sneaky log_debug 2017-03-29 23:32:43 +02:00
louiz’ 55f7434925 Do not remove our resources if the QUIT message doesn't come from us 2017-03-27 11:49:07 +02:00
louiz’ b7789fe586 Add a Persistent option on channels
fix #3230
2017-03-27 11:49:07 +02:00
louiz’ a0a2de3b4d Revert "Don’t send the unavailable presence to all resources, in the virtual channel"
This reverts commit 38ff50f5d2.
2017-03-08 22:28:00 +01:00
louiz’ 38ff50f5d2 Don’t send the unavailable presence to all resources, in the virtual channel 2017-03-08 22:09:57 +01:00
louiz’ f0bc6c83a8 Pass the shared_ptr by reference, to avoid useless copies 2017-03-08 19:04:15 +01:00
louiz’ 45f7396c8d Cancel the IRC server linger timer when we try to-rejoin a channel on it 2017-01-25 19:55:45 +01:00
louiz’ b660a47367 grammar: than <-> as 2017-01-22 21:32:37 +01:00
louiz’ 5d801ddcd0 Add a linger_time configuration option on IRC servers 2017-01-22 21:31:50 +01:00
louiz’ e397fc837e Send iq error/result when the user changed a MODE command with an iq
And add tests for all the mode changes
2016-12-18 17:21:15 +01:00
louiz’ eca31ce8db Do not change the nick when joining a second room with a different nick
As the doc says, the nick changes must be explicit in an already joined
room, and not when joining a room.
2016-12-11 17:05:52 +01:00
louiz’ d872c2b492 Support the ident protocol
fix #3211
2016-11-15 00:23:19 +01:00
louiz’ c70301e503 Fix the presences sent, when multiple resources join the virtual channel
fix #3216
2016-11-02 21:25:26 +01:00
louiz’ c3bb9fe2e2 Handle forced-join by just sending an invitation
fix #3116
2016-10-23 23:59:21 +02:00
louiz’ 00eb18bae8 Refactor channel->parting to a new location 2016-10-23 23:58:03 +02:00
louiz’ dfc0793ef2 Include a private and no-copy nodes in private <message/> to avoid carbon duplication 2016-10-11 00:43:46 +02:00
louiz’ 8ac8d2b242 Correctly set status="110" in the presence for the target of a kick 2016-10-07 23:28:40 +02:00
louiz’ 3620d533ee Avoid sending PART command for unjoined channels
fix #3205
2016-10-05 00:18:22 +02:00
louiz’ 28f1dd7654 Make version requests work with global user JIDs as well
fix #3210
2016-10-03 21:35:16 +02:00
louiz’ 729078a238 Add missing include file 2016-10-03 01:11:54 +02:00