Freakazoid is a cleverbot integrated bot for Hive.
- Hive / Eclipse Update
- Gem Update
- Added optional support for
meeseeker
.
- Added account name as Conversation ID so that Cleverbot maintains separate conversations with each account.
- Now sending a random sub-string for interaction greater than 140 characters. This is so long posts don't flood Cleverbot, but also makes it seem like the bot read a specific part of the post and is reacting to it, just like a typical human.
- Added
except_apps
andonly_apps
config options, which helps avoid endless bot-on-bot conversations. - The bot will now follow users who meet certain criteria.
- Added the ability to vote and self-vote if certain criteria have been met.
This bot will automatically reply to posts and comments that reply to and mention the bot. The replies are provided by the Cleverbot API.
The main reference implementation of Freakazoid is @banjo. For example:
$ sudo apt-get update
$ sudo apt-get install ruby-full git openssl libssl1.0.0 libssl-dev
$ sudo apt-get upgrade
$ gem install bundler
$ gem install bundler
I've tested it on various versions of ruby. The oldest one I got it to work was:
ruby 2.0.0p645 (2015-04-13 revision 50299) [x86_64-darwin14.4.0]
You can try the system version of ruby
, but if you have issues with that, use this how-to, and come back to this installation at Step 4:
First, clone this git and install the dependencies:
$ git clone https://github.com/inertia186/freakazoid.git
$ cd freakazoid
$ bundle install
Edit the config.yml
file.
:freakazoid:
:block_mode: irreversible
:account_name: <your Hive bot name>
:posting_wif: <your Hive bot posting key>
:cleverbot_api_key: <your cleverbot api key>
:chain_options:
:chain: hive
:url: https://api.hive.blog
In order to integrate with Cleverbot, you need to register your bot and get a key: https://www.cleverbot.com/api/
Edit the support/reply.md
template (optional).
If you are running a meeseeker sync
, you can enable this option for streaming by uncommenting the :meeseeker:
config group of config.yml
. If your meeseeker sync
is running on another host, update the :url:
line with the correct address.
See: https://github.com/inertia186/meeseeker
Example:
:meeseeker_options:
:url: redis://127.0.0.1:6379/0
Then run it:
$ rake run
Freakazoid will now do it's thing. Check here to see an updated version of this bot:
https://github.com/inertia186/freakazoid
Typically, you can upgrade to the latest version by this command, from the original directory you cloned into:
$ git pull
Usually, this works fine as long as you haven't modified anything. If you get an error, try this:
$ git stash
$ git pull
$ git stash pop
$ bundle install
If you're still having problems, I suggest starting a new clone.
Unable to reply with <account>. Invalid version
Make sure the .yml
file contains the correct voting key and account name (social
is just for testing).
Is there a list of nodes?
https://hive.blog/@fullnodeupdate
- Clone the client repository into a directory of your choice:
git clone https://github.com/inertia186/freakazoid.git
- Navigate into the new folder
cd freakazoid
- Basic tests can be invoked as follows:
rake
- To run tests with parallelization and local code coverage:
HELL_ENABLED=true rake
If you're using Freakazoid, I'd love to hear from you. Drop me a line and tell me what you think! I'm @inertia on Hive and Discord.
I don't believe in intellectual "property". If you do, consider Freakazoid as licensed under a Creative Commons License.