A bot that interfaces with several different messenger services
Project description
Kudubot is a bot framework that allows running a bot on a multitude of messaging services. It is completely modular, adding new bot services and new connection types is relatively trivial.
The framework offers abstractions that allow all properly implemented bot services to work with different types of connections (Email, Telegram, Whatsapp or IRC for example) without having to change the code.
Installation
To install the program, either run
sudo pip install kudubot
or download the sources and run
sudo python setup.py install
Setuptools should automatically download all required dependencies without further input.
The program is being developed on Linux, it should in theory work on Windows and Mac OS X, though this has not been tested.
Usage
You can start the bot using the ‘kudubot’ command (setuptools should have installed it for you).
You will need to specify a connection type, which is the identifier string for one of the implemented connections or ‘all’, which starts the bot using all services.
You can also specify the output verbosity using the –verbosity. 0 disables all input, and there’s no real upper limit (Though to keep it sane, the highest verbosity that actually changes things is 5)
You can also directly run the bot without setting options by using one of these commands (again, they should be installed by setuptools automatically)
kudubot-email # For the email connection kudubot-telegram # For the Telegram Connection kudubot-whatsapp # For the Whatsapp Connection (Doesn't work right now) kudubot-all # For all connections
After starting the program for the first time, you will be notified that config files were created. The program creates a directory called ‘.kudubot’ (which is a hidden directory on Linux). it contains all configs, logs and other files/directories used by the bot services.
To be able to connect to a service, you will have to enter login credentials into the config file of the chosen connection type, which will be located under
~/.kudubot/config
The credential types are different for all types of connections and need to be set accordingly. The program creates template files when first run, so figuring out which kind of information to enter should not be all that difficult.
Once the credentials are entered, you can adjust which services will be run on startup by editing the -services file in the same directory.
As a last step you may want to adjust the admin and blacklist files in the
~/.kudubot/contacts
directory to give yourself admin rights for the bot and ignore things like other bots.
Developing
If you are not viewing this on gitlab.namibsun.net, this is only a mirror of that repository, active development is only being done on gitlab.namibsun.net. Issues are being checked on all mirrors though, so feel free to open issues on your version control hoster of choice.
For a guide on how to extend the bot, see this.
Contributing
This project is automatically mirrored to github, however all development is conducted at a privately hosted Gitlab instance. Issues on both services are taken unto consideration.
Documentation
Sphinx Documentation can be found here. A PDF version is also available
Support
If you have any questions about kudubot, feel free to open an issue or contact me directly at hermann@krumreyh.com.
Statistics
Automatically generated git statistics can be found here
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.
Source Distribution
Built Distributions
File details
Details for the file kudubot-0.7.5.tar.gz
.
File metadata
- Download URL: kudubot-0.7.5.tar.gz
- Upload date:
- Size: 66.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a00995a75608ac748b6e1263005d044b834092087cab9734c1982cc4211e511 |
|
MD5 | e6e74fd3bb15c4a59d0473def9042d37 |
|
BLAKE2b-256 | c1007ff979a3c9bc70a78663fbed2ea42bd072463211c636b90d746befdd6d9f |
File details
Details for the file kudubot-0.7.5-py3-none-any.whl
.
File metadata
- Download URL: kudubot-0.7.5-py3-none-any.whl
- Upload date:
- Size: 159.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 414421ef6cf41d5a5a9814f429ddb9f34c8146250c99cf64e409475c10759227 |
|
MD5 | f13aeea48dd7c7bddea422f6754cd385 |
|
BLAKE2b-256 | a95189a4aa78a196cba602fa918c6451ce822b0032abc56675696a3ae35d0f64 |
File details
Details for the file kudubot-0.7.5-py2-none-any.whl
.
File metadata
- Download URL: kudubot-0.7.5-py2-none-any.whl
- Upload date:
- Size: 160.4 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25529125212fdd49f2746a9934afd83ef4abe05c9b0332624ee5f4f35a5eb7cc |
|
MD5 | f7c37a83efb1c665bc386a7bbc0f51bc |
|
BLAKE2b-256 | 17f1cd57ef84061d046ff2e310b713c5d662845982353531e4261b59bf73d58e |