//SEND--------------------------------------------------------------------------- void MainThread::Send(QSharedPointer<IMessage> mes) { QString sender,receiver,message; mes->Parse(); sender=mes->GetPart(keys.s); qCritical()<<"sender"<<sender; if (sender.isEmpty()||sender.contains("-")) { return; } receiver=mes->GetPart(keys.id); qCritical()<<"receiver"<<receiver; if (receiver.isEmpty()) { return; } ///-------------------- message=mes->GetPart(keys.m);//Modified Andrey 17/01/11 //mes->Delete(keys.id);///////////////////////////////////////------------------------------------------------- mes->Delete(keys.s);//IF error then send nick in "#s/..." //mes->AddPart("id",sender); mes->ReplacePart(keys.id,sender); message=mes->Unparse(); mes.clear(); qCritical()<<"sender"<<sender; qCritical()<<"parse message is: "<<message; QTcpSocket* sock=cl->NotTmpSocket(receiver.toInt());//now socket if (sock!=NULL) sock->write(qPrintable(message)); }
void MainWindow::ListenServer(QSharedPointer<IMessage> mes) { mes->Parse(); if ("ser*ver"==mes->GetPart("s")) { if ("good login-password"==mes->GetPart("m")) { MMessageBox* r=new MMessageBox("Title","Welcom",M::OkButton); r->appear(this); page6->appear(); } if ("good registration"==mes->GetPart("m")) { MMessageBox* r=new MMessageBox("Title","Your ID : "+mes->GetPart("id"),M::OkButton); r->appear(this); page2->appear(); } if(mes->GetPart("m")=="login is already used") { MMessageBox* r=new MMessageBox("Error!","This user online already",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Error of password") { MMessageBox* r=new MMessageBox("Error!","Error of password",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Error of login") { MMessageBox* r=new MMessageBox("Error!","This login doesn`t find in contacts base",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Login already exist") { MMessageBox* r=new MMessageBox("Error!","Login already exist",M::OkButton); r->appear(this); } } else { if ("connect"==mes->GetPart("o")) { page6->Add(mes->GetPart("id"),mes->GetPart("s"),mes->GetPart("o")); } if ("disconnect"==mes->GetPart("o")) { page6->Remove(mes->GetPart("id")); } if (mes->GetPart("o").isEmpty()) { qCritical()<<">>sender"<<mes->GetPart("id"); qCritical()<<">>message"<<mes->GetPart("m"); if(this->currentPage()==page7) { page7->Display(mes->GetPart("id"),mes->GetPart("m")); } else { page7->Display(mes->GetPart("id"),mes->GetPart("m")); emit incomingMessage(mes->GetPart("id"));//!!!!!!!!!!!!!!! } } } mes.clear();; }