Erebot is an IRC bot written in PHP and released under GPL v3.0+
First written as an exercise, the project became an original alternative
to other bots (eg. rbot) as it grew larger.
The code features advanced concepts of PHP (sockets, XML handling, custom streams, i18n, process manipulation, etc.).
PHP 5(.3) is used as the base version, though the code may run under
PHP 5.2.1+ with some work.
Whenever possible, we try to avoid PHP 5.3.0-specific features (like namespaces, late static binding, etc.).
We only use OOP (Object-Oriented Programming) to ensure ease of reading --
no spaghetti code.
And because we think QA is the key to making great softwares, the code ships with several unit tests.
Erebot has a very modular codebase and currently supports the following features:
- Plain-text and secure connections (through SSL/TLS, with some support for the STARTTLS extension)
- Channel auto-join upon connection
- Auto-reconnecting after the link gets down, combined with a lag checker
- Internationalization of most messages, with the possibility to set different languages for different channels/servers/networks
- A few popular games (Uno, Gang of Four, Roulette, Countdown)
- Some tools (a TV timetable, a calculator, etc.)
- And many other fearures you can discover by downloading the code!
We welcome additional ideas for new features and modules.