Communi  3.7.0
A cross-platform IRC framework written with Qt
main.cpp File Reference

Minimal example More...

Detailed Description

/*
* Copyright (C) 2008-2020 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 <QtCore>
#if (QT_VERSION) >= (QT_VERSION_CHECK(5, 10, 0))
#include <QRandomGenerator>
#endif
#include <IrcConnection>
#include <IrcCommand>
#include <Irc>
#ifndef IRC_DOXYGEN
int main(int argc, char* argv[])
{
QCoreApplication app(argc, argv);
// enable debug output
qputenv("IRC_DEBUG", "1");
IrcConnection connection(QStringLiteral("irc.libera.chat"));
connection.setUserName(QStringLiteral("communi"));
#if (QT_VERSION) >= (QT_VERSION_CHECK(5, 10, 0))
connection.setNickName(QStringLiteral("Minimal%1").arg(QRandomGenerator::global()->bounded(1, 10000)));
#else
qsrand(QTime::currentTime().msec());
connection.setNickName(QString("Minimal%1").arg(qrand() % 9999));
#endif
connection.setRealName(QStringLiteral("Communi %1 minimal example").arg(Irc::version()));
connection.sendCommand(IrcCommand::createJoin(QStringLiteral("#botwar")));
connection.sendCommand(IrcCommand::createMessage(QStringLiteral("#botwar"), QStringLiteral("Hi, kthxbye!")));
connection.sendCommand(IrcCommand::createQuit());
connection.open();
QObject::connect(&connection, SIGNAL(disconnected()), &app, SLOT(quit()));
return app.exec();
}
#endif
static Q_INVOKABLE IrcCommand * createJoin(const QString &channel, const QString &key=QString())
Definition: irccommand.cpp:572
static Q_INVOKABLE IrcCommand * createQuit(const QString &reason=QString())
Definition: irccommand.cpp:780
static Q_INVOKABLE IrcCommand * createMessage(const QString &target, const QString &message)
Definition: irccommand.cpp:627
Provides means to establish a connection to an IRC server.
Definition: ircconnection.h:49
static Q_INVOKABLE QString version()
Definition: irc.cpp:128