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
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
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
Florent Le Coz
c01befb054
Implement room discovery using the LIST irc command
...
ref #2472
2015-02-26 05:02:08 +01:00
Florent Le Coz
2c5d3d89b0
Change IRC modes when receiving an affiliation/role change request
...
fix #2946
2015-01-24 17:33:04 +01:00
Florent Le Coz
f9e259c266
Fix a little bit of style stuf from previous commit
2015-01-14 13:36:42 +01:00
Emmanuel Gil Peyrot
e4fcbd3030
Add support for password-protected IRC rooms.
2015-01-14 12:38:46 +01:00
Florent Le Coz
720e31a511
Fix a few issues reported by static analyzers
2014-12-17 13:37:57 +01:00
Florent Le Coz
12eeb4d11e
Implement the PING on a server or the gateway itself
...
fix #2575
2014-11-12 08:14:56 +01:00
Florent Le Coz
4a8bcd3cbd
Implement PING to in-room participant
...
ref #2575
2014-11-12 08:13:02 +01:00
Florent Le Coz
d8da7984b2
Implement PING, user to user only (XMPP and IRC side, using CTCP PING)
...
ref #2757
2014-11-12 08:12:43 +01:00
Florent Le Coz
e1d69806ed
Rename iq_responder_callback_t to irc_… and add the equivalent to wait for iqs
2014-11-12 06:17:25 +01:00
Florent Le Coz
e3ea0d62c7
Use generic send_presence_error() instead of almost identical specializations
2014-08-08 00:46:27 +02:00
Florent Le Coz
545ab11ff3
Support version request to IRC users
2014-06-20 11:51:49 +02:00
Florent Le Coz
2117838cf9
Return a proper iq when the IRC server responds to our kick
...
A result or an error, depending on the type of message
2014-06-19 22:22:29 +02:00
Florent Le Coz
26ffc8fe12
Implement a way to add callbacks, waiting for an IRC event to return an iq
2014-06-19 22:21:49 +02:00
Florent Le Coz
04de62a4e0
Messages to room participants are forwarded to the IRC user
...
For example, both JID #chan%server@biboumi/Toto and toto!server@biboumi are
equivalent, except that if you send a message to the first one, subsequent
messages coming from the user toto will come from that same JID. This is
done to be consistent for the XMPP user, and respond from the same JID than
the 'to' of the first message.
fix #2468
2014-06-18 22:42:58 +02:00
Florent Le Coz
56eb5df28a
Mini comment fix
2014-06-18 18:46:41 +02:00
Florent Le Coz
c2311b2893
Send (every 240s) a PING command to all connected irc servers
...
fix #2452
2014-05-30 16:08:23 +02:00
Florent Le Coz
6c2d03da4e
Send an error presence when the connection to the IRC server fails
2014-05-28 01:27:41 +02:00
Florent Le Coz
5507adbe94
SocketHandlers own the poller and add themself into it only when the socket is created
...
We want to call socket() with the parameters provided by getaddrinfo, so we
can’t addd the fd into the poller immediately. We need to wait the
connection attempt, and then the SocketHandler can call add_socket_handler
itself, if the connection succeeds, or is in progress.
2014-05-27 01:01:44 +02:00
Florent Le Coz
12c8b1ae0b
Disconnect the user from all its IRC servers whenever he returns an error
...
fix #2524
2014-05-15 00:32:31 +02:00
Florent Le Coz
579ca4bdb6
Forward iq version results to IRC
2014-05-07 02:02:47 +02:00
Florent Le Coz
5ec05cb0ed
Forward CTCP version request to XMPP
2014-05-06 22:50:37 +02:00
Florent Le Coz
99aba5667d
Connection to servers does not block the process anymore
2014-02-22 21:42:24 +01:00
Florent Le Coz
61ca40fa0e
Delete empty bridges objects
2014-02-20 02:31:16 +01:00
Florent Le Coz
cf9f3a1f28
Include role and affiliation in the join presence of the nick change process
2014-02-17 01:43:58 +01:00
Florent Le Coz
fef9c8193d
Also set the role and affiliation of users already in the chan
2014-01-06 01:22:43 +01:00
Florent Le Coz
fbec16f1a2
Possibility to change a channel's topic
2014-01-04 01:59:36 +01:00
Florent Le Coz
e840704b58
Convert received modes into roles and affiliations
2014-01-04 01:59:36 +01:00
Florent Le Coz
acf769d83a
Use isupport informations to know the user modes when joining
...
Also remove the duplicate send_self_join methods, user only send_user_join
2014-01-04 01:59:36 +01:00
Florent Le Coz
43cc60e4a9
Handle nickname conflicts by sending the correct XMPP error presence
2014-01-04 01:59:35 +01:00
Florent Le Coz
e8e592d1ac
Remove disconnected IrcClients
2014-01-04 01:59:35 +01:00
Florent Le Coz
3afb63a650
Shutdown cleanly on SIGINT
2014-01-04 01:59:14 +01:00
Florent Le Coz
b11126a19d
Provide a JID for IRC users, and add a stringprep dependency for this
2013-12-08 20:14:12 +01:00
Florent Le Coz
e6f20d3c0f
Implement IRC format to xhtml-im conversion
...
The generated XML is very verbose because each IRC formatting tag makes us
close a <span/> element and reopen it with the new style applied. However,
this works quite well and is easy to implement.
2013-11-28 01:18:26 +01:00
Florent Le Coz
0859801230
Handle KICK in irc channel, both ways
2013-11-13 01:24:36 +01:00