Simple and extensible IRC bot
Project description
Introduction
Sopel is a simple, lightweight, open source, easy-to-use IRC Utility bot, written in Python. It’s designed to be easy to use, run and extend.
Installation
Latest stable release
On most systems where you can run Python, the best way to install Sopel is to install pip and then pip install sopel.
Arch users can install the sopel package from the [community] repository, though new versions might take slightly longer to become available.
Failing both of those options, you can grab the latest tarball from GitHub and follow the steps for installing from the latest source below.
Latest source
First, either clone the repository with git clone git://github.com/sopel-irc/sopel.git or download a tarball from GitHub.
Note: Sopel requires Python 2.7.x or Python 3.3+ to run. On Python 2.7, Sopel requires backports.ssl_match_hostname to be installed. Use pip install backports.ssl_match_hostname or yum install python-backports.ssl_match_hostname to install it, or download and install it manually from PyPI.
Note: Python 2.x is near end of life. Sopel will drop support in version 8.0.
In the source directory (whether cloned or from the tarball) run setup.py install. You can then run sopel to configure and start the bot. Alternately, you can just run the sopel.py file in the source directory.
Database Support
Sopel leverages SQLAlchemy to support the following database types: SQLite, MySQL, PostgreSQL, MSSQL, Oracle, Firebird, and Sybase. By default Sopel will use a SQLite database in the current configuration directory, but alternative databases can be configured with the following config options: db_type, db_filename (SQLite only), db_driver, db_user, db_pass, db_host, db_port, and db_name. You will need to manually install any packages (system or pip) needed to make your chosen database work.
Adding modules
The easiest place to put new modules is in ~/.sopel/modules. Some newer modules are installable as packages; search PyPI for these. Many more modules written by other users can be found using your favorite search engine.
Some older, unmaintained modules are available in the sopel-extras repository, but of course you can also write your own. A tutorial for creating new modules is available on Sopel’s website. API documentation can be found online at https://sopel.chat/docs/, or you can create a local version by running make html in the docs directory.
Further documentation
The official website includes such valuable information as a full listing of built-in commands, tutorials, API documentation, and other usage information.
Questions?
Join us in #sopel on Freenode.
Credits
Contributors
This project exists thanks to all the people who contribute! Become a contributor.
Backers
Thank you to all our backers! Become a backer.
Sponsors
Support Sopel by becoming a sponsor. Your logo will show up here with a link to your website. Become a sponsor.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.