Deutschbot is originally designed for Deutsch community. But it can be used in other local communities at Steemit.
Bot basically follows pre-defined trusted curator accounts at the steem network and constantly check their upvotes and upvotes the post itself.
Features
It has two main parts.
Discord Bot
- add/remove trusted curators
- add/remove Steemit accounts to/from the blacklist
- set/get threshold for the basic score algorithm. (Every post has a score. If the score is greater than the threshold, the bot will upvote.)
Transaction Listener
Bot also has a separate transaction listener process, where it listens to curators' vote actions. If there is a post voted by trusted curators and qualified to get an upvote from the bot, it will upvote it.
After upvoting, it will post relevant information to Discord . (Post URL, related curators, voting weight. etc.)
Technology Stack
Bot only need Python3.6 and greater, and a handful of python packages listed on requirements.txt.
Installation
Make sure you have created a virtual environment with python3.6 venv. It's not required for the bot to work, however, it's highly suggested.
$ git clone https://github.com/emre/deutschbot.git
$ cd deutschbot
$ pip install -r requirements.txt
$ cd communitybot
$ vim settings.py # edit accordingly
Running
Discord Bot
Make sure you have edited
- BOT_TOKEN
- DB_CONNECTION_URI (Compatible w/ databases dataset supports.
in the settings.py
To run it:
$ python deutschbot.py --run discordbot
Bot commands
$help - Display this help message.
$blacklist - Blacklists a user, or removes them from the blacklist; Usage: $blacklist add username or $blacklist remove username
$curators - Puts users in the list of curators, or removes them; Usage: $curators add username or $curators remove username
$threshold - Regulate the threshold for the bot. $threshold set 100 to set it or $threshold get to current value. to trigger. 100 = 1% VP
Adding authorized users to bot
This can be done via command line.
$ python deutschbot.py --add-discord-user emre#9263
Make sure you include the discord ID.
2. Curator Bot
Running
First, make you sure you have edited:
- BOT_ACCOUNT
- BOT_POSTING_KEY
- TAGS
- HOOKS
in the settings.py.
$ python deutschbot.py --run curate
This will start listening transactions on the network. If trusted curator votes on something, bot will calculate a score and if the score is greater then the threshold, it will upvote the post.
After upvoting, it will also post to discord about it.
Starting from a specific block
By default, curator bot will start listening from the last block generated. If you need to start it from a
specific block height, you should run the bot as:
$python deutschbot.py --run curate --start-block 12312333
Feel free to use it for your local community and let me know if you have any issues or feature ideas. Also, See 's post to find out how the project was born.
Posted on Utopian.io - Rewarding Open Source Contributors