added arguments
This commit is contained in:
parent
9c440b9760
commit
f82b053b67
@ -5,10 +5,10 @@ read -s -p "git password ?" pass
|
||||
mkdir build
|
||||
while true
|
||||
do
|
||||
git pull https://$user:$pass@epicsparrow.com/Anselme/sparrowbot.git
|
||||
git pull https://'$user':'$pass'@epicsparrow.com/Anselme/sparrowbot.git
|
||||
cd build
|
||||
qmake-qt5 ../SparrowBot.pro
|
||||
make
|
||||
./SparrowBot -nogui
|
||||
./SparrowBot -nogui nick=SparrowBot chan=epicsparrow server=irc.freenode.net port=6667
|
||||
cd ..
|
||||
done
|
||||
|
36
main.cpp
36
main.cpp
@ -5,21 +5,45 @@
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
bool nogui = false;
|
||||
QString server = "irc.freenode.net";
|
||||
int port = 6667;
|
||||
QString nick = "SparrowBotDebug";
|
||||
QString chan = "epicsparrow";
|
||||
|
||||
// parsing arguments
|
||||
for(int i=1; i<argc; ++i)
|
||||
{
|
||||
QString str = QString(argv[i]);
|
||||
if(str.compare("-nogui") == 0)
|
||||
nogui = true;
|
||||
else if(str.contains('='))
|
||||
{
|
||||
QStringList argList = str.split('=');
|
||||
QString key = argList.at(0);
|
||||
if(key.compare("server"))
|
||||
server = argList.at(1);
|
||||
else if(key.compare("port"))
|
||||
port = argList.at(1).toInt();
|
||||
else if(key.compare("nick"))
|
||||
nick = argList.at(1);
|
||||
else if(key.compare("chan"))
|
||||
chan = argList.at(1);
|
||||
}
|
||||
}
|
||||
|
||||
// create the socket
|
||||
SocketIRC sock;
|
||||
sock.setServer("irc.freenode.net");
|
||||
sock.setPort(6667);
|
||||
sock.setServer(server);
|
||||
sock.setPort(port);
|
||||
|
||||
// create the bot
|
||||
SparrowBot* bot = new SparrowBot("SparrowBotDebug", "epicsparrow");
|
||||
SparrowBot* bot = new SparrowBot(nick, chan);
|
||||
|
||||
// connect the bot to the socket
|
||||
QObject::connect(&sock, SIGNAL(receivedMsg(QString)), bot, SLOT(receiveMsg(QString)));
|
||||
QObject::connect(bot, SIGNAL(sendMsg(QString)), &sock, SLOT(sendMsg(QString)));
|
||||
|
||||
// parsing arguments
|
||||
bool nogui = argc > 1 && QString(argv[1]).compare("-nogui") == 0;
|
||||
|
||||
// set up UI
|
||||
if(!nogui)
|
||||
{
|
||||
|
@ -7,7 +7,7 @@ SocketIRC::SocketIRC() : server("irc.freenode.net"), port(6667), isConnected(fal
|
||||
connect(&sock, SIGNAL(disconnected()), this, SLOT(onDisconnect()));
|
||||
}
|
||||
|
||||
void SocketIRC::setServer(std::string server_)
|
||||
void SocketIRC::setServer(QString server_)
|
||||
{
|
||||
server = server_;
|
||||
}
|
||||
@ -28,7 +28,7 @@ void SocketIRC::connectToServer(QCoreApplication* app_)
|
||||
{
|
||||
app = app_;
|
||||
|
||||
sock.connectToHost(QString(server.c_str()), quint16(port));
|
||||
sock.connectToHost(server, quint16(port));
|
||||
if(!sock.waitForConnected(3000))
|
||||
{
|
||||
std::cerr << "failed to connect : " << sock.errorString().toStdString() << std::endl;
|
||||
|
@ -13,14 +13,14 @@ class SocketIRC : public QObject
|
||||
public:
|
||||
|
||||
SocketIRC();
|
||||
void setServer(std::string server_);
|
||||
void setServer(QString server_);
|
||||
void setPort(int port_);
|
||||
void connectToServer(QCoreApplication* app_);
|
||||
|
||||
private:
|
||||
|
||||
QCoreApplication* app;
|
||||
std::string server;
|
||||
QString server;
|
||||
int port;
|
||||
QTcpSocket sock;
|
||||
bool isConnected;
|
||||
|
Loading…
x
Reference in New Issue
Block a user