summaryrefslogtreecommitdiffstats
path: root/crsm.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'crsm.hpp')
-rw-r--r--crsm.hpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/crsm.hpp b/crsm.hpp
index 06407e8..d04df39 100644
--- a/crsm.hpp
+++ b/crsm.hpp
@@ -15,6 +15,8 @@
#include <IrcConnection>
#include <IrcCommand>
#include <QSignalMapper>
+#include <QTcpServer>
+#include <QTcpSocket>
#include "CmdFunctionRef.hpp"
#include "ProcessManager.hpp"
@@ -93,6 +95,10 @@ private slots:
void ircMessageReceived(IrcMessage* message);
void greet(QString pcName);
+ void newManagementConnection();
+ void newManagementData();
+ void managementConnectionDisconnected();
+
private:
QStringList scenlist;
QList<ScenarioSettings> userlist;
@@ -127,6 +133,8 @@ private:
QString writtenToServer;
QMap<QString, CmdFunctionRef> cmds;
ProcessManager* processManager;
+ QTcpServer managementServer;
+ QMap<QTcpSocket*, ManagementConnection> managementConnections;
bool ok = false;
@@ -164,6 +172,10 @@ private:
void ircCheckUserStatus(const ClientInfo& requester, const ClientInfo& subject, IrcCheckCallback callback);
void setIngameAdmin(const ClientInfo &client, const QString& newAdmin);
+ QFile outputBuffer;
+ void out(const QString& text);
+ void replayOutputBuffer(QTcpSocket *socket, bool clear = true);
+
CMD_FUNCTION(help);
CMD_FUNCTION(passToClonk);
CMD_FUNCTION(admin);
@@ -188,6 +200,13 @@ private:
CMD_FUNCTION(clientlist);
CMD_FUNCTION(set);
+ CMD_FUNCTION(exit);
+ CMD_FUNCTION(exitDetach);
+ CMD_FUNCTION(exitUpdate);
+ CMD_FUNCTION(exitAfter);
+ CMD_FUNCTION(reload);
+ CMD_FUNCTION(saveConfig);
+
IRC_CHECK_CALLBACK(ircSetAdmin);
IRC_CHECK_CALLBACK(ircModCmd);
};