IRC logger in C++. Chat log with cute web interface.

acetone c37cf0884f hf5 1 day ago
html 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago
screenshots 3c0085bee0 about server page 11 months ago
systemd 3d56e593a6 fix for start to non-gui system (QApplication) 9 months ago
.gitignore 96f6ea1022 2.0! 1 year ago
README.md 84b70b37e2 link to instance 10 months ago
applicationdata.cpp 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago
applicationdata.h 258c21f695 #3 and #4 implemented 10 months ago
captcha.cpp 118309c3e8 Captcha example 9 months ago
captcha.h 118309c3e8 Captcha example 9 months ago
connectiondata.cpp 74b6910084 empty channel fix 1 year ago
connectiondata.h 74b6910084 empty channel fix 1 year ago
global.cpp a387305498 captcha class 10 months ago
global.h 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago
html.qrc 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago
httpserver.cpp c37cf0884f hf5 1 day ago
httpserver.h 4e72961c05 ajax requests counter 8 months ago
ircabot.pro 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago
ircclient.cpp 0f41577bc6 triggers list with prefix "try it:" 8 months ago
ircclient.h 0704122bfd Main page link in error page 9 months ago
ircclientstarter.cpp e3b04af298 signal/slot connection fix 11 months ago
ircclientstarter.h 96f6ea1022 2.0! 1 year ago
main.cpp 15ff0591b4 failed PING answer fix, ANCHORs from realtime page removed 8 months ago

README.md

IRCaBot

An undemanding IRC logger with a functional web interface. Flagman instance (for example).

Download ircabot

User features
  • The web interface displays the current online for each chat, with nicknames highlighted in the log;
  • Search with regular expressions;
  • To get the log as plain text, you need to substitute the .txt to the link;
  • To hide the message in the log, you can put a dot at the beginning (message will be displayed as "Blinded message");
  • Connection status to the servers is displayed in real time (green check mark or red cross). This allows you to judge whether the log is up to date;
  • Real time reading chat via JavaScript and AJAX magic.

Admin features
  • Unlimited number of servers and chat rooms;
  • Ability to use one nickname for all connections, or unique for each server;
  • Nickname authorization support via NickServ;
  • Customizable triggers for issuing information by bot in chat;
  • Real time reading mode may be disabled via configuration file (for JS haters, etc);
  • Low system resource consumption: connecting to two servers and active use of the web interface requires ~20MB RAM.

First start (Debian/Ubuntu/etc)

# Qt5 C++ framework dependencies:
sudo apt install qt5-default

# Create a configuration file template:
./ircabot --example ./config.conf

# Edit config.conf for your case.

# Start ircabot with new configuration file:
./ircabot --config ./config.conf
Install
  • Edit systemd/ircabot.service;
  • Copy service file to /lib/systemd/system/;
  • Run ircabot: sudo systemctl start ircabot.service;
  • Enable (for autorun at system startup): sudo systemctl enable ircabot.service.