mirror of https://notabug.org/acetone/ircabot.git
отмена выдачи в ЛС любым сообщением боту
parent
c4200eaace
commit
001d939fa5
13
main.cpp
13
main.cpp
|
@ -49,12 +49,12 @@ void sendVectorToUser()
|
||||||
std::cout << "sendVectorToUser+ " << sendVectorToUser_COUNTER << std::endl;
|
std::cout << "sendVectorToUser+ " << sendVectorToUser_COUNTER << std::endl;
|
||||||
|
|
||||||
int messageCounter = 0;
|
int messageCounter = 0;
|
||||||
|
bool stopped = false;
|
||||||
for (auto str: messages)
|
for (auto str: messages)
|
||||||
{
|
{
|
||||||
std::string triggerToStop = tsc->get_raw_msg_from_socket();
|
if (tsc->have_pm_from_user(nick)) { // Ник появился в стопе
|
||||||
if (triggerToStop.find(":" + nick + "!") == 0 &&
|
stopped = true;
|
||||||
triggerToStop.find("PRIVMSG " + tsc->params["nickname"]) != std::string::npos) {
|
break;
|
||||||
break; // Ник появился в стопе
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (messageCounter++ < 20) {
|
if (messageCounter++ < 20) {
|
||||||
|
@ -63,12 +63,11 @@ void sendVectorToUser()
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
messageCounter = 0;
|
messageCounter = 0;
|
||||||
tsc->write_to_user(nick, "buffering...");
|
std::this_thread::sleep_for(std::chrono::seconds(2));
|
||||||
std::this_thread::sleep_for(std::chrono::seconds(3));
|
|
||||||
tsc->write_to_user(nick, str);
|
tsc->write_to_user(nick, str);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tsc->write_to_user(nick, "*** END ***");
|
tsc->write_to_user(nick, stopped ? "*** STOP ***" : "*** END ***");
|
||||||
tsc->write_to_user(nick, conf["links"]);
|
tsc->write_to_user(nick, conf["links"]);
|
||||||
--sendVectorToUser_COUNTER;
|
--sendVectorToUser_COUNTER;
|
||||||
std::cout << "sendVectorToUser- " << sendVectorToUser_COUNTER << std::endl;
|
std::cout << "sendVectorToUser- " << sendVectorToUser_COUNTER << std::endl;
|
||||||
|
|
|
@ -80,9 +80,10 @@ std::string TcpSyncClient::get_raw_nick()
|
||||||
return m_raw_nickname;
|
return m_raw_nickname;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string TcpSyncClient::get_raw_msg_from_socket()
|
bool TcpSyncClient::have_pm_from_user(std::string nick)
|
||||||
{
|
{
|
||||||
return raw_msg_from_socket;
|
return (raw_msg_from_socket.find(":" + nick + "!") == 0 &&
|
||||||
|
raw_msg_from_socket.find("PRIVMSG " + params["nickname"]) != std::string::npos);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TcpSyncClient::connect_to_ep()
|
bool TcpSyncClient::connect_to_ep()
|
||||||
|
|
|
@ -26,7 +26,7 @@ public:
|
||||||
std::string get_msg_nick(); // Сообщение боту
|
std::string get_msg_nick(); // Сообщение боту
|
||||||
std::string get_raw(); // Ник сообщения на канале
|
std::string get_raw(); // Ник сообщения на канале
|
||||||
std::string get_raw_nick(); // Сообщение на канале
|
std::string get_raw_nick(); // Сообщение на канале
|
||||||
std::string get_raw_msg_from_socket(); // Для получения сырого сообщения
|
bool have_pm_from_user(std::string); // Для получения сырого сообщения
|
||||||
~TcpSyncClient();
|
~TcpSyncClient();
|
||||||
|
|
||||||
bool to_read; // Индикаторы наличия информации для чтения
|
bool to_read; // Индикаторы наличия информации для чтения
|
||||||
|
|
Loading…
Reference in New Issue