summaryrefslogtreecommitdiff
path: root/src/xmpp/xmpp_component.hpp
AgeCommit message (Collapse)Author
2019-08-20XEP-0410: implement server-side optimisation for self-pingsJonas Schäfer
This prevents the ping from round-tripping through IRC and possibly a random other client of the user. Please see XEP-0410 for the rationale. Fixes #3385.
2018-04-24Revert "Use a different Date data type"louiz’
This reverts commit 857c7d3972a03cbeebf730d99b924d3710dee6a0.
2018-04-11Use a different Date data typelouiz’
PLEASE backup your database before testing this commit, and report any migration issue. In postgresql, we use timestamp with timezone. In sqlite3 we use REAL (the date is expressed as julianday) This requires a migration of the muclogline_ table: In postgresql it’s pretty simple, we convert all the integer into timestamps With sqlite3, we actually rename the table, create the new one with the correct type, then copy everything to the new table, with a conversion function for the Date_ column, and then we delete the old table. fix #3343
2018-03-18Advertise the muc#stable_id feature on disco#info resultslouiz’
From XEP 0045: “Note: the requirement to reflect the 'id' attribute was added in version 1.31 of this XEP. Servers following the new specification SHOULD advertise that with a disco info feature of 'http://jabber.org/protocol/muc#stable_id' on both the service domain and on individual MUCs, so that clients can check for support.”
2018-03-18Reflect message IDs in channel MUCslouiz’
fix #3283
2018-03-12Add a <item/> node in the presence of a leaving participantlouiz’
fix #3339
2018-02-04Fix argument types in declaration of send_history_messagelouiz’
2018-01-30Add a ifndef USE_DATABASE guard around send_history_messagelouiz’
2017-12-26Include the <fin><set><first/><last/></></> nodes in the MAM iq resultlouiz’
fix #3322
2017-12-26Add a <x muc#user> node on outgoing private MUC messageslouiz’
See https://xmpp.org/extensions/xep-0045.html#privatemessage fix #3321
2017-07-20Do not reply with an error when receiving a presence for a user JIDlouiz’
fix #3224
2017-07-08Send status code='332' on biboumi or IRC server’s shutdownlouiz’
2017-05-11Make the IRC channel configuration form available from the MUC configlouiz’
fix #3250
2017-03-30Add the archive ID to messages when they are sent to userslouiz’
This makes us compatible with mam 6.0 fix #3249
2017-03-29Remove two sneaky log_debuglouiz’
2017-03-29Change mam namespace to mam:2, instead of mam:1louiz’
2017-03-14Refactoring louloulibs and cmakelouiz’
Use OBJECT libraries Remove the louloulibs directory Write FOUND variables in the cache
2015-02-27Remove all the libs that are now in louloulibsFlorent Le Coz
2015-02-26Implement room discovery using the LIST irc commandFlorent Le Coz
ref #2472
2015-02-21Use a timer to try reconnecting to the XMPP server only each 2 secondsFlorent Le Coz
When the connection is lost, immediately try to reconnect, then try to reconnect every 2 seconds. This is much better than the previous “Try to re-connect as fast as possible”.
2015-02-21Remove the XmppComponent::last_auth bool that was never used anywhereFlorent Le Coz
2014-11-12Implement PING, user to user only (XMPP and IRC side, using CTCP PING)Florent Le Coz
ref #2757
2014-11-12Rename iq_responder_callback_t to irc_… and add the equivalent to wait for iqsFlorent Le Coz
2014-08-08Use generic send_presence_error() instead of almost identical specializationsFlorent Le Coz
2014-07-15Send the reason of the connection close to the userFlorent Le Coz
2014-07-02Add a level of inheritance above SocketHandlerFlorent Le Coz
SocketHandler has been renamed to TCPSocketHandler SocketHandler is now a simple interface with a few methods, used only by Poller. This way we can inherite from the new SocketHandler class, to handle other types of sockets, and still make them manageable by the poller without any change in the Poller class.
2014-06-20Support version request to IRC usersFlorent Le Coz
2014-06-20Respond to IQ version on the gateway, a server or a chan with biboumi versionFlorent Le Coz
ref #2455
2014-06-19Return a proper iq when the IRC server responds to our kickFlorent Le Coz
A result or an error, depending on the type of message
2014-06-18Messages to room participants are forwarded to the IRC userFlorent Le Coz
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-11Rewrite the whole IID usageFlorent Le Coz
IRC users and channels are now distinguished by the separator used in the IID (% or !). ref #2468
2014-05-31Add an ad-hoc command to disconnect some usersFlorent Le Coz
2014-05-30Use libuuid to generate unique IDs for iq and adhoc sessionsFlorent Le Coz
2014-05-30Implement the support for adhoc commandsFlorent Le Coz
We have two basic example commands. But it’s not entirely finished because there are some error checks that we don’t do. ref #2521
2014-05-28Change the way the namespaces are handled in the XmlNode classFlorent Le Coz
2014-05-28Send an error presence when the connection to the IRC server failsFlorent Le Coz
2014-05-27SocketHandlers own the poller and add themself into it only when the socket ↵Florent Le Coz
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-06Forward CTCP version request to XMPPFlorent Le Coz
2014-05-06Implement next_id() toFlorent Le Coz
2014-04-24Respond to a disco query the gateway jid itselfFlorent Le Coz
2014-04-10Messages coming from the IRC server are of type "chat"Florent Le Coz
2014-03-28Send a stanza error when receiving bad stanzasFlorent Le Coz
Whether this is a bad-request (missing XML attributes or elements) or an internal server error.
2014-03-24Send an error presence whenever a user tries to join an invalid roomFlorent Le Coz
2014-03-24Introduce two new bool, to know if the xmpp component should try to reconnectFlorent Le Coz
If we never succeeded our connection+auth process, means we should probably not attempt any-more, and just give up. If we ever did, this means a reconnect is a good idea
2014-03-24Reconnected immediately to the XMPP whenever it closes the connectionFlorent Le Coz
2014-02-28Avoid unnecessary copies by recv()ing data directly into the expat bufferFlorent Le Coz
2014-02-22Connection to servers does not block the process anymoreFlorent Le Coz
2014-02-17Include role and affiliation in the join presence of the nick change processFlorent Le Coz
2014-02-17Log (xmpp) stream-level errorsFlorent Le Coz
2014-01-04Convert received modes into roles and affiliationsFlorent Le Coz