Files
@ eb1df41b3ea2
Branch filter:
Location: libtransport.git/backends/libcommuni/ircnetworkplugin.h - annotation
eb1df41b3ea2
1.6 KiB
text/plain
Set subject on IRC
bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 eb1df41b3ea2 eb1df41b3ea2 bc3971f7d258 bc3971f7d258 bc3971f7d258 bc3971f7d258 05e06dd845ae 05e06dd845ae 05e06dd845ae 05e06dd845ae 05e06dd845ae bc3971f7d258 bc3971f7d258 bc3971f7d258 40dbe667beea 05e06dd845ae 05e06dd845ae bc3971f7d258 |
#pragma once
#include "transport/config.h"
#include "transport/networkplugin.h"
#include "session.h"
#include <QtCore>
#include <QtNetwork>
#include "Swiften/EventLoop/Qt/QtEventLoop.h"
#include "ircnetworkplugin.h"
class IRCNetworkPlugin : public QObject, public NetworkPlugin {
Q_OBJECT
public:
IRCNetworkPlugin(Config *config, Swift::QtEventLoop *loop, const std::string &host, int port);
void handleLoginRequest(const std::string &user, const std::string &legacyName, const std::string &password);
void handleLogoutRequest(const std::string &user, const std::string &legacyName);
void handleMessageSendRequest(const std::string &user, const std::string &legacyName, const std::string &message, const std::string &/*xhtml*/);
void handleJoinRoomRequest(const std::string &user, const std::string &room, const std::string &nickname, const std::string &password);
void handleLeaveRoomRequest(const std::string &user, const std::string &room);
void handleRoomSubjectChangedRequest(const std::string &user, const std::string &room, const std::string &message);
public slots:
void readData();
void sendData(const std::string &string);
private:
MyIrcSession *createSession(const std::string &user, const std::string &hostname, const std::string &nickname, const std::string &password, const std::string &suffix = "");
std::string getSessionName(const std::string &user, const std::string &legacyName);
std::string getTargetName(const std::string &legacyName);
private:
Config *config;
QTcpSocket *m_socket;
std::map<std::string, MyIrcSession *> m_sessions;
std::string m_server;
std::string m_identify;
};
|