Errbot is a python chatbot, this storage plugin allows you to use it with SQL databases as a persistent storage. By using SQLAlchemy, it has the support for Firebird, Microsoft SQL Server, MySQL, Oracle, PostgreSQL, SQLite, Sybase, IBM DB2, Amazon Redshift, exasol, Sybase SQL Anywhere, MonetDB.
- Install the support for the database you want to use. See SQLalchemy doc
- Then you need to add this section to your config.py, following this example:
BOT_EXTRA_STORAGE_PLUGINS_DIR='/home/gbin/err-storage'
STORAGE = 'SQL'
STORAGE_CONFIG = {
'data_url': 'postgresql://scott:tiger@localhost/test',
}- Start your bot in text mode:
errbot -Tto give it a shot.
If you want to migrate from the local storage to SQL, you should be able to backup your data (with STORAGE commented) then restore it back with STORAGE uncommented.
To run the automated test suite:
- Create and activate a Python virtual environment:
python3 -m venv .venv source .venv/bin/activate - Install the dependencies and testing requirements:
pip install -r requirements.txt errbot pytest tox
- Run the tests using
pytestdirectly:Or run both tests and style checks usingpytest
tox:tox