Implement the Bridge class to translate between the two protocols

Add all useful classes as well: Jid, Iid, IrcChannel, IrcUser etc to
properly keep the informations about what we receive from the IRC server.

Only handle the MUC join stanza, and send the list of users in the IRC
channel to the XMPP user, and the IRC channel’s topic, for now.
This commit is contained in:
Florent Le Coz
2013-11-06 21:01:18 +01:00
parent dea7f60fa1
commit bf7b05ef72
17 changed files with 694 additions and 14 deletions
+34
View File
@@ -0,0 +1,34 @@
#ifndef IID_INCLUDED
# define IID_INCLUDED
#include <string>
/**
* A name representing an IRC channel, on the same model than the XMPP JIDs (but much simpler).
* The separator between the server and the channel name is '%'
* #test%irc.freenode.org has :
* - chan: "#test" (the # is part of the name, it could very well be absent, or & instead
* - server: "irc.freenode.org"
* #test has:
* - chan: "#test"
* - server: ""
* %irc.freenode.org:
* - chan: ""
* - server: "irc.freenode.org"
*/
class Iid
{
public:
explicit Iid(const std::string& iid);
std::string chan;
std::string server;
private:
Iid(const Iid&) = delete;
Iid(Iid&&) = delete;
Iid& operator=(const Iid&) = delete;
Iid& operator=(Iid&&) = delete;
};
#endif // IID_INCLUDED