mirror of https://notabug.org/acetone/ircabot.git
reload funk
parent
574a728090
commit
5a303da836
|
@ -10,12 +10,13 @@
|
||||||
|
|
||||||
"handler":
|
"handler":
|
||||||
{
|
{
|
||||||
"logpath": "D:\\irc-log",
|
"logpath": "D:\\irc-log",
|
||||||
"admin": "acetone",
|
"admin": "acetone",
|
||||||
"help": "Доступные команды: 'лог' или 'ссылки'.",
|
"reloaded": "Конфиг перечитан.",
|
||||||
|
"help": "доступные команды: 'лог' и 'ссылки'.",
|
||||||
|
|
||||||
"ссылки": "лог чата: http://acetone.i2p/doc/irc-log/ # http://[324:9de3:fea4:f6ac::ace]/doc/irc-log/ # http://acetonemadzhxzi2e5tomavam6xpucdfwn2g35vrsz6izgaxv5bmuhad.onion/doc/irc-log/",
|
|
||||||
"лог": "лог чата: http://acetone.i2p/doc/irc-log/ # http://[324:9de3:fea4:f6ac::ace]/doc/irc-log/ # http://acetonemadzhxzi2e5tomavam6xpucdfwn2g35vrsz6izgaxv5bmuhad.onion/doc/irc-log/",
|
"лог": "лог чата: http://acetone.i2p/doc/irc-log/ # http://[324:9de3:fea4:f6ac::ace]/doc/irc-log/ # http://acetonemadzhxzi2e5tomavam6xpucdfwn2g35vrsz6izgaxv5bmuhad.onion/doc/irc-log/",
|
||||||
|
"ссылки": "123",
|
||||||
"русский": "гордо"
|
"русский": "гордо"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
29
main.cpp
29
main.cpp
|
@ -104,21 +104,30 @@ void handler()
|
||||||
if (!tsc_created) std::this_thread::sleep_for(std::chrono::seconds(1));
|
if (!tsc_created) std::this_thread::sleep_for(std::chrono::seconds(1));
|
||||||
bool handled = false;
|
bool handled = false;
|
||||||
|
|
||||||
while (true) {
|
while (true)
|
||||||
|
{
|
||||||
if(tsc->to_read) { // Есть сообщения, адресованные боту
|
if(tsc->to_read) { // Есть сообщения, адресованные боту
|
||||||
std::string msg = tsc->get_msg();
|
std::string msg = tsc->get_msg();
|
||||||
|
|
||||||
handled = false;
|
if (tsc->get_msg_nick() == conf["admin"] && (msg.find("reload") == 0)) // Reload
|
||||||
for(auto value: conf)
|
|
||||||
{
|
{
|
||||||
if (msg.find(value.first) != std::string::npos)
|
if (read_config()) tsc->write_to_channel(conf["reloaded"]);
|
||||||
{
|
else tsc->write_to_channel("Ошибка.");
|
||||||
tsc->write_to_channel(tsc->get_msg_nick() + ", " + value.second);
|
}
|
||||||
handled = true;
|
else // Общий обработчик
|
||||||
break;
|
{
|
||||||
}
|
handled = false;
|
||||||
|
for(auto value: conf)
|
||||||
|
{
|
||||||
|
if (msg.find(value.first) != std::string::npos)
|
||||||
|
{
|
||||||
|
tsc->write_to_channel(tsc->get_msg_nick() + ", " + value.second);
|
||||||
|
handled = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!handled) tsc->write_to_channel(tsc->get_msg_nick() + ", " + conf["help"]);
|
||||||
}
|
}
|
||||||
if (!handled) tsc->write_to_channel(tsc->get_msg_nick() + ", " + conf["help"]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(tsc->to_raw) { // Все сообщения на канале
|
if(tsc->to_raw) { // Все сообщения на канале
|
||||||
|
|
Loading…
Reference in New Issue