summaryrefslogtreecommitdiffstats
path: root/libcommuni/examples/bot/ircbot.cpp
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2015-09-09 19:00:56 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2015-09-09 19:02:23 +0200
commit8a6d4b06f2291c363f3dea17837ed20893852453 (patch)
treec091375499e35eaa1810586454e0834c06e6c9b2 /libcommuni/examples/bot/ircbot.cpp
parentf554a27046f203e56a07baaf214d90834942e3f5 (diff)
downloadmanager-8a6d4b06f2291c363f3dea17837ed20893852453.tar.gz
manager-8a6d4b06f2291c363f3dea17837ed20893852453.zip
Cleanup repo with some directories
Diffstat (limited to 'libcommuni/examples/bot/ircbot.cpp')
-rw-r--r--libcommuni/examples/bot/ircbot.cpp84
1 files changed, 0 insertions, 84 deletions
diff --git a/libcommuni/examples/bot/ircbot.cpp b/libcommuni/examples/bot/ircbot.cpp
deleted file mode 100644
index 1891e62..0000000
--- a/libcommuni/examples/bot/ircbot.cpp
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (C) 2008-2014 The Communi Project
- *
- * This example is free, and not covered by the BSD license. There is no
- * restriction applied to their modification, redistribution, using and so on.
- * You can study them, modify them, use them in your own program - either
- * completely or partially.
- */
-
-#include "ircbot.h"
-#include <IrcMessage>
-#include <IrcCommand>
-#include <QCoreApplication>
-#include <QTimer>
-
-IrcBot::IrcBot(QObject* parent) : IrcConnection(parent)
-{
-//! [messages]
- connect(this, SIGNAL(privateMessageReceived(IrcPrivateMessage*)), this, SLOT(processMessage(IrcPrivateMessage*)));
-//! [messages]
-
-//! [commands]
- parser.addCommand(IrcCommand::CtcpAction, "ACT [target] <message...>");
- parser.addCommand(IrcCommand::Custom, "HELP (<command...>)");
- parser.addCommand(IrcCommand::Nick, "NICK <nick>");
- parser.addCommand(IrcCommand::Join, "JOIN <#channel> (<key>)");
- parser.addCommand(IrcCommand::Part, "PART (<#channel>) (<message...>)");
- parser.addCommand(IrcCommand::Quit, "QUIT (<message...>)");
- parser.addCommand(IrcCommand::Message, "SAY [target] <message...>");
-//! [commands]
-
- bufferModel.setConnection(this);
-//! [channels]
- connect(&bufferModel, SIGNAL(channelsChanged(QStringList)), &parser, SLOT(setChannels(QStringList)));
-//! [channels]
-}
-
-void IrcBot::join(QString channel)
-{
- sendCommand(IrcCommand::createJoin(channel));
-}
-
-//![receive]
-void IrcBot::processMessage(IrcPrivateMessage* message)
-{
- if (message->isPrivate()) {
- // private message: reply to the message sender
- // => triggers: "!<cmd> <params>" and "<cmd> <params>"
- parser.setTarget(message->nick());
- parser.setTriggers(QStringList() << "!" << "");
- } else {
- // channel message: reply to the target channel
- // => triggers: "!<cmd> <params>" and "bot: <cmd> <params>"
- parser.setTarget(message->target());
- parser.setTriggers(QStringList() << "!" << nickName().append(":"));
- }
-
- IrcCommand* cmd = parser.parse(message->content());
- if (cmd) {
- if (cmd->type() == IrcCommand::Custom && cmd->parameters().value(0) == "HELP") {
- help(cmd->parameters().mid(1));
- } else {
- sendCommand(cmd);
-
- if (cmd->type() == IrcCommand::Quit) {
- connect(this, SIGNAL(disconnected()), qApp, SLOT(quit()));
- QTimer::singleShot(1000, qApp, SLOT(quit()));
- }
- }
- }
-}
-//![receive]
-
-void IrcBot::help(QStringList commands)
-{
- if (commands.isEmpty())
- commands = parser.commands();
-
- QString target = parser.target();
- foreach (const QString& command, commands) {
- QString syntax = parser.syntax(command);
- sendCommand(IrcCommand::createMessage(target, syntax));
- }
-}