Commit Graph
168 Commits
Author SHA1 Message Date
louiz’ 35fc5d6f29 Some little style/typo fixes 2016-09-21 20:38:14 +02:00
louiz’ 93ebf45f30 Make history messages work with fixed_irc_server
fix #3209
2016-09-20 19:02:12 +02:00
louiz’ 1ffc367753 Send the muc history when a second (or more) resource joins a room 2016-08-23 03:30:40 +02:00
louiz’ cfebca4d7c Only save the logs if recordHistory global config option is true 2016-08-23 01:11:51 +02:00
louiz’ 38a4bcb2d2 Only save messages coming from real MUC participants in the database
Not messages coming from the room, for example
2016-08-22 00:47:55 +02:00
louiz’ d1626c929f When joining a channel, send the most recent history found in the database 2016-08-22 00:44:17 +02:00
louiz’ 4c8fb9a0e3 Forward IRC invites to XMPP 2016-08-18 20:33:41 +02:00
louiz’ 5406de35a3 On a client error, do not QUIT, just make the resource leave all channels
This should fix #3205
2016-08-17 20:47:33 +02:00
louiz’ 663d4ad54a Forward mediated invitations (XMPP to IRC only) 2016-08-16 15:59:00 +02:00
louiz’ 787563722c Only save the messages into the db if we are actually using a db 2016-08-13 01:46:11 +02:00
louiz’ 8ec823be4f Save received and sent messages into the database 2016-08-12 16:39:19 +02:00
louiz’ 0d2dd71de5 Don’t use ! as the separator for nicknames, use % instead
It’s now easier to use. The distinction between a nick and a channel name is
based on the first character (by default it's '#' and '&'). The user doesn’t
have to worry about which separator to use anymore.

fix #3066
2016-08-10 15:48:28 +02:00
louiz’ f0a25ccda4 Lower case the nick, when forwarding a version or ping request 2016-08-03 11:46:13 +02:00
louiz’ 03feb403f8 Send the iq requests to one random resource instead of the bare JID 2016-07-04 18:49:00 +02:00
louiz’ 81f8f45b37 Replace all include guards by #pragma once
It’s $CURRENT_YEAR
2016-07-04 17:53:53 +02:00
louiz’ 5321d29cbd List of channels are saved per-request and not globally
The list would keep the previous results in memory, forever, and the list
would grow each time a new request was made (even with results from
unrelated servers)…
2016-07-04 17:00:05 +02:00
louiz’ 964784497a Remove forgotten comment 2016-07-04 10:20:16 +02:00
louiz’ 0ce75ab521 Properly remove the resource from the server when we leave the last channel 2016-07-03 16:01:15 +02:00
louiz’ 7d2a2dc8cc Forward ping requests from IRC to XMPP, to one single resource 2016-06-24 11:23:51 +02:00
louiz’ b2e7edeea8 Properly set the “from” of the ping results to the correct full JID 2016-06-24 11:23:01 +02:00
louiz’ 6bd9b1ec14 Remove unused function 2016-06-23 22:18:42 +02:00
Emmanuel Gil Peyrot 0391f17f99 Add XEP-0106 support to the bridge
This allows the user to join channels containing forbidden characters
in the local part, like #r&d or #group/project.
2016-06-21 23:15:25 +01:00
Emmanuel Gil Peyrot 350d48a5bf Fix typo in bridge.hpp 2016-06-15 21:54:26 +01:00
louiz’ 272c0e4995 Reset the preferred private JID when all resources leave a room
For example if we are talking in private with nick Joe from
room #foo, and then we leave that room, we start receiving Joe’s
message from the server-wide JID

e2e tests included!!!
2016-06-10 10:00:48 +02:00
louiz’ 2d11a5f494 Support multiple nick session, except for IQs
ref #2556
2016-06-08 01:42:43 +02:00
louiz’ 507d0c2cbe Forward everything to all concerned XMPP resources 2016-06-08 01:42:43 +02:00
louiz’ 66609cfba2 Remove all usage of std::list 2016-06-08 01:42:43 +02:00
louiz’ 711861d40e Add methods to know which resource is on which server or channel 2016-06-08 01:42:43 +02:00
louiz’ af42073830 Style fix
Move all constructors at the top of classes
2016-05-04 14:16:40 +02:00
louiz’ 04d28f968b Forward the topic authors, handle the author from 333 messages
fix #2
2016-04-22 10:49:07 +02:00
Florent Le Coz 79cdf170d2 Use the configured encoding value when decoding received messages 2016-01-04 13:47:26 +01:00
Florent Le Coz 7e2427148e Use references instead of raw pointer, to store the “parent” object
In Bridge and IrcClient
2015-12-21 14:51:26 +01:00
Florent Le Coz 1f6eea62f4 Add an ad-hoc command to disconnect a user from one or more IRC server
fix #3077
2015-12-03 21:15:22 +01:00
Florent Le Coz 34fc1d4010 Implement a basic webirc support
See https://kiwiirc.com/docs/webirc

fix #3135
2015-10-31 06:17:35 +01:00
Florent Le Coz 6c42286109 Remove some useless includes 2015-10-31 05:36:18 +01:00
Florent Le Coz e7a91badcd Use “using” instead of typedef 2015-10-24 15:21:05 +02:00
Florent Le Coz 1aa2c2d857 Introduce the realname_from_jid option
When set to true, the realname and username are extracted (by default) from
the user’s JID

fix #3136
2015-10-12 17:14:29 +02:00
Florent Le Coz f1de6d0320 Add Bridge::get_bare_jid 2015-09-18 22:09:26 +02:00
Florent Le Coz f3b3d937ae Use unique_ptr to store the XmlNode’s children
Also fix some constness things
2015-09-01 14:47:57 +02:00
Florent Le Coz e8f22efe34 XmlNodes are now always closed
Remove the close() method and closed attribute. Remove all the calls to
close().  (Save one bool per XmlNode, yay, and save a few ifs and some
useless function calls. At best it should be unnoticeably faster and lighter
and save a few keystrokes in the future)
2015-09-01 04:42:12 +02:00
Florent Le Coz df006a1916 //mode with no argument should work
The server will respond with the current channel mode, in private or
something
2015-08-19 21:22:46 +02:00
Florent Le Coz e8d7965115 Handle errors for the LIST irc command
ref #2472
2015-05-19 06:22:04 +02:00
Florent Le Coz 2195292919 Remove a debug line (breaking our PING stuf) that should not have been commited 2015-05-19 05:15:49 +02:00
Florent Le Coz 501a3f7be2 Fix the way we we forward an XMPP ping result to the IRC server
Our CTCP notice didn't include a \01 char at the end.  We thus failed to
check the PING id when we received it ourself, because one char was missing
2015-05-19 05:13:55 +02:00
Florent Le Coz 763be827c9 Fix a message.arguments size check 2015-05-11 05:43:32 +02:00
Florent Le Coz cc1255d216 Fix the way we check for the PING id 2015-05-11 05:31:47 +02:00
Florent Le Coz 7fe0dc2667 Fix the case of the nick for ping requests
fix #3041
2015-05-11 05:31:11 +02:00
Florent Le Coz 5475d16b57 Return a stanza error whenever the IRCClient for a given server does not exist
Instead of ignoring the stanza, we send back an error of type
remote-server-not-found each time it's possible.

Also avoid having to do if (!irc) return; everytime.

fix #3045
2015-05-11 04:47:31 +02:00
Florent Le Coz 0a6b673b14 Support raw IRC messages
Messages received on an IRC server JID are forwarded as raw IRC messages.

fix #2486
2015-05-07 17:01:17 +02:00
Florent Le Coz d600a2843f Remove all the libs that are now in louloulibs 2015-02-27 12:26:48 +01:00